是一个基于分布式文件存储数据库,C++编写,内存数据库。是非关系数据库中功能最丰富的,最像关系数据库的。数据结构是类似json的bson格式。
键值数据库(key-value):Redis列存储数据库:HBase文档型数据库:MongoDB、CouchDB、SequoiaDB。图形数据库:Neo4J、InfoGrid 二、与关系型数据库对比 三、数据类型 四、启动1、下载mongodb-linux-x86_64-rhel70-4.4.0.tgz解压缩到自定义目录
2、创建/data/db目录和/logs目录
3、配置mongodb.conf文件
4、到MongoDB目录下启动./lhdxss/mongod -f mongodb.conf
./lhdxss/mongod --config mongodb.conf
5、常见启动参数
6、停止./lhdxss/mongod -shutdown --config mongodb.conf
7、配置环境变量
8、mongod --config /usr/local/mongodb/mongodb.conf
mongod --shutdown --config /usr/local/mongodb/mongodb.conf
9、关闭mongodb
Ctrl+c,关闭前置启动方式,会等待当前操作完成后关闭,是安全关闭方式。使用Linux的kill命令,结束进程,然后删除data/db目录中的mongod.lock文件,否则下次无法启动,此种方式不建议使用,因为会造成数据丢失现象。Mongo中提供了两种关闭函数,db.shutdownServer()和db.runCommand("shutdown"),如上两种方式都需要在admin库中执行,都是安全的管理方式。-或使用mongdb的命令 mongod --shutdown --config /usr/local/mongodb/mongodb.conf
10、查看mongodb是否启动ps aux|grep mongodb
11、启动mongo客户端,mongo,如果已经配置环境变量则直接在任何目录执行都可,如果未配置则在mongo的lhdxss目录下执行。
1、创建用户需要在admin库中执行,db.system.users.find()查看当前所有用户,db.createUser({user:"whx",pwd:"1016",roles:[{role:"userAdminAnyDatabase",db:"admin"}]})
2、开启权限,mongodb.conf配置文件中添加auth=true,重启mongodb。
3、客户端再次登录需要db.auth("whx","1016")
4、创建某数据库的普通用户,db.createUser({user:“springCloud”,pwd:“111111”,roles:[{role:“readWrite”,db:“testDb”}]}),再次登录用户,然后切换数据库。
5、更新用户角色6、更新用户密码,需要使用管理员用户
7、删除用户