0
点赞
收藏
分享

微信扫一扫

Centos 如何安装 MongoDB

暮晨夜雪 2022-03-30 阅读 104

本安装教程系统版本为Linux Centos 7,使用Yum源安装MongoDB

Yum源

​使用​ 概括几个常用的:

// 1 安装 
yum install package // 安装指定的安装包package

// 2 更新和升级
yum update // 全部更新
yum update package // 更新指定程序包package
yum check-update // 检查可更新的程序
yum upgrade package // 升级指定程序包package

// 3 查找和显示
yum info // 列出所有可以安装或更新的包的信息
yum info package //显示安装包信息package
yum list // 显示所有已经安装和可以安装的程序包
yum list package // 显示指定程序包安装情况package
yum search package // 搜索匹配特定字符的package的详细信息

// 4 删除程序
yum remove | erase package // 删除程序包package
yum deplist package // 查看程序package依赖情况

// 5 清除缓存
yum clean packages // 清除缓存目录下的软件包
yum clean headers // 清除缓存目录下的 headers
yum clean oldheaders // 清除缓存目录下旧的 headers
yum clean, yum clean all // (= yum clean packages; yum clean oldheaders) 清除缓存目录下的软件包及旧的headers
复制代码

安装Mongodb

配置系统yum源

1. 创建.repo文件,生成mongodb的源

vi /etc/yum.repos.d/mongodb-org-4.0.repo
复制代码

2. 添加以下配置信息:

[mongodb-org-4.0]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/#releasever/mongodb-org/4.0/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-4.0.asc
复制代码

​详解:​

name         # 名称
baseurl # 获得下载的路径
gpkcheck=1 # 表示对从这个源下载的rpm包进行校验;
enable=1 # 表示启用这个源。
gpgkey # gpg验证
复制代码

3. 保存退出

wq # 退出保存
复制代码

使用yum安装MongoDB

1. 安装MongoDB

sudo yum install -y mongodb-org
复制代码

[data:image/svg+xml;utf8,<?xml version="1.0"?><svg xmlns="http://www.w3.org/2000/svg​" version="1.1" width="1192" height="894"></svg>](data:image/svg+xml;utf8,<?xml version="1.0"?><svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="1192" height="894"></svg>)

2. 验证安装结果

rpm -qa |grep mongodb
复制代码
rpm -ql mongodb-org-server
复制代码

[data:image/svg+xml;utf8,<?xml version="1.0"?><svg xmlns="http://www.w3.org/2000/svg​" version="1.1" width="1280" height="684"></svg>](data:image/svg+xml;utf8,<?xml version="1.0"?><svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="1280" height="684"></svg>)

3. 启动MongoDB

启动MongoDB服务

systemctl start mongod.service
复制代码

MongoDB默认端口是27017,查看是否开启

netstat -natp | grep 27017
复制代码

检查数据库是否安装成功

ps -aux | grep mongod    # 查看数据库的进程是否存在
复制代码

[data:image/svg+xml;utf8,<?xml version="1.0"?><svg xmlns="http://www.w3.org/2000/svg​" version="1.1" width="1280" height="695"></svg>](data:image/svg+xml;utf8,<?xml version="1.0"?><svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="1280" height="695"></svg>)

4. 验证服务开启

mongo
复制代码

[data:image/svg+xml;utf8,<?xml version="1.0"?><svg xmlns="http://www.w3.org/2000/svg​" version="1.1" width="1280" height="1037"></svg>](data:image/svg+xml;utf8,<?xml version="1.0"?><svg xmlns="http://www.w3.org/2000/svg" version="1.1" width="1280" height="1037"></svg>)

常用命令清单

// 1、开启MongoDB
sudo service mongod start 或者 systemctl start mongod.service # 开启MongoDB
sudo chkconfig mongod on # 加入开机启动
sudo service mongod restart # 重启MongoDB

// 2、关闭MongoDB
sudo service mongod stop # 关闭防火墙

// 3、卸载MongoDB
sudo yum erase $(rpm -qa | grep mongodb-org) # 卸载MongoDB
sudo rm -r /var/log/mongodb # 删除日志文件
sudo rm -r /var/lib/mongo # 删除数据文件
复制代码

远程连接Mongodb

1. 修改配置文件mongodb.conf

vi /etc/mongod.conf

# network interfaces
net:
port: 27017
bindIp: 0.0.0.0 # Enter 0.0.0.0,:: to bind to all IPv4 and IPv6 addresses or, alternatively, use the net.bindIpAll setting.
复制代码

​修改绑定ip默认127.0.0.1只允许本地连接, 所以修改为bindIp:0.0.0.0, 退出保存​

2. 重启mongodb服务

sudo service mongod restart 
复制代码

3. 开放对外端口

​方法一​

systemctl status firewalld  # 查看防火墙状态
firewall-cmd --zone=public --add-port=27017/tcp --permanent # mongodb默认端口号
firewall-cmd --reload # 重新加载防火墙

firewall-cmd --zone=public --query-port=27017/tcp # 查看端口号是否开放成功,输出yes开放成功,no则失败
复制代码

​方法二​

iptables -A INPUT -p tcp -m state --state NEW -m tcp --dport 27017 -j ACCEPT
复制代码

4. 远程连接

​默认连接​

mongo 10.128.218.14:27017
复制代码

​连接到自定义的用户​

创建用户,设置账号,密码,权限

// admin数据库
> use admin
switched to db admin
> db.createUser({ user:"root", pwd:"123456", roles:["root"] })
Successfully added user: { "user" : "root", "roles" : [ "root" ] }

// 其他数据库
> use test
switched to db test
> db.createUser({ user:"admin", pwd:"123456", roles:["readWrite", "dbAdmin"] })
Successfully added user: { "user" : "root", "roles" : [ "root" ] }
复制代码
  1. 修改mongodb.conf文件,启用身份验证
vi /etc/mongod.conf

security:
authorization: "enabled" # disable or enabled
复制代码
  1. 重启MongoDB
sudo service mongod restart 
复制代码
  1. 用户认证
> use admin
switched to db admin
> db.auth("root", "123456")
1 // 授权成功
复制代码
// 其他常用命令
db.updateUser(user, writeConcern) # 更新用户
db.dropUser('test') # 删除用户
复制代码
  1. 远程连接
// 终端连接
mongo 10.128.218.14:27017/database -u username -p password

// mongoose方式连接
mongoose.connect('mongodb://username:password@host:port/database?options...', {useNewUrlParser: true});

// 通过客户端连接
复制代码

用户权限角色说明

Untitled

参考文献

  • yum使用详解
  • Install MongoDB Community Edition on Red Hat Enterprise or CentOS Linux
  • CentOS 7上MongoDB数据库安装和卸载
  • ubuntu mongodb远程连接配置
  • How to Enable Authentication on MongoDB
  • db.createUser()

作者:稻草叔叔


著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

举报

相关推荐

0 条评论