今天开始记录下软件开发的所有技术坑,为自己节约宝贵的时间,时间就是生命!
1、环境:阿里云,Centos7
防火墙配置,两个地方:1)阿里云控制台,打开端口27017;2)服务器防火墙配置:打开27017端口。
添加:firewall-cmd --zone=public --add-port=80/tcp --permanent (--permanent永久生效,没有此参数重启后失效)
重新载入:firewall-cmd --reload
端口生效!
2、yum安装mongdb
1)配置yum源:
vim /etc/yum.repos.d/mongodb-org-3.4.repo
#添加以下内容:
[mongodb-org-3.4]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/3.4/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-3.4.asc
#这里可以修改 gpgcheck=0, 省去gpg验证
[root@localhost ~]# yum makecache
2)安装mongodb:
yum -y install mongodb-org
已安装:
mongodb-org.x86_64 0:3.4.14-1.el7
作为依赖被安装:
mongodb-org-mongos.x86_64 0:3.4.14-1.el7 mongodb-org-server.x86_64 0:3.4.14-1.el7
mongodb-org-shell.x86_64 0:3.4.14-1.el7 mongodb-org-tools.x86_64 0:3.4.14-1.el7
完毕!
[root@adminset yum.repos.d]#
3)查看安装位置
whereis mongod
4)查看修改配置文件
vim /etc/mongod.conf
5)服务的启动、状态、停止等
systemctl start mongod.service 启动
systemctl status mongod.service 状态
systemctl stop mongod.service 停止
6)进入控制台(mongo shell)
mongo
基本安装完成!
3、基本配置
新安装,没有访问权限控制,先做一个超级用户权限的账户,然后再开启访问权限控制,再配置业务账户。
1)执行mongo,进入shell控制台界面,依次执行:
show dbs
use admin
db.createUser({user:"root",pwd:"123456",roles:["root"]})
至此,建好超级用户账户。退出:exit
2)配置访问控制权限、打开远程访问权限
vim /etc/mongod.conf
绑定IP改为0.0.0.0,开启security:,并添加authorization: enabled(注意冒号后面要有空格,坑儿~),保存退出,重启mongo服务,此时再访问,需要进行权限认证。
3)创建业务账户,先进入shell控制台:
use admin 选定admin用户库
db.auth("root","123456") root用户访问权限认证,返回1,为通过
use abc 创建业务数据库,如没有abc库,会自动创建,use一命令两用
db.createUser({user: "abc", pwd: "123456", roles: [{ role: "dbOwner", db: "abc" }]})
至此,业务数据库abc,访问账户abc(密码:123456),全部创建成功,可以用客户端进行连接了。