1.MongoDB介绍
MongoDB 是由C++语言编写的,是一个基于分布式文件存储的开源数据库系统。 MongoDB 是一个面向文档存储的数据库,操作起来比较简单和容易。 在高负载的情况下,添加更多的节点,可以保证服务器性能。 MongoDB 旨在为WEB应用提供可扩展的高性能数据存储解决方案。 MongoDB 将数据存储为一个文档,数据结构由键值(key=>value)对组成。 MongoDB 文档类似于 JSON 对象。字段值可以包含其他文档,数组及文档数组。
2.下载安装包 wget http://fastdl.mongodb.org/linux/mongodb-linux-x86_64-3.0.6.tgz
2.下载完成后解压压缩包 tar -zxvf mongodb-linux-x86_64-3.0.6.tgz
3.修改名字 mv mongodb-linux-x86_64-3.0.6 mongodb
4.创建数据库文件夹与日志文件 mkdir /opt/mongodb/data mkdir /opt/mongodb/logs cd logs/ touch mongo.log
5.设置开机自启动
echo "/opt/mongodb/bin/mongod --dbpath=/opt/mongodb/data -logpath=/opt/mongodb/logs -logappend --auth --port=27017" >>/etc/rc.local6.不使用配置项启动mongodb
/opt/mongodb/bin/mongod --dbpath=/opt/mongodb/db --logpath=/opt/mongodb/logs/mongo.log --logappend --auth --port=27017 --fork(–fork 参数表示后台启动)
7.MongoDB配置 6.1在bin同级目录下创建mongo.conf文件 6.2设置
#数据库数据存放目录 dbpath=/opt/mongodb/db #数据库日志存放目录 logpath=/opt/mongodb/logs/mongo.log #以追加的方式记录日志 logappend = true #端口号 默认为27017 port=27017 #以后台方式运行进程 fork=true #开启用户认证 auth=true #关闭http接口,默认关闭http端口访问 #nohttpinterface=true #mongodb所绑定的ip地址 #bind_ip = 127.0.0.1 #启用日志文件,默认启用 journal=true #这个选项可以过滤掉一些无用的日志信息,若需要调试使用请设置为false quiet=true8.使用配置项启动mongodb 8.1启动mongod
/usr/local/mongodb/bin/mongod -f /opt/mongodb/mongo.conf如果报错: about to fork child process, waiting until server is ready for connections. forked process: 12360 mongodb非正常关闭后,再次启动会产生此异常。 解决方法: cd db //进入到db数据存放目录 rm mongod.lock //删除mongo.lock文件 然后重新启动 ./mongod -f /opt/mongodb/mongo.conf 启动成功!
9. MongoDB 创建数据库和角色权限 MongoDB 中默认的数据库为 test,如果你没有创建新的数据库,集合将存放在 test 数据库中。 9.1创建管理员账户 use admin
db.createUser({ user: "admin", pwd: "admin", roles: [{ role: "userAdminAnyDatabase", db: "admin" }] })9.2 登陆角色进行权限验证 db.auth(‘admin’,‘admin’) // 返回1就表示验证成功,获得所有权限了
9.3创建普通管理员账户 use mydatabase
db.createUser({ user: "user", pwd: "123456", roles: [{ role: "dbOwner", db: "mydatabase" }] })show dbs //查看所有数据库
db.auth(‘user’,‘123456’) 插入数据 db.mydatabase.insert({“name”:“mongodb学习”}) 10. 删除权限用户 db.system.users.remove({“user”:“123456”}
11停止mongodb服务 ./mongod -shutdown -dbpath=/opt/mongodb/db 或者 killall mongod 请不要 kill -9 ,会造成文件数据混乱丢失 。启动失败! ctrl+c 可以退出mongo的界面 附录 如果遇到可视化工具MongoVUE的Collections数据不显示的,但是用命令正常使用,可能是mongoDB服务版本太高导致的。可以降低mongoDB版本。