Hello,小伙伴们好!为了达到一定的技术广度,小安Sir选择先了解更多的数据库基础知识,以便于更好地结合Python使用,希望能够在自动化运维各个场景中得心应手!
因此,本文分享主要分享如何安装MongoDB数据库,快来看看吧!
本文大纲
1. MongoDB 简介
2. Win10 安装MongoDB
3. RHEL7 安装MongoDB
01 MongoDB简介
非关系型数据库(NoSQL,指的是Not only SQL)有强大的扩展能力,不需要事先定义好表的字段,数据插入速度远超于传统关系型数据库。
MongoDB属于非关系型数据库,其适合存储大量关联性不强的数据。MongoDB是以"库"-"集合"-"文档"-"字段",这与传统关系型数据库的"库"-"表"-"行"-"列"结构非常像。但是,MongoDB不需要预定义表结构,这一点真的很爽,直接插入数据,并且数据的字段可以任意变动,并发写入速度也远远高于传统关系型数据库。
02 Win10安装MongoDB
2.1 下载网址
https://www.mongodb.com/download-center/community
2.2 安装
不需要勾选"Install MongoDB Compass",在这里用不上!
恭喜你,如果你按照以上的中文路径安装,就会报错,并且让你尝试重启电脑,怎么样,是不是倍儿爽?我还真重启了主机,我晕!
安装数据库怎么需要重启主机呢?这很奇葩,最后,我尝试卸载了刚才的路径,重新使用纯英文路径G:mongodbMongoDB安装成功!
03 RHEL7安装MongoDB
3.1 下载网址
https://www.mongodb.com/download-center/community
3.2 开始安装
3.2.1 解压安装包
1[root@RHEL-INIT ~]# mkdir -p /mongo/app 2[root@RHEL-INIT ~]# cd /mongo/app 3[root@RHEL-INIT app]# tar -zxvf mongodb-linux-x86_64-rhel70-4.0.16.tgz 4mongodb-linux-x86_64-rhel70-4.0.16/THIRD-PARTY-NOTICES.gotools 5mongodb-linux-x86_64-rhel70-4.0.16/README 6mongodb-linux-x86_64-rhel70-4.0.16/THIRD-PARTY-NOTICES 7mongodb-linux-x86_64-rhel70-4.0.16/MPL-2 8mongodb-linux-x86_64-rhel70-4.0.16/LICENSE-Community.txt 9mongodb-linux-x86_64-rhel70-4.0.16/bin/mongodump10mongodb-linux-x86_64-rhel70-4.0.16/bin/mongorestore11mongodb-linux-x86_64-rhel70-4.0.16/bin/mongoexport12mongodb-linux-x86_64-rhel70-4.0.16/bin/mongoimport13mongodb-linux-x86_64-rhel70-4.0.16/bin/mongostat14mongodb-linux-x86_64-rhel70-4.0.16/bin/mongotop15mongodb-linux-x86_64-rhel70-4.0.16/bin/bsondump16mongodb-linux-x86_64-rhel70-4.0.16/bin/mongofiles17mongodb-linux-x86_64-rhel70-4.0.16/bin/mongoreplay18mongodb-linux-x86_64-rhel70-4.0.16/bin/mongod19mongodb-linux-x86_64-rhel70-4.0.16/bin/mongos20mongodb-linux-x86_64-rhel70-4.0.16/bin/mongo21mongodb-linux-x86_64-rhel70-4.0.16/bin/install_compass22[root@RHEL-INIT app]# mv mongodb-linux-x86_64-rhel70-4.0.16 mongodb
3.2.2 创建目录和日志文件
1[root@RHEL-INIT app]# mkdir -p /mongo/app/mongodb/data/db2[root@RHEL-INIT app]# mkdir -p /mongo/app/mongodb/log3[root@RHEL-INIT app]# touch /mongo/app/mongodb/log/mongodb.log
3.2.3 创建用户及所属组
1[root@RHEL-INIT bin]# vi mongodb.conf 2#数据文件存放目录 3dbpath = /mongo/app/mongodb/data/db 4 5#日志文件存放目录 6logpath = /mongo/app/mongodb/log/mongodb.log 7 8#端口 9port = 270171011#以守护程序的方式启用,即在后台运行12fork = true1314#允许所有的连接15bind_ip=0.0.0.01617auth = true18~19~
3.2.4 创建配置文件
1[root@RHEL-INIT bin]# chown -R mongodb:mongodb /mongo/app 2[root@RHEL-INIT bin]# cd 3[root@RHEL-INIT ~]# su - mongodb 4[mongodb@RHEL-INIT ~]$ vi .bash_profile 5PATH=$PATH:$HOME/.local/bin:$HOME/bin 6PATH=$PATH:$HOME/.local/bin:$HOME/bin 7# .bash_profile 8 9# Get the aliases and functions10if [ -f ~/.bashrc ]; then11 . ~/.bashrc12fi1314# User specific environment and startup programs151617export PATH18192021export MONGODB_HOME=/mongo/app/mongodb22PATH=$PATH:$HOME/.local/bin:$HOME/bin:$MONGODB_HOME/bin23~2425".bash_profile" 16L, 253C written 26[mongodb@RHEL-INIT ~]$ . .bash_profile
3.2.5 授权和加载环境变量
1[mongodb@RHEL-INIT ~]$ mongod -f /mongo/app/mongodb/bin/mongodb.conf2about to fork child process, waiting until server is ready for connections.3forked process: 708034child process started successfully, parent exiting
3.2.6 后台启动数据库
1[mongodb@RHEL-INIT ~]$ mongo 2MongoDB shell version v4.0.16 3connecting to: mongodb://127.0.0.1:27017/?gssapiServiceName=mongodb 4Implicit session: session { "id" : UUID("68c53655-af74-429a-be67-0515b818199e") } 5MongoDB server version: 4.0.16 6Welcome to the MongoDB shell. 7For interactive help, type "help". 8For more comprehensive documentation, see 9 http://docs.mongodb.org/10Questions? Try the support group11 http://groups.google.com/group/mongodb-user1213> use adminuse admin14switched to db admin15> db.createUser({user:'test',pwd:'123456',roles:[{role:'root',db:'admin'}]})db.createUser({user:'test',pwd:'123456',roles:[{role:'root',db:'admin'}]})16Successfully added user: {17 "user" : "test",18 "roles" : [19 {20 "role" : "root",21 "db" : "admin"22 }23 ]24}25>
3.2.7 测试
1[mongodb@RHEL-INIT ~]$ mongo 2MongoDB shell version v4.0.16 3connecting to: mongodb://127.0.0.1:27017/?gssapiServiceName=mongodb 4Implicit session: session { "id" : UUID("68c53655-af74-429a-be67-0515b818199e") } 5MongoDB server version: 4.0.16 6Welcome to the MongoDB shell. 7For interactive help, type "help". 8For more comprehensive documentation, see 9 http://docs.mongodb.org/10Questions? Try the support group11 http://groups.google.com/group/mongodb-user1213> use adminuse admin14switched to db admin15> db.createUser({user:'test',pwd:'123456',roles:[{role:'root',db:'admin'}]})db.createUser({user:'test',pwd:'123456',roles:[{role:'root',db:'admin'}]})16Successfully added user: {17 "user" : "test",18 "roles" : [19 {20 "role" : "root",21 "db" : "admin"22 }23 ]24}25>
04 总结
MongoDB的基本安装是不是很简单呢?这只是开始,后续还会分享Python如何操作MongoDB等实战喔~
[微信公众号:python自动化运维],关注小安Sir,优质干货,为您第一时间送达!