linux教程_Linux如何安装、运行MongoDB教程

一.我的安装环境:CentOS7+MongoDB4.0.1。

二.下载MongoDB。

官网下载地址:https://www.mongodb.com/download-center?jmp=nav#community,选择Community Server服务。

6bd1cca516b422e49652c4c3374c7e9c.png

我下载的是最新的4.0.1的legacy(旧)版。压缩包下载完成后上传到Linux上,然后解压。解压命令:

tar -zxvf mongodb-linux-x86_64-4.0.1.tgz

得到mongodb-linux-x86_64-4.0.1文件夹,为方便我改名为mongodb-4.0.1:

mv mongodb-linux-x86_64-4.0.1 mongodb-4.0.1

三. 配置环境变量及配置文件。

3.1配置系统环境变量:

vim /etc/profile

会提示文件已存在,输入“e”回车,然后键盘按下“i”进入编辑模式即可。在文件的最后加上:

#mongodb export PATH=$PATH:/opt/mongodb-4.0.1/bin

最后按下“Esc”,再按下“:”,输入“wq”保存退出vim编辑模式,source /etc/profile使修改生效即可。

3.2 创建MongoDB数据存放文件夹和日志记录文件夹,为后面的配置文件使用:

mkdir -p /data/dbmkdir -p /logs

3.3 创建MongoDB运行时使用的配置文件:

进入bin目录下:cd /opt/mongodb-4.0.1/bin

创建mongodb.conf配置文件:vim mongodb.conf

会提示是new file,直接输入下面内容:

dbpath = /data/db #数据文件存放目录logpath = /logs/mongodb.log #日志文件存放目录port = 27017 #端口fork = true #以守护程序的方式启用,即在后台运行#auth=true #需要认证。如果放开注释,就必须创建MongoDB的账号,使用账号与密码才可远程访问,第一次安装建议注释bind_ip=0.0.0.0 #允许远程访问,或者直接注释,127.0.0.1是只允许本地访问
e31338dac66045bcd09393a3fe28a139.png

最后“Esc”,按下“:”,输入“wq”保存退出vim编辑模式即可。注意:注释符号#和数据之间必须是一个空格。

四. 启动MongoDB

4.1 启动MongoDB服务:

进入bin目录下:cd /opt/mongodb-4.0.1/bin

加载配置文件方式启动:./mongod -f mongodb.conf

显示:

e81ba69914c1a2d64f4ce5f14554b48c.png

至此,MongoDB在Linux上的安装完毕。

查看端口映射检查是否启动成功:netstat -nltp|grep mongod ,显示:

36fb69d6fc2406d525330616faef28eb.png

或者:netstat -nltp|grep 27017

或者: ps -ef | grep mongo ,显示

bfc6e191d59d0f2ddd547d8d194e66b4.png

或者:top ,显示

8f842a2780bb2b66d2edc2e72668b878.png

4.2 关闭MongoDB。

关闭方式也有很多种,下面列举几种。

4.2.1 mongod命令关闭:./mongod --shutdown ,mongod 命令的 shutdown 选项能干净的关闭 MongoDB 服务,会释放内存中MongoDB占用的内存,个人推荐。

4.2.2 kill进程:kill MongoDB的pid ,直接杀死MongoDB的进程id。kill -9 pid 强制杀死,有时可能会出现错误关不掉时就可使用这种强制方式,但注意这种方式可能并不会马上释放内存中MongoDB占用的内存,且如果这时候有数据往MongoDB新增可能会导致数据丢失。注:查看pid:ps -ef | grep mongo , 结果的第二列就是pid。

4.2.3 pkill mongod 。

五. 创建MongoDB的账号。

这也是我第一次搭MongoDB,由于刚开始在配置文件中加了auth=true,导致本地可正常访问,远程却一直连接不上MongoDB(远程使用的是默认空用户名和密码),看了很多博客也没找到原因,最后为MongoDB创建了账号远程才可访问(这里吐槽一下有的博主写的东西没有亲自操作一遍就从网上复制粘贴然后发布,有些没有责任心)。现在自己才发现原来是这个配置导致的,这也是上面的配置文件我为什么建议刚安装时注释掉auth=true,当然,后面如果熟悉了账号的创建,为了安全还是应该开启的。

建议注释了auth=true后进行下面的操作,如果开启了认证,可能会导致下面的操作执行失败(只是可能)。

进入bin目录下: cd /opt/mongodb-4.0.1/bin

运行mongo命令:mongo

7702802feaf9415abd5db03293ce0b28.png

使用admin数据库:use admin ,注意admin数据库下创建的账号权限是所有库通用的,即是全局认证的。

创建用户:db.createUser({ user: 'root', pwd: 'root',roles: [ { role: "dbOwner", db: "test" }] })

这时候MongoDB的admin数据库就有了账号,启用auth=true,重启后,再连接就需要账号密码授权了。

45f2675004f6cd538258dc3be91b1ea3.png

连接admin数据库(因为账号是admin数据库下的用户,如果想直接连接test数据库,这个数据库中是没有名为root的用户的,所以最好的解决方案就是在test数据库中通过db.createUser创建一个相同的用户):use admin

授权:db.auth("root","root")

使用test数据库:use test

ad67868b870df072240e8b985d54e6b4.png

这时候就拥有了权限对数据库进行操作:db.firstCollection.save({"name":"yzh","age":"25"})

cd5fa44cba2358c8478a221eac7a51ea.png

可查看是否新增成功:db.firstCollection.find({name:"yzh"})

3d3a619d17d741b952a37cbbf6aaff49.png
872d9d730dd6ff0c848b8624f2999d7c.png

退出mongo命令行工具:ctrl + c本次教程就到这里,觉得对您有帮助的话不妨点个关注加收藏,感谢您能看完哦。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值