000 目录
001 系统环境
[root@localhost ~]# ll /etc/*centos*
-rw-r--r--. 1 root root 37 Nov 23 2020 /etc/centos-release
-rw-r--r--. 1 root root 51 Nov 23 2020 /etc/centos-release-upstream
[root@localhost ~]# cat /etc/centos-release
CentOS Linux release 7.9.2009 (Core)
[root@localhost ~]# uname -r
3.10.0-1160.42.2.el7.x86_64
[root@localhost ~]# getconf LONG_BIT
64
[root@localhost ~]#
002 数据库下载
https://www.mongodb.com/try/download/community
003 数据库安装
# 解压包并移动
tar xvf mongodb-linux-x86_64-rhel70-5.0.3.tgz
mv mongodb-linux-x86_64-rhel70-5.0.3 /usr/local/mongo
cd /usr/local/mongo
# 创建文件夹(数据和日志)
mkdir -p /data/mongo /logs
# 软连接
ln -s /usr/local/mongo/bin/mongod /usr/bin/mongod
ln -s /usr/local/mongo/bin/mongo /usr/bin/mongo
004 配置文件创建
# 创建文件
mkdir /etc/mongo
vim /etc/mongo/mongo.conf
# 添加以下内容:
port=27456
dbpath=/data/mongo
logpath=/logs/mongo.log
fork=true
logappend=true
bind_ip=0.0.0.0
maxConns=20000
auth=true
quiet=true
005 数据库启动
mongod -f /etc/mongo/mongo.conf
006 添加管理员账号
- 客户端连接数据库
mongo localhost:27456
- 添加管理员账号
use admin
db.createUser({user: "admin", pwd: "123456", roles: [{role: "root", db: "admin"}]})
exit
权限 | 说明 |
---|---|
read | 允许用户读取指定数据库 |
readWrite | 允许用户读写指定数据库 |
dbAdmin | 允许用户在指定数据库中执行管理函数,如索引创建、删除,查看统计或访问system.profile |
userAdmin | 允许用户向system.users集合写入,可以在指定数据库里创建、删除和管理用户 |
clusterAdmin | 只在admin数据库中可用,赋予用户所有分片和复制集相关函数的管理权限。 |
readAnyDatabase | 只在admin数据库中可用,赋予用户所有数据库的读权限 |
readWriteAnyDatabase | 只在admin数据库中可用,赋予用户所有数据库的读写权限 |
userAdminAnyDatabase | 只在admin数据库中可用,赋予用户所有数据库的userAdmin权限 |
dbAdminAnyDatabase | 只在admin数据库中可用,赋予用户所有数据库的dbAdmin权限。 |
root | 只在admin数据库中可用。超级账号,超级权限 |
007 管理员操作
- 管理员连接数据库
mongo -u admin -p 123456 localhost:27456/admin
- 优雅关闭数据库
db.shutdownServer()
008 开启启动服务
- 创建脚本
vim /usr/bin/mongo_start.sh
# 内容如下:
nohup /usr/local/mongo/bin/mongod -f /etc/mongo/mongo.conf>> /logs/mongo_nohup.out 2>&1
- 赋予权限
chmod 777 /usr/bin/mongo_start.sh
- 添加到开机启动
vim /etc/rc.d/rc.local
# 追加到最后
sh /usr/bin/mongo_start.sh
- 添加权限
chmod +x /etc/rc.d/rc.local
009 开放端口
# 查看防火墙状态
firewall-cmd --state
# 开放端口
firewall-cmd --zone=public --add-port=27456/tcp --permanent
# 立即生效
firewall-cmd --reload
# 查看已开放端口
firewall-cmd --zone=public --list-ports
# 可以远程连接
mongo -u 账号 -p 密码 IP地址:端口/admin