温馨提示×

centos如何连接mongodb

小樊
53
2026-07-20 03:29:57
栏目: 云计算

CentOS 上连接 MongoDB,通常分为 本地连接远程连接 两种情况。下面从安装、配置到连接一步步说明(以 CentOS 7/8 为例,MongoDB 6.x 为例)。


一、在 CentOS 上安装 MongoDB(如已安装可跳过)

1. 添加 MongoDB 官方源

cat > /etc/yum.repos.d/mongodb-org-6.0.repo <<EOF
[mongodb-org-6.0]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/\$releasever/mongodb-org/6.0/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-6.0.asc
EOF

2. 安装 MongoDB

yum install -y mongodb-org

3. 启动并设置开机自启

systemctl start mongod
systemctl enable mongod

4. 查看状态

systemctl status mongod

二、本地连接 MongoDB

1. 使用 mongo shell(MongoDB ≤ 4.4)

mongo

2. 使用 mongosh(推荐,MongoDB ≥ 5.0)

mongosh

连接成功后你会看到:

test>

三、远程连接 MongoDB(常见场景)

1. 修改 MongoDB 配置文件

vim /etc/mongod.conf

重点修改:

bindIp: 0.0.0.0

默认是:

bindIp: 127.0.0.1

⚠️ 生产环境建议只开放指定 IP,而不是 0.0.0.0

2. 重启 MongoDB

systemctl restart mongod

3. 开放防火墙端口(默认 27017)

firewalld

firewall-cmd --add-port=27017/tcp --permanent
firewall-cmd --reload

iptables(老系统)

iptables -A INPUT -p tcp --dport 27017 -j ACCEPT

四、使用用户名密码连接 MongoDB

1. 创建管理员用户

use admin
db.createUser({
  user: "admin",
  pwd: "Admin@123",
  roles: [{ role: "root", db: "admin" }]
})

2. 启用认证

vim /etc/mongod.conf

添加或修改:

security:
  authorization: enabled

重启:

systemctl restart mongod

3. 使用账号连接

本地

mongosh -u admin -p Admin@123 --authenticationDatabase admin

远程

mongosh "mongodb://admin:Admin@123@<服务器IP>:27017/admin"

五、使用客户端工具连接

常见工具:

  • MongoDB Compass
  • Navicat
  • DBeaver

连接字符串示例:

mongodb://admin:Admin@123@192.168.1.100:27017/admin

六、常见问题排查

1. 连接被拒绝

Connection refused

✅ 检查:

  • mongod 是否启动
  • 防火墙是否放行端口
  • bindIp 是否正确

2. 认证失败

Authentication failed

✅ 检查:

  • 用户名、密码
  • 认证数据库是否正确

七、总结

场景 命令
本地连接 mongosh
远程连接 mongosh "mongodb://IP:27017"
带账号连接 mongosh -u user -p password --authenticationDatabase admin

如果你愿意,可以告诉我:

  • ✅ CentOS 版本
  • ✅ MongoDB 版本
  • ✅ 本地还是远程连接
  • ✅ 是否报错信息

我可以按你的环境给你精确命令

0