专业编程基础技术教程

网站首页 > 基础教程 正文

DB系列 | MongoDB基本安装教程

ccvgpt 2024-08-14 15:33:54 基础教程 10 ℃

Hello,小伙伴们好!为了达到一定的技术广度,小安Sir选择先了解更多的数据库基础知识,以便于更好地结合Python使用,希望能够在自动化运维各个场景中得心应手!

因此,本文分享主要分享如何安装MongoDB数据库,快来看看吧!

DB系列 | 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:\mongodb\MongoDB安装成功!



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/mongodump
10mongodb-linux-x86_64-rhel70-4.0.16/bin/mongorestore
11mongodb-linux-x86_64-rhel70-4.0.16/bin/mongoexport
12mongodb-linux-x86_64-rhel70-4.0.16/bin/mongoimport
13mongodb-linux-x86_64-rhel70-4.0.16/bin/mongostat
14mongodb-linux-x86_64-rhel70-4.0.16/bin/mongotop
15mongodb-linux-x86_64-rhel70-4.0.16/bin/bsondump
16mongodb-linux-x86_64-rhel70-4.0.16/bin/mongofiles
17mongodb-linux-x86_64-rhel70-4.0.16/bin/mongoreplay
18mongodb-linux-x86_64-rhel70-4.0.16/bin/mongod
19mongodb-linux-x86_64-rhel70-4.0.16/bin/mongos
20mongodb-linux-x86_64-rhel70-4.0.16/bin/mongo
21mongodb-linux-x86_64-rhel70-4.0.16/bin/install_compass
22[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/db
2[root@RHEL-INIT app]# mkdir -p /mongo/app/mongodb/log
3[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 = 27017
10
11#以守护程序的方式启用,即在后台运行
12fork = true
13
14#允许所有的连接
15bind_ip=0.0.0.0
16
17auth = true
18~
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 ~]nbsp;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 functions
10if [ -f ~/.bashrc ]; then
11        . ~/.bashrc
12fi
13
14# User specific environment and startup programs
15
16
17export PATH
18
19
20
21export MONGODB_HOME=/mongo/app/mongodb
22PATH=$PATH:$HOME/.local/bin:$HOME/bin:$MONGODB_HOME/bin
23~
24
25".bash_profile" 16L, 253C written                             
26[mongodb@RHEL-INIT ~]nbsp;. .bash_profile 

3.2.5 授权和加载环境变量

1[mongodb@RHEL-INIT ~]nbsp;mongod -f /mongo/app/mongodb/bin/mongodb.conf
2about to fork child process, waiting until server is ready for connections.
3forked process: 70803
4child process started successfully, parent exiting

3.2.6 后台启动数据库

 1[mongodb@RHEL-INIT ~]nbsp;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 group
11        http://groups.google.com/group/mongodb-user
12
13> use adminuse admin
14switched to db admin
15> 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 ~]nbsp;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 group
11        http://groups.google.com/group/mongodb-user
12
13> use adminuse admin
14switched to db admin
15> 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,优质干货,为您第一时间送达!

Tags:

最近发表
标签列表