# 创建安装目录 sudo mkdir -p /usr/My-Application/mongodb cd /usr/My-Application # 下载 MongoDB wget https://fastdl.mongodb.org/linux/mongodb-linux-x86_64-rhel80-6.0.12.tgz # 解压文件 tar -zxvf mongodb-linux-x86_64-rhel80-6.0.12.tgz # 重命名目录 mv mongodb-linux-x86_64-rhel80-6.0.12/* mongodb/ # 创建数据和日志目录 sudo mkdir -p /usr/My-Application/mongodb/data sudo mkdir -p /usr/My-Application/mongodb/log sudo mkdir -p /usr/My-Application/mongodb/conf # 创建配置文件 sudo vim /usr/My-Application/mongodb/conf/mongod.conf 配置文件内容: systemLog: destination: file path: /usr/My-Application/mongodb/log/mongod.log logAppend: true storage: dbPath: /usr/My-Application/mongodb/data journal: enabled: true processManagement: fork: true pidFilePath: /usr/My-Application/mongodb/mongod.pid net: port: 27017 bindIp: 0.0.0.0 #为了安全问题,不能设置成0.0.0.0,后期要改成能够访问本机服务的ip。 security: authorization: disabled #在部署的時候,这个位置一定要设置为disabled,后期添加好用户和密码和权限之后再设置为enabled,否则没有权限创建登录用户,也没有任何办法操作数据库。 # 设置正确的目录权限 sudo chown -R mongodb:mongodb /usr/My-Application/mongodb sudo chmod -R 755 /usr/My-Application/mongodb # 特别是数据和日志目录 sudo chown mongodb:mongodb /usr/My-Application/mongodb/data sudo chown mongodb:mongodb /usr/My-Application/mongodb/log sudo chmod 755 /usr/My-Application/mongodb/data sudo chmod 755 /usr/My-Application/mongodb/log # 创建服务文件 sudo vim /etc/systemd/system/mongodb.service 服务文件内容正确: [Unit] Description=MongoDB Database Server After=network.target [Service] Type=forking User=mongodb Group=mongodb PIDFile=/usr/My-Application/mongodb/mongod.pid Environment="OPTIONS=-f /usr/My-Application/mongodb/conf/mongod.conf" ExecStart=/usr/My-Application/mongodb/bin/mongod $OPTIONS ExecStop=/usr/My-Application/mongodb/bin/mongod --shutdown -f /usr/My-Application/mongodb/conf/mongod.conf Restart=always [Install] WantedBy=multi-user.targ# 添加到系统环境变echo 'export PATH=$PATH:/usr/My-Application/mongodb/bin' | sudo tee-a/etc/profile # 使环境变量生效 source /etc/profile # 重新加载 systemd sudo systemctl daemon-reload # 启动 MongoDB sudo systemctl start mongodb # 设置开机自启 sudo systemctl enable mongodb # 检查服务状态 sudo systemctl status mongodb # 开放 MongoDB 端口 sudo firewall-cmd --permanent --add-port=27017/tcp sudo firewall-cmd --reload 如果需要卸载,可以执行以下命令: # 停止服务 sudo systemctl stop mongodb sudo systemctl disable mongodb # 删除服务文件 sudo rm /etc/systemd/system/mongodb.service # 删除安装目录 sudo rm -rf /usr/My-Application/mongodb # 删除用户 sudo userdel mongodb # 在 MongoDB shell 中,切换到 admin 数据库并创建管理员用户: use admin db.createUser({ user: "admin", pwd: "your_admin_password", roles: [ { role: "userAdminAnyDatabase", db: "admin" }, "readWriteAnyDatabase" ] }) # 在特定数据库中创建普通用户: use your_database db.createUser({ user: "your_username", pwd: "your_password", roles: [ { role: "readWrite", db: "your_database" } ] }) # 修改 MongoDB 配置文件以启用认证。 sudo vim /usr/My-Application/mongodb/conf/mongod.conf # 在 security 部分中,将 authorization 设置为 enabled: security: authorization: enabled # 重新加载 systemd sudo systemctl daemon-reload # 重启 MongoDB 服务 sudo systemctl restart mongodb
# 连接mongodb
mongo mongodb://用户名:密码@服务器ip:21707
标签:mongod,Centos,Mongodb,sudo,Application,usr,mongodb,My From: https://www.cnblogs.com/longxingzhe/p/18592016