奋斗
努力

腾讯服务器安装MongoDB?

云计算

在腾讯云服务器(CVM)上安装 MongoDB 通常有几种主流方式,最推荐的是使用 官方提供的 APT/YUM 源Docker 容器化部署。以下是基于 Ubuntu/Debian 和 CentOS/RHEL 两种常见系统的详细步骤:

方法一:使用官方源安装(推荐,适合生产环境)

这种方式安装的是原生二进制包,性能最好,且方便后续通过包管理器升级。

1. 导入 GPG 密钥

首先获取 MongoDB 的公钥,以确保下载软件包的真实性。

  • Ubuntu/Debian:

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

    (注:请将 7.0 替换为你需要的具体版本号,如 6.0)

  • CentOS/RHEL:

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

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
    sudo apt-get update
  • 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
    sudo yum makecache

3. 安装 MongoDB

# Ubuntu/Debian
sudo apt-get install -y mongodb-org

# CentOS/RHEL
sudo yum install -y mongodb-org

4. 启动并设置开机自启

sudo systemctl start mongod
sudo systemctl enable mongod
sudo systemctl status mongod

方法二:使用 Docker 安装(快速、隔离性好)

如果你不想在系统层面配置复杂的依赖,或者需要频繁切换版本,Docker 是最佳选择。

  1. 安装 Docker(如果尚未安装):

    • Ubuntu: curl -fsSL https://get.docker.com | sh
    • CentOS: sudo yum install -y docker-ce docker-ce-cli containerd.io
    • 启动 Docker: sudo systemctl start docker && sudo systemctl enable docker
  2. 拉取并运行 MongoDB 镜像:

    docker run -d 
      --name mongo 
      -p 27017:27017 
      -e MONGO_INITDB_ROOT_USERNAME=admin 
      -e MONGO_INITDB_ROOT_PASSWORD=your_password 
      -v /opt/data/db:/data/db 
      mongo:7.0
    • -p 27017:27017: 映射端口,注意腾讯云控制台需放行该端口。
    • -v ...: 将数据持久化到宿主机目录,防止容器删除后数据丢失。
    • -e ...: 设置初始管理员账号密码。

⚠️ 关键后续步骤:配置安全与网络访问

在腾讯云上安装完成后,必须执行以下操作才能从外部连接数据库:

1. 修改 MongoDB 配置文件

默认情况下,MongoDB 只监听本地回环地址 (127.0.0.1),这会导致无法远程连接。

编辑配置文件(路径视系统而定):

  • Ubuntu: /etc/mongod.conf
  • CentOS: /etc/mongod.conf

找到 net: 部分,修改如下:

net:
  port: 27017
  bindIp: 0.0.0.0  # 允许所有 IP 连接(生产环境建议配合白名单或防火墙策略)

保存后重启服务:sudo systemctl restart mongod

2. 配置腾讯云安全组(至关重要)

登录 腾讯云控制台 -> 云服务器 (CVM) -> 点击实例 -> 安全组

  • 检查是否有入方向规则允许 TCP 27017 端口。
  • 如果没有,请添加入站规则:协议 TCP,端口 27017,来源 0.0.0.0/0(仅测试用)或指定你的公网 IP。

3. 创建远程用户(可选但推荐)

为了安全,不建议直接使用 root 账户远程连接。可以在 Mongo Shell 中创建专用用户:

mongo
use admin
db.createUser({
  user: "myUser",
  pwd: "StrongPassword123!",
  roles: [{ role: "readWrite", db: "myDatabase" }]
})
exit

常见问题排查

  • 连接被拒绝 (Connection refused):通常是安全组未放行端口,或者 bindIp 未设置为 0.0.0.0
  • 认证失败 (Authentication failed):检查用户名密码是否正确,以及是否使用了 --authenticationDatabase admin 参数。
  • 磁盘空间不足:MongoDB 日志和数据文件增长较快,建议定期检查 CVM 磁盘空间。

根据你的需求选择 原生安装(追求极致性能和管理灵活性)或 Docker 安装(追求部署速度和环境隔离)。

未经允许不得转载:云服务器 » 腾讯服务器安装MongoDB?