在腾讯云服务器(腾讯云 CVM)上安装 MongoDB 主要有两种方式:通过官方源安装(推荐,便于后续升级和管理)和 使用 Docker 容器安装(适合快速部署或隔离环境)。
以下是基于 Ubuntu/Debian 和 CentOS/RHEL 两种主流操作系统的详细步骤。
方法一:通过官方源安装(推荐生产环境)
这种方式安装的 MongoDB 是原生服务,方便使用 apt 或 yum 进行版本管理和更新。
1. 导入 GPG 密钥
首先需要在服务器上导入 MongoDB 的公钥,以确保下载的软件包可信。
-
Ubuntu / Debian:
wget -qO - https://www.mongodb.org/static/pgp/server-7.0.asc | sudo gpg --dearmor -o /usr/share/keyrings/mongodb-server-7.0.gpg(注:请将
server-7.0替换为你需要的版本号,如6.0) -
CentOS / RHEL:
curl -fsSL https://www.mongodb.org/static/pgp/server-7.0.asc | sudo gpg --yes --dearmor -o /etc/pki/rpm-gpg/MONGODB-GPG-Key
2. 添加软件源
-
Ubuntu / Debian:
echo "deb [ arch=amd64,arm64 signed-by=/usr/share/keyrings/mongodb-server-7.0.gpg ] https://repo.mongodb.org/apt/ubuntu $(lsb_release -cs)/mongodb-org/7.0 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-7.0.list -
CentOS / RHEL:
cat <<EOF | sudo tee /etc/yum.repos.d/mongodb-org-7.0.repo [mongodb-org-7.0] name=MongoDB Repository baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/7.0/x86_64/ gpgcheck=1 enabled=1 gpgkey=https://www.mongodb.org/static/pgp/server-7.0.asc EOF
3. 安装 MongoDB
-
Ubuntu / Debian:
sudo apt-get update sudo apt-get install -y mongodb-org # 启动服务并设置开机自启 sudo systemctl start mongod sudo systemctl enable mongod -
CentOS / RHEL:
sudo yum install -y mongodb-org # 启动服务并设置开机自启 sudo systemctl start mongod sudo systemctl enable mongod
方法二:使用 Docker 安装(快速/开发环境)
如果你已经安装了 Docker,这是最快捷的方式,且配置隔离性好。
docker run -d
--name mongo
-p 27017:27017
-v /data/mongo/data:/data/db
-e MONGO_INITDB_ROOT_USERNAME=admin
-e MONGO_INITDB_ROOT_PASSWORD=your_password
mongo:latest
注意:请修改 -e MONGO_INITDB_ROOT_PASSWORD 为你的强密码。数据持久化路径 /data/mongo/data 可根据需要调整。
⚠️ 关键步骤:配置防火墙与网络安全组
安装完成后,MongoDB 默认只监听本地地址(127.0.0.1),无法从外部连接。必须完成以下两步才能远程访问:
1. 修改 MongoDB 配置文件
编辑配置文件(位置视系统而定):
- Ubuntu/Debian:
/etc/mongod.conf - CentOS/RHEL:
/etc/mongod.conf
找到 net: 部分,修改如下:
net:
port: 27017
bindIp: 0.0.0.0 # 允许所有 IP 连接(生产环境建议改为具体内网 IP 或使用鉴权)
保存后重启服务:sudo systemctl restart mongod
2. 开放腾讯云安全组端口
登录 腾讯云控制台 -> 云服务器 (CVM) -> 安全组。
- 找到该实例绑定的安全组规则。
- 添加入方向规则:
- 协议类型: TCP
- 端口范围: 27017
- 来源 IP:
0.0.0.0/0(允许所有) 或指定你的办公 IP(更安全)。
3. 创建管理员用户(重要)
出于安全考虑,强烈建议不要直接暴露无密码的数据库。首次连接后需创建用户:
- 进入 MongoDB Shell:
mongosh - 切换到 admin 库并创建用户:
use admin db.createUser({ user: "admin", pwd: "YourStrongPassword", // 替换为强密码 roles: [{ role: "root", db: "admin" }] }) - 开启身份验证:
再次编辑/etc/mongod.conf,在security:下添加:security: authorization: enabled重启服务:
sudo systemctl restart mongod。
验证安装是否成功
-
检查服务状态:
sudo systemctl status mongod应显示
active (running)。 -
本地连接测试:
mongosh # 输入 show dbs 查看数据库列表 -
远程连接测试(在你的本地电脑终端):
mongosh "mongodb://<腾讯云公网IP>:27017/?authSource=admin" -u admin -p(如果提示连接成功,说明防火墙和安全组配置正确)
💡 最佳实践建议
- 内网通信:如果是同一地域的腾讯云 ECS 集群,建议将
bindIp限制为内网 IP,并在安全组中仅允许内网段访问 27017 端口,以节省流量成本并提高安全性。 - 备份:定期使用
mongodump或云数据库的自动备份功能进行数据快照。 - 监控:建议安装腾讯云云监控插件,实时监控 CPU、内存和磁盘 IO 使用情况。
轻量云Cloud