
- 特 点
- 高性能,易部署,易使用
- 编写语言
- 由C++语言编写
- 产品类型
- 基于分布式文件存储的数据库
- 外文名
- MongoDB
-
MongoDB
2019-09-04 21:05:02mongoDB 配置文件 MongoDB 用户管理 MongoDB SQL MongoDB 更新collection内部array顺序 MongoDB Documents MongoDB Insert(插入) MongoDB Query Embedded(嵌套类型) MongoDB Query Array MongoDB Query Array of ...mongoDB 配置文件
MongoDB 用户管理
MongoDB SQLMongoDB Collection Methods
MongoDB Database Methods(数据库方法)
MongoDB shell
MongoDB Databases
MongoDB Collections
MongoDB Documents
MongoDB Insert(插入)
MongoDB Query Embedded(嵌套类型)
MongoDB Query Array
MongoDB Query Array of Embedded
MongoDB Project Fields
MongoDB Comparison Query Operators(比较操作符)
MongoDB Logical Query Operators(逻辑操作符)
MongoDB Element Query Operators(元素判断操作符)
MongoDB Evaluation Query Operators
MongoDB Geospatial Query Operators(地理数据请求)
MongoDB Array Query Operators
MongoDB Field Update Operators
MongoDB Aggregation Pipeline OperatorsMongoDB Role Management Methods(角色管理)
MongoDB User Management Methods(用户管理)
MongoDB Aggregation Pipeline Stages -
windows下MongoDB的安装及配置
2017-09-01 19:43:43一、先登录Mongodb官网https://www.mongodb.com/download-center#community 下载 安装包。32、64位的都行。 二、安装MongoDB 下载后的安装包: 安装比较简单,类似于普通QQ软件,中间主要是选择“Custom”自定义 ...一、先登录Mongodb官网https://www.mongodb.com/download-center#community 下载 安装包。32、64位的都行。
二、安装MongoDB
下载后的安装包:
安装比较简单,类似于普通QQ软件,中间主要是选择“Custom”自定义 安装路径修改下:D:\software\MongoDB
然后不断“下一步”,安装至结束。
安装比较容易。难点在启动Mongodb的服务以及将MongoDB设置成Windows服务,加配置文件在windows的“服务”中找到。
三、先创建数据库文件的存放位置
在MongoDB下创建data,在data下再创建db:D:\software\MongoDB\data\db
因为启动mongodb服务之前需要必须创建数据库文件的存放文件夹,否则命令不会自动创建,而且不能启动成功。
四、启动MongoDB服务
1.打开cmd命令行
2.进入D:\software\MongoDB\bin目录(注意:先输入d:进入d盘,然后输入cd D:\software\MongoDB\bin)
3.输入如下的命令启动mongodb服务:mongod --dbpath D:\software\MongoDB\data\db
即是在第三步创建的数据库存放文件路径下启动。
4.在浏览器输入http://localhost:27017 (27017是mongodb的端口号)查看,若显示:
则表示,连接成功。如果不成功,可以查看端口是否被占用。
但是在本地windows“服务”中,是没有配置上mongodb 服务的,可以打开“服务”看下
五、配置本地windows mongodb 服务
这样可设置为 开机自启动,可直接手动启动关闭,可通过命令行net start MongoDB 启动。该配置会大大方便。
1.先在data文件下创建一个新文件夹log(用来存放日志文件)
2.在Mongodb新建配置文件mongo.config
可能很多人都不会创建.config配置文件。那给大家介绍下简单的方法:先创建一个mongo.txt文件,再打开,点击”另存为“,将底下的文件类型更改为”全部类型“,并更改文件名称为mongo.config。
这样就可以创建一个config的配置文件了。
2.用记事本打开mongo.config ,并输入:
dbpath=D:\software\MongoDB\data\db
logpath=D:\software\MongoDB\data\log\mongo.log
3.用管理员身份打开cmd:
可能还有很多人不会管理员身份打开cmd。这也介绍下:
在下图路径下找到cmd 的运行文件
然后右键,以管理员身份运行。打开后发现在顶端比普通打开的多了”管理员“三个字
4.配置windows服务:
cmd先跳转到 D:\software\MongoDB\bin目录下。
输入:mongod --config "D:\software\Mongodb\mongo.config" --install --serviceName "MongoDB"
即根据刚创建的mongo.config配置文件安装服务,名称为MongoDB。
完成后,再次查看本地的服务。
如果成功的话,会发现本地服务多了”MongoDB"服务。
这就大功告成了。哈哈~~~
可以通过:“开机自启动,可直接手动启动关闭,命令行net start MongoDB 启动”。
开启后,可以正常连接了。可以用pycharm等IDE连接,
pycharm连接mongodb,可以使用pycharm配置mongo插件连接。
介绍个博文你学习安装:
-
记录MongoDB占用内存太大
2020-07-08 17:49:17MongoDB为了优化本身的读写效率,将内存当作缓存,所以读写的次数越多,缓存就越大。默认值为 50% *(RAM - 1GB)或者 256MB,从MongoDB3.4开始,WiredTiger内部缓存默认使用默认值中较大的一个。 解决办法: 修改...原因:
MongoDB为了优化本身的读写效率,将内存当作缓存,所以读写的次数越多,缓存就越大。默认值为 50% *(RAM - 1GB)或者 256MB,从MongoDB3.4开始,WiredTiger内部缓存默认使用默认值中较大的一个。
解决办法:
修改config/mongod.cfg配置
dbpath=/data/app/mongodb4.2.8/data/rs1 #MongoDB数据安装目录 logpath=/data/app/mongodb4.2.8/log/rs1.log #日志打印的目录 journal=true #数据是否故障恢复 port=27000 #端口 replSet=rs #复制集名称 logappend=true #复制集日志是以追加的方式进行 fork = true #是否后台启动 bind_ip=0.0.0.0 storageEngine=WiredTiger #设置存储引擎,这是默认的 wiredTigerCacheSizeGB=8 #限制缓存使用内存的大小 maxConns=10000 #连接数
解释:
--wiredTigerCacheSizeGB 8 限制缓存使用内存大小为8GB,这样MongoDB使用的内存就是(8GB-1GB)* 50%,也就是3.5g -
MongoDB4.0将支持多文档事务
2020-07-30 13:55:21在早期,我们说的MongoDB支持事务是指针对MongoDB的单文档级别,与我们MySQL等关系型数据库中的事务是不同的,那什么是单文档事务呢? db.username.update({'name': 'helei'}, {$set: {'age': 26, 'score': 85}}) ...背景
在早期,我们说的MongoDB支持事务是指针对MongoDB的单文档级别,与我们MySQL等关系型数据库中的事务是不同的,那什么是单文档事务呢?
db.username.update({'name': 'helei'}, {$set: {'age': 26, 'score': 85}})
上述命令对username集合中,name为helei列的行进行更新,如果age更新为26,score由于宕机或其他原因导致更新失败,那么MongoDB则会回滚这一操作。
单文档ACID的实现
MongoDB在更新单个文档时,会对该文档加锁,而要理解MongoDB的锁机制,需要先了解以下几个概念:
1.Intent Lock, 意图锁表明读写方(reader-writer)意图针对更细粒度的资源进行读取或写入操作。例如:如果当某个集合被加了意向锁,那么说明读、写方意图针对该集合中的某个文档进行读或写的操作。
2.MGL多粒度锁机制(Multiple granularity locking ),有S锁(Shared lock), IS锁(Intent Share lock), X锁(Exclusive lock),IX锁(Intent Exclusive lock)
在上面的例子里,MongoDB会为name为helei的文档加上X锁,同时为包含该文档的集合,数据库和实例都加上意向写锁(IX),这时,针对该文档的操作就保证了原子性。
MongoDB4.0中的多文档事务
多文档事务
MongoDB 4.0将增加对多文档事务的支持,通过snapshot隔离,事务提供全局一致的数据结果,并且执行要么全部成功,要么全部失败来保证数据完整性。
MongoDB4.0中的事务对于开发人员来讲将会和普通的关系型数据库一样方便,例如start_transaction和commit_transaction。启用多文档事务的MongoDB也不会影响机器的负载。在发布的MongoDB 4.0中,事务将率先在副本集上提供支持,而sharding架构中多文档事务也将在MongoDB4.2版本中实现。
在早期的MongoDB版本中,仅支持单文档事务,如果想使用多文档事务,需要依赖特别的数据建模才能够保证。而在MongoDB 4.0中,无论您如何为数据建模,都能够支持多文档事务。
下图展示了,在各个版本中新支持的核心特性:
代码案例
python:
with client.start_session() as s: s.start_transaction(): try: collection.insert_one(doc1, session=s) collection.insert_one(doc2, session=s) except: s.abort_transaction() raise s.commit_transaction()
java:
try (ClientSession clientSession = client.startSession()) { clientSession.startTransaction(); try { collection.insertOne(clientSession, docOne); collection.insertOne(clientSession, docTwo); clientSession.commitTransaction(); } catch (Exception e) { clientSession.abortTransaction(); } }
-
mongoDB4.2.8备份恢复与导出导入
2020-07-30 15:41:37备份 数据备份就是要保存数据的完整性...mongodump -h localhost:27017 -d dmp_phone -o /bigdata/mongodb-4.2.8/mongodump -h:MongDB所在服务器地址,例如:127.0.0.1,当然也可以指定端口号:127.0.0.1:27017 -d: -
Linux以tar包方式安装MongoDB-4.2.8
2020-06-16 11:34:50tar -zxvf mongodb-linux-x86_64-4.2.8.tgz 创建目录,设置权限 在根目录 / 下创建data/db目录,用于放置mongodb数据,并且给该目录设置权限 sudo mkdir -p /data/db sudo chown -R 自己电脑的用户名 /data ... -
数据库之MongoDB面试题
2020-10-11 12:43:213、MySQL与MongoDB之间最基本的差别是什么?4、你怎么比较MongoDB、CouchDB及CouchBase?5、MongoDB成为最好NoSQL数据库的原因是什么?6、32位系统上有什么细微差别?7、journal回放在条目(entry)不完整时(比如恰巧... -
Centos7安装mongoDB
2019-12-29 01:20:191. 配置MongoDB的yum源 vim /etc/yum.repos.d/mongodb-org-3.4.repo 进入编辑模式后添加以下内容: [mongodb-org-3.4] name=MongoDB Repository baseurl=https://repo.mongodb.org/yum/redhat/$releasever/... -
mongoDB笔记
2020-09-03 10:13:55【2】MongoDb web 用户界面 【3】启动参数 【4】linux安装 【5】MongoDB与Redis的区别 【6】MongoDB常用命令 【7】MongoDB 数据集合导出与导入 【8】MongoDB 备份(mongodump)与恢复(mongorestore) 【1】windows ... -
Mongodb系列:初识Mongodb
2015-07-16 15:13:42主要负责服务器维护,在维护期间对Mongodb相逢。 Mongodb什么东东???如果有点晕的童鞋请猛戳Me科普一下哈! Mongodb优势:由于它的存储结构不同于传统的数据库使得通常它用来存储大的文件,如:照片、视频、.... -
Linux安装、运行MongoDB
2018-08-16 11:03:09更新:MongoDB4.0.1-->MongoDB4.0.13正式版 一.我的安装环境:CentOS7+MongoDB4.0.13。 二.下载MongoDB。 官网下载地址:https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-4.0.13.tgz 压缩包下载完成... -
SpringBoot中使用MongoDB的连接池配置
2018-11-19 10:31:52在SpringBoot中,我们可以通过引入 spring-boot-starter-data-mongodb 依赖来实现spring-data-mongodb 的自动配置。但是,默认情况下,该依赖并没有像使用MySQL或者Redis那样为我们提供连接池配置的功能。因此,我们... -
MongoDB4.2.8副本集(复制集)环境搭建
2020-06-28 14:15:011)主要为了解决SpringBoot集成MongoDB的事务问题 2)实际使用还是要搭配分片以及副本集使用,不要仅使用副本集。 副本集的特点 1)主节点唯一 主节点唯一,但是不固定(不确定的原因是:主节点挂了的话,会重新... -
Mongodb在Windows下安装及配置
2011-01-08 19:44:002.解压缩至D:/mongodb即可 3.创建数据库文件的存放位置,比如D:/mongodb/data/db。启动mongodb服务之前需要必须创建数据库文件的存放文件夹,否则命令不会自动创建,而且不能启动成功。默认文件夹路径为c:/d... -
MongoDB笔记
2020-07-28 09:09:47什么是MongoDB MongoDB是一个文档数据库,提供好的性能,领先的非关系型数据库。采用BSON存储文档数据。2007年10月,MongoDB由10gen团队所发展。2009年2月首度推出。MongoDB用c++编写的。 优势: 面向文档的存储:... -
Try MongoDB
2019-12-16 17:00:57Try MongoDB1.配置MongoDB的yum源makecache安装MongoDB启动MongoDB安装pymongo创建数据库和集合向集合中插入数据查询集合中的数据查询指定数据 1.配置MongoDB的yum源 vim /etc/yum.repos.d/mongodb-org-3.4.repo ... -
MongoDB:10-MongoDB 监控
2017-10-13 08:45:29在你已经安装部署并允许MongoDB服务后,你必须要了解MongoDB的运行情况,并查看MongoDB的性能。这样在大流量得情况下可以很好的应对并保证MongoDB正常运作。 MongoDB中提供了mongostat 和 mongotop 两个命令来监控... -
MongoDB Projection
2019-07-29 11:59:39章节MongoDB 入门 MongoDB 优势 MongoDB 安装 MongoDB 数据建模 MongoDB 创建数据库 MongoDB 删除数据库 MongoDB 创建集合 MongoDB 删除集合 MongoDB 数据类型 MongoDB 插入文档 MongoDB 查询文档 MongoDB 更新文档 ... -
springboot整合mongodb
2019-06-10 22:38:12在之前的一篇中,我们在服务器上搭建了mongodb,今天来说说使用springboot如何整合使用mongodb, 1、启动mongodb服务,进入mongodb主目录,执行如下命令, ./bin/mongod -f ./data/mongodb.conf 启动成功后... -
mongodb:brew安装mongodb报错
2019-09-09 18:56:23今天用 brew 来安装 mongodb 报错了。首先 brew install mongodb 提示 Error: No available formula with the name “mongodb” 具体是这样: 看了一下大致原因是在 homebrew 里找不到 mongodb 这个名字,mongodb ... -
MongoDB:什么是MongoDB ?
2020-06-04 11:44:16什么是MongoDB ? MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源数据库系统。 在高负载的情况下,添加更多的节点,可以保证服务器性能。 MongoDB 旨在为WEB应用提供可扩展的高性能数据存储解决方案。 ... -
SpringBoot非官方教程 | 第八篇:springboot整合mongodb
2017-04-28 22:17:51这篇文章主要介绍springboot如何整合mongodb。 -
在Python中连接MongoDB集群(MongoDB Cluster)
2019-05-16 16:35:31建立了一个MongoDB集群,集群名称 replSet=rs0,包含以下3 个节点: 172.16.250.233:27017 # SECONDARY 172.16.250.234:27017 # PRIMARY 172.16.250.237:27017 # SECONDARY 集群的 test 用户的密码为 “123456” ... -
Spring Boot 中使用 MongoDB 增删改查
2020-03-19 16:55:12本文快速入门,MongoDB 结合SpringBoot starter-data-mongodb 进行增删改查 1、什么是MongoDB ? MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源数据库系统。 在高负载的情况下,添加更多的节点,... -
MongoDB相关概念
2020-05-26 15:43:21业务应用场景 传统的关系型数据库(mysql),在数据操作上的"三高"需求,以及对Web2.0的网站要求前面,显得力不从心。解释三高需求: 1. High performance 对数据库高...使用MongoDB存储用户信息,以及用户发表的朋友圈 -
MongoDB:使用当前的MongoDB Compass操作当前的MongoDB数据库
2020-01-23 14:40:35由于前面安装成功了MongoDB数据库,缺少一个可以使用的连接MongoDB的数据库管理工具,于是本人选择了MongoDB Compass,这是一个免费的管理工具,就是这个是英文版的 2.下载当前的MongoDB Compass MongoDB Compass的... -
MongoDB入门学习
2020-03-28 16:06:30MongoDB简介、在Linux环境下的安装,MongoDB命令介绍:数据库、集合、文档操作 -
MongoDB安装手册 MongoDB Installation Guide
2019-06-05 17:44:23Installation on Linux Linux Version CentOS Linux release 7.6.1810 (Core) Reference ...Install MongoDB Community Edition Note that the ... -
nodejs操作mongodb数据库(mongodb)
2016-11-25 15:13:21通过npm命令安装mongodb 安装mongodb数据库,这里不详细介绍了,网上一堆 关于版本 mongodb@2.2.10 nodejs v4.6.0 MongoDB数据库 3.2版本 CRUD操作 在此之前应对Mongodb数据库有所了解,知道它的一些增删...
-
国家注册渗透测试工程师(Web安全)
-
转行做IT-第1章 计算机基础
-
华工数字通信原理大作业
-
2021-01-18
-
行业分类 职业分类 职务分类 单位性质
-
flash actionscript3游戏编程之AS3 PureMVC设计模式在AS中的应用例子_详解MVC的作用.zip
-
简单的搜索深搜算法的模板
-
IPV6
-
事件对象/window.e/window.event
-
日常工具集和技巧分享(Linux向)
-
IDEA 自己定义方法,类的注释
-
python数据分析基础
-
FFmpeg4.3系列之26:视频监控之H265多路摄像头播控项目实战
-
Java.Web整合开发王者归来.zip
-
Docker 镜像构建的最佳实践(持续更新)
-
c#编程最佳实践:变量与方法
-
【数据分析-随到随学】Hadoop数据分析
-
【数据分析-随到随学】数据分析建模和预测
-
网页设计与制作实例教程源码.rar
-
JSP药品信息管理系统源码.zip