腾讯服务器安装MongoDB?

在腾讯云服务器(腾讯云 CVM)上安装 MongoDB 是非常常见的操作,通常推荐使用官方提供的 YUM(CentOS/RedHat)或 APT(Ubuntu/Debian)包管理器进行安装,这样能确保获取到最新的安全补丁和版本。

以下是针对两种主流 Linux 发行版的详细安装步骤:

1. 准备工作

首先,你需要通过 SSH 登录到你的腾讯云服务器,并确认系统版本。

# 查看系统版本
cat /etc/os-release

2. CentOS / RedHat / Rocky Linux 安装步骤

如果你的服务器是 CentOS 7/8 或 Rocky Linux,请按以下步骤操作:

第一步:导入 GPG 密钥

sudo rpm --import https://www.mongodb.org/static/pgp/server-7.0.asc

(注:如果你需要其他版本,请将 URL 中的 server-7.0 替换为对应版本号,如 server-6.0)

第二步:创建 YUM 配置文件

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

第三步:安装 MongoDB

sudo yum install -y mongodb-org

第四步:启动并设置开机自启

sudo systemctl start mongod
sudo systemctl enable mongod

第五步:验证状态

systemctl status mongod

3. Ubuntu / Debian 安装步骤

如果你的服务器是 Ubuntu 20.04/22.04 或 Debian,请按以下步骤操作:

第一步:导入 GPG 密钥

curl -fsSL https://www.mongodb.org/static/pgp/server-7.0.asc | sudo gpg --dearmor -o /usr/share/keyrings/mongodb-server-7.0.gpg

第二步:添加 MongoDB 仓库源

echo "deb [ signed-by=/usr/share/keyrings/mongodb-server-7.0.gpg ] http://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

第三步:更新软件包列表并安装

sudo apt-get update
sudo apt-get install -y mongodb-org

第四步:启动并设置开机自启

sudo systemctl start mongod
sudo systemctl enable mongod

第五步:验证状态

systemctl status mongod

4. 关键配置与腾讯云安全组设置(非常重要)

默认情况下,MongoDB 只监听本地回环地址 (127.0.0.1),且端口 27017 在腾讯云控制台的“安全组”中是关闭的。如果你需要远程连接数据库,必须完成以下两步:

A. 修改 MongoDB 配置文件

编辑配置文件以允许外部访问(默认路径通常为 /etc/mongod.conf):

sudo vim /etc/mongod.conf

找到 net: 部分,修改 bindIpport

net:
  port: 27017
  bindIp: 0.0.0.0  # 改为 0.0.0.0 允许所有 IP 访问(生产环境建议配合用户权限管理)

保存退出后,重启服务生效:

sudo systemctl restart mongod

B. 配置腾讯云安全组

  1. 登录 腾讯云控制台
  2. 进入 云服务器 (CVM) -> 实例 -> 点击你的实例 ID。
  3. 点击右侧的 安全组 标签页(或直接搜索“安全组”)。
  4. 找到该实例绑定的安全组,点击 修改规则
  5. 添加一条 入方向 规则:
    • 类型:自定义 TCP
    • 协议端口:27017
    • 来源:根据你的需求填写(测试时可用 0.0.0.0/0,生产环境建议限制为你的办公 IP)。
    • 策略:允许
  6. 保存规则。

C. 配置 MongoDB 用户认证(推荐)

为了安全起见,强烈建议在启动 MongoDB 后创建一个管理员账号,而不是完全开放无密码访问。

  1. 使用 root 身份进入 MongoDB Shell:
    mongo
  2. 切换到 admin 数据库并创建用户(假设用户名为 admin,密码为 your_password):
    use admin
    db.createUser({
     user: "admin",
     pwd: "your_password",
     roles: [{ role: "root", db: "admin" }]
    })
  3. 修改配置文件启用认证:
    /etc/mongod.conf 中添加:

    security:
     authorization: enabled
  4. 重启服务:
    sudo systemctl restart mongod

    注意:开启认证后,连接时必须携带用户名和密码,例如:
    mongo "mongodb://admin:your_password@<服务器IP>:27017/?authSource=admin"

常见问题排查

  • 连接被拒绝 (Connection refused):检查是否已在安全组放行 27017 端口,以及 mongod.confbindIp 是否包含 0.0.0.0
  • 权限不足 (Permission denied):如果是 Ubuntu/Debian,有时需要手动创建数据目录并赋予权限:
    sudo mkdir -p /data/db
    sudo chown -R mongodb:mongodb /data/db
  • 防火墙拦截:如果服务器内部开启了 firewalld (CentOS) 或 ufw (Ubuntu),也需要在系统内部放行端口。

按照以上步骤操作后,你的腾讯云服务器应该已经成功运行了 MongoDB,并且可以通过客户端工具(如 Navicat、Robo3T 或命令行)进行连接。

未经允许不得转载:CLOUD技术博 » 腾讯服务器安装MongoDB?