当前位置: 首页 > 帮助中心

MongoDB配置Ubuntu有哪些最佳实践

时间:2026-01-29 15:01:06

在Ubuntu上配置MongoDB时,遵循以下最佳实践可以帮助确保其高效、安全地运行:

安装MongoDB
    导入MongoDB公钥:
wget -qO - https://www.mongodb.org/static/pgp/server-4.4.asc | sudo apt-key add -
    创建MongoDB源列表文件:
echo "deb [ archamd64,arm64 ] https://repo.mongodb.org/apt/ubuntu focal/mongodb-org/4.4 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-4.4.list
    更新软件包列表:
sudo apt-get update
    安装MongoDB:
sudo apt-get install -y mongodb-org
配置MongoDB
    编辑MongoDB配置文件:
sudo nano /etc/mongod.conf
    修改配置参数:
bind_ip:设置为 0.0.0.0 以允许从任意IP地址连接。port:设置为 MongoDB 服务器监听的端口号(默认为27017)。security.authorization:启用身份验证(如果需要)。

例如:

net:port: 27017bindIp: 0.0.0.0security:authorization: enabled
    保存并关闭文件。重启MongoDB服务以使配置生效:
sudo systemctl restart mongod
启动和停止MongoDB服务
    启动MongoDB服务:
sudo systemctl start mongod
    停止MongoDB服务:
sudo systemctl stop mongod
    重启MongoDB服务:
sudo systemctl restart mongod
    检查MongoDB服务状态:
sudo systemctl status mongod
验证安装
    连接到MongoDB:
mongo
    检查数据库列表:
show dbs
    切换到某个数据库并查看集合:
use mydbshow collections
配置MongoDB以安全地运行
    启用身份验证:

在配置文件中添加或修改以下内容:

security:authorization: enabled
    创建管理员用户:

切换到MongoDB shell:

mongo

切换到 admin 数据库:

use admin

创建一个管理员用户并授予其 root 角色:

db.createUser({user: "yourAdminUsername",pwd: "yourAdminPassword",roles: [ { role: "root", db: "admin" } ]})

退出MongoDB shell:

exit()
性能优化
    调整内存和磁盘配置,确保服务器有足够的内存和快速的磁盘。为经常用于查询的字段创建索引,以提高查询性能。使用MongoDB自带的工具 mongostatmongotop 监控数据库性能。
安全配置
    禁用透明大页面(THP):
sudo nano /etc/systemd/system/disable-thp.service

内容:

[Unit]Description = Disable Transparent Huge Pages (THP)[Service]Type = simpleExecStart = /bin/sh -c "echo 'never' /sys/kernel/mm/transparent_hugepage/enabled && echo 'never' /sys/kernel/mm/transparent_hugepage/defrag"[Install]WantedBy = multi-user.target

重新加载并启用服务:

sudo systemctl daemon-reloadsudo systemctl enable --now disable-thp.service
    设置MongoDB用户的资源限制:
sudo nano /etc/security/limits.d/mongodb.conf

内容:

mongod soft nproc 64000mongod hard nproc 64000mongod soft nofile 64000mongod hard nofile 64000
    启用MongoDB认证并创建管理员用户:
mongoshuse admindb.createUser({user: "admin",pwd : "yourAdminPassword",roles: [ { role: "userAdminAnyDatabase" , db: "admin" } ]})

通过以上步骤和最佳实践,您可以在Ubuntu上成功安装、配置、启动和验证MongoDB,并确保其高效和安全地运行。请根据您的实际需求调整配置,例如设置身份验证、指定数据存储路径等。


上一篇:Ubuntu中如何管理PostgreSQL用户
下一篇:如何在Ubuntu上监控Redis状态
Ubuntu
  • 英特尔与 Vertiv 合作开发液冷 AI 处理器
  • 英特尔第五代 Xeon CPU 来了:详细信息和行业反应
  • 由于云计算放缓引发扩张担忧,甲骨文股价暴跌
  • Web开发状况报告详细介绍可组合架构的优点
  • 如何使用 PowerShell 的 Get-Date Cmdlet 创建时间戳
  • 美光在数据中心需求增长后给出了强有力的预测
  • 2027服务器市场价值将接近1960亿美元
  • 生成式人工智能的下一步是什么?
  • 分享在外部存储上安装Ubuntu的5种方法技巧
  • 全球数据中心发展的关键考虑因素
  • 英特尔与 Vertiv 合作开发液冷 AI 处理器

    英特尔第五代 Xeon CPU 来了:详细信息和行业反应

    由于云计算放缓引发扩张担忧,甲骨文股价暴跌

    Web开发状况报告详细介绍可组合架构的优点

    如何使用 PowerShell 的 Get-Date Cmdlet 创建时间戳

    美光在数据中心需求增长后给出了强有力的预测

    2027服务器市场价值将接近1960亿美元

    生成式人工智能的下一步是什么?

    分享在外部存储上安装Ubuntu的5种方法技巧

    全球数据中心发展的关键考虑因素