Code前端首页关于Code前端联系我们

Linux Centos 7 yum源安装安装MongoDB

terry 2年前 (2023-09-26) 阅读数 44 #数据库

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

yum源

使用一些常用❙总结安装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 # 退出保存
复制代码

要安装 MongoDB,请使用 yum

1。安装 MongoDB

sudo yum install -y mongodb-org
复制代码
Linux Centos 7 Yum源安装安装MongoDB

2。检查安装结果

rpm -qa |grep mongodb
复制代码
rpm -ql mongodb-org-server
复制代码
Linux Centos 7 Yum源安装安装MongoDB

3.启动MongoDB

启动MongoDB服务

systemctl start mongod.service
复制代码

MongoDB默认端口为27017,检查是否启用

netstat -natp | grep 27017
复制代码

检查数据库是否安装成功

ps -aux | grep mongod    # 查看数据库的进程是否存在
复制代码
Linux Centos 7 Yum源安装安装MongoDB

4.检查服务是否启用

mongo
复制代码
Linux Centos 7 Yum源安装安装MongoDB

常用命令列表

// 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
复制代码

连接自定义用户

  1. 创建用户,设置账号、密码、权限
// 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. DB
vi /etc/mongod.conf

security:
  authorization: "enabled"   # disable or enabled
复制代码
> 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:27017/database -u username -p password

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

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

用户权限 角色 的指示

规则 说明
root 仅在管理员数据库中可用。超级帐号,超级权限
允许用户读取指定数据库
readWrite 允许用户读写指定数据库,启用索引等管理功能,在指定数据库 创建、删除、查看统计信息或访问 system.profile
userAdmin 允许用户写入 system.users 集合。您可以在指定数据库中创建、删除和管理用户
clusterAdmin 仅在 admin 数据库中可用 通过授予用户管理权限、授予用户读取权限来访问 admin 数据库中与共享和复制集相关的所有功能对所有数据库
readWriteAnyDatabase 仅在 admin 数据库中可用,因此用户授予对所有数据库的写入和读取权限 admin 数据库授予用户对所有数据库的管理员权限
dbAdminAnyDatabase 仅在 admin 数据库中可用在管理数据库中,因此赋予用户db所有数据库的管理权限权限

https://juejin.im/post/5cbe73f86fb9a0320b40d687
来源:掘金
版权归作者所有。商业转载请联系作者获得许可。非商业转载请注明来源。

版权声明

本文仅代表作者观点,不代表Code前端网立场。
本文系作者Code前端网发表,如需转载,请注明页面地址。

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

热门