Centos6.8 安装mongo3.6以及权限配置和开启外网链接

安装环境和版本说明,以及参考文档链接

  • 服务器:阿里云Centos6.8
  • Mongo版本:3.6
  • 官网文档
    • 安装文档:
      https://docs.mongodb.com/manual/tutorial/install-mongodb-enterprise-on-red-hat/
    • 配置参数文档:
      https://docs.mongodb.com/manual/reference/configuration-options/index.html
  • 参考文章:
    • Mongo权限配置:http://blog.csdn.net/wangdatao_/article/details/78077774
    • SELinux状态查看: http://blog.51cto.com/bguncle/957315

安装MongoDB数据库

  • 配置MongoDB的源文件
[root@virde ~]# sudo vim /etc/yum.repos.d/mongodb-enterprise.repo

然后键入以下内容

[mongodb-enterprise]
name=MongoDB Enterprise Repository
baseurl=https://repo.mongodb.com/yum/redhat/$releasever/mongodb-enterprise/3.6/$basearch/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-3.6.asc
  • 下载安装包,使用yum install进行安装
[root@virde ~]# sudo yum install -y mongodb-enterprise

运行MongoDB数据库

  • 配置SELinux

    如果你使用了SELinux,那么必须配置SELinux,不然会影响MongoDB的启动。
    If you are using SELinux, you must configure SELinux to allow MongoDB to start on Red Hat Linux-based systems (Red Hat Enterprise Linux or CentOS Linux).

使用/usr/sbin/sestatus -v 命令查看SELinux的状态

[root@virde ~]# /usr/sbin/sestatus -v 
SELinux status:                 disabled

如果是disabled的话就可以略过这一步了
如果是开启状态,那么关闭SELinux即可

[root@virde ~]# vim /etc/selinux/config

然后找到SELINUX改为disabled
`bash SELINUX=disabled

  • 运行MongoDB
    好了,现在可以先把mongo运行起来了。
[root@virde ~]# sudo service mongod start
Starting mongod:                                           [  OK  ]

查看 /var/log/mongodb/mongod.log,如果有
[initandlisten] waiting for connections on port 27017
说明MongoDB已经成功运行起来了。

[root@virde ~]# tail -f /var/log/mongodb/mongod.log
  • 停止MongoDB
[root@virde ~]# sudo service mongod stop
Stopping mongod:                                           [  OK  ]
  • 重启MongoDB
[root@virde ~]# sudo service mongod restart
Stopping mongod:                                           [  OK  ]
Starting mongod:                                           [  OK  ]
  • 进入MongoDB shell
[root@virde ~]# mongo
MongoDB shell version v3.6.2
connecting to: mongodb://127.0.0.1:27017
MongoDB server version: 3.6.2
Server has startup warnings: 
2018-02-02T16:27:11.395+0800 I STORAGE  [initandlisten] 
2018-02-02T16:27:11.395+0800 I STORAGE  [initandlisten] ** WARNING: Using the XFS filesystem is strongly recommended with the WiredTiger storage engine
2018-02-02T16:27:11.395+0800 I STORAGE  [initandlisten] **          See http://dochub.mongodb.org/core/prodnotes-filesystem
2018-02-02T16:27:11.927+0800 I CONTROL  [initandlisten] 
2018-02-02T16:27:11.927+0800 I CONTROL  [initandlisten] ** WARNING: Access control is not enabled for the database.
2018-02-02T16:27:11.927+0800 I CONTROL  [initandlisten] **          Read and write access to data and configuration is unrestricted.
2018-02-02T16:27:11.927+0800 I CONTROL  [initandlisten] 
2018-02-02T16:27:11.927+0800 I CONTROL  [initandlisten] 
2018-02-02T16:27:11.927+0800 I CONTROL  [initandlisten] ** WARNING: /sys/kernel/mm/transparent_hugepage/enabled is 'always'.
2018-02-02T16:27:11.927+0800 I CONTROL  [initandlisten] **        We suggest setting it to 'never'
2018-02-02T16:27:11.927+0800 I CONTROL  [initandlisten] 
2018-02-02T16:27:11.927+0800 I CONTROL  [initandlisten] ** WARNING: /sys/kernel/mm/transparent_hugepage/defrag is 'always'.
2018-02-02T16:27:11.927+0800 I CONTROL  [initandlisten] **        We suggest setting it to 'never'
2018-02-02T16:27:11.927+0800 I CONTROL  [initandlisten] 
2018-02-02T16:27:11.927+0800 I CONTROL  [initandlisten] ** WARNING: soft rlimits too low. rlimits set to 1024 processes, 65535 files. Number of processes should be at least 32767.5 : 0.5 times number of files.
2018-02-02T16:27:11.927+0800 I CONTROL  [initandlisten] 
>

删除卸载MongoDB

[root@virde ~]# sudo service mongod stop
[root@virde ~]# sudo yum erase $(rpm -qa | grep mongodb-enterprise)
[root@virde ~]# sudo rm -r /var/log/mongodb
[root@virde ~]# sudo rm -r /var/lib/mongo

配置MongoDB管理员用户

必须先配置管理员用户,才能开启权限

在MongoDB shell命令行中执行以下命令

> use admin ;
> db.createUser({
...     user:"adminUser",
...     pwd:"thisisyourpass",
...     roles:[{role:"root",db:"admin"}]
... });

修改配置文件,允许外网链接

[root@virde ~]# vim /etc/mongod.conf

配置文件如下

# 将bindIp改为0.0.0.0
# network interfaces
net:
  port: 27017
  bindIp: 0.0.0.0  # Listen to local interface only, comment to listen on all interfaces.

# 开启权限认证
security:
  authorization: enabled

修改后的完整文件如下:

# where to write logging data.
systemLog:
  destination: file
  logAppend: true
  path: /var/log/mongodb/mongod.log

# Where and how to store data.
storage:
  dbPath: /var/lib/mongo
  journal:
    enabled: true
#  engine:
#  mmapv1:
#  wiredTiger:

# how the process runs
processManagement:
  fork: true  # fork and run in background
  pidFilePath: /var/run/mongodb/mongod.pid  # location of pidfile
  timeZoneInfo: /usr/share/zoneinfo

# network interfaces
net:
  port: 27017
  bindIp: 0.0.0.0  # Listen to local interface only, comment to listen on all interfaces.


security:
  authorization: enabled

重启MongoDB。

[root@virde ~]# sudo service mongod restart
Stopping mongod:                                           [  OK  ]
Starting mongod:                                           [  OK  ]

安装配置完成,使用Robo3T测试链接

1517561259245.png

总结

  • 其实整个安装过程并不复杂,但是各种配置实在头疼。
  • 官方文档真的是最棒的!但是看不懂英文就很恶心。

转载于:https://www.cnblogs.com/virde/p/centos_mongo_install.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值