跳到主要内容

MongoDB 部署(单节点)

  1. 下载 mongodb 安装包

    wget https://pdpublic.mingdao.com/private-deployment/offline/common/mongodb-linux-x86_64-3.4.24.tgz
  2. 解压至安装目录

    tar -zxvf mongodb-linux-x86_64-3.4.24.tgz
    mv mongodb-linux-x86_64-3.4.24 /usr/local/mongodb
  1. 创建 mongodb 用户

    useradd -M -s /sbin/nologin mongodb
  2. 创建数据、日志目录并授予权限

    mkdir -p /data/mongodb/ /data/logs/mongodb
    chown -R mongodb.mongodb /usr/local/mongodb/ /data/mongodb/ /data/logs/mongodb
  3. 配置 systemd 管理文件

    cat > /etc/systemd/system/mongodb.service <<EOF
    [Unit]
    Description=MongoDB
    [Service]
    User=mongodb
    Group=mongodb
    LimitNOFILE=1000000
    LimitNPROC=1000000
    ExecStart=/usr/local/mongodb/bin/mongod --logpath /data/logs/mongodb/mongodb.log --dbpath /data/mongodb --auth --port 27017
    ExecStop=/usr/bin/kill \$MAINPID
    Restart=on-failure
    [Install]
    WantedBy=multi-user.target
    EOF
  4. 加入开机自启动

    # 安装后还没创建用户,所以先不用 systemctl start mongodb 启动服务
    systemctl daemon-reload
    systemctl enable mongodb

创建数据库用户

  1. 临时启动一个未开启连接认证的 mongodb 服务

    su -c '/usr/local/mongodb/bin/mongod --fork --logpath /usr/local/mongodb/mongodb.log --dbpath /data/mongodb --noauth  --port 27017' -s /bin/bash mongodb
  2. 创建用户

    /usr/local/mongodb/bin/mongo <<<'use admin
    db.createUser({user:"root",pwd:"123456",roles:[{role:"root",db:"admin"}]})'
    • 命令中指定的 mongodb admin 库权限 root 用户密码为 123456 ,实际部署时注意替换
  3. 关闭临时启动的 MongoDB

    kill $(pgrep -f 'mongod')

启动 MongoDB

systemctl start mongodb