工作需要熟悉各类数据库的使用与安装,最近安装的模拟器,在本地搭建mongodb,记录起来分享给大家
一、下载安装包
1、第一种下载,可以在windows上下载包,使用ftp上传到linux上。或者使用rz命令直接上传,下载地址:https://www.mongodb.org/dl/linux
a、如果没有rz命令可能是linux没有安装,可使用yum install lrzsz 安装后上转


2、第二种下载方法:在linux下使用wget命令下载包:下载地址:https://repo.mongodb.org/yum/redhat/7/mongodb-org/4.2/x86_64/RPMS/

下载命令:wget https://repo.mongodb.org/yum/redhat/7/mongodb-org/4.2/x8664/RPMS/mongodb-org-server-4.2.3-1.el7.x8664.rpm
下载对应需要的文件:xxx.shell.xxx ; xxx.server.xxx ; xxx.tools.xxx
下载完成:

二、解包、安装、配置、启动
#使用远程mongo时,可以只安装shell,不需要自己安装mongo server
在此主要是安装server,所以把shell跟server都安装了,tools暂时用不着先不安装
1、安装与配置mongodb server(日志、安装目录、配置文件都使用默认路径安装)
rpm -i mongodb-org-server-4.2.3-1.el7.x86_64.rpm
rpm -i mongodb-org-shell-4.2.3-1.el7.x86_64.rpm
说明:
默认安装路径:/var/lib/mongo/
默认配置文件路径:/etc/mongod.conf
默认日志路径:/var/log/mongodb
2、配置文件说明:vim /etc/mongod.conf
a:配置端口, bindip改为0.0.0.0远程才能访问
net:
port: 27017
bindIp: 0.0.0.0
b:配置复制集名称。一组Mongodb复制集,就是一组mongod进程,这些进程维护同一个数据集合。复制集提供了数据冗余和高等级的可靠性,这是生产部署的基础
replication:
replSetName: rs1
3、启动mongo服务
sudo mongod -f /etc/mongod.conf

#登录本地mongodb
mongo
#激活复制集
rs.initiate()
#配置完成后可通过下面命令查看配置
rs.conf()
4、进行mongo ,在mongo shell执行命令,创建用户
a、使用命令mongo,进入mongo shell
b、创建用户
use admin
db.createUser({ user: "admin", pwd: "Gotapd8", roles: [{ role: "root", db: "admin" }] })

退出mongo,修改配置文件:
sudo vi /etc/mongod.conf
修改配置文件:(开启密码验证)
security:
authorization: enabled
5、重启mongodb
注意:不要用kill,杀死进程,否则会出现死锁
正确的重启方法:
使用mongo命令登录mongo shell
use admin
db.shutdownServer()

失败的解决方法:执行下面的语句,添加权限:
db.updateUser( "pfnieadmin",{roles : [{"role" : "userAdminAnyDatabase","db" : "admin"},{"role" : "dbOwner","db" : "admin"},{"role" : "clusterAdmin", "db": "admin"}] })