首页主机资讯MongoDB配置CentOS需要注意哪些点

MongoDB配置CentOS需要注意哪些点

时间2025-10-13 11:30:04发布访客分类主机资讯浏览1387
导读:1. 安装官方YUM仓库 在CentOS上安装MongoDB前,需添加官方YUM仓库以确保获取正确的软件包和更新。创建/etc/yum.repos.d/mongodb-org.repo文件,内容根据MongoDB版本调整(如6.0版本):...

1. 安装官方YUM仓库
在CentOS上安装MongoDB前,需添加官方YUM仓库以确保获取正确的软件包和更新。创建/etc/yum.repos.d/mongodb-org.repo文件,内容根据MongoDB版本调整(如6.0版本):

[mongodb-org-6.0]
name=MongoDB Repository
baseurl=https://repo.mongodb.org/yum/redhat/$releasever/mongodb-org/6.0/x86_64/
gpgcheck=1
enabled=1
gpgkey=https://www.mongodb.org/static/pgp/server-6.0.asc

此步骤避免了从默认仓库安装可能存在兼容性问题的MongoDB版本。

2. 配置文件路径与关键参数设置
MongoDB的主配置文件位于/etc/mongod.conf,需重点调整以下参数:

  • 数据与日志路径:设置storage.dbPath(如/var/lib/mongo)指定数据存储目录,systemLog.path(如/var/log/mongodb/mongod.log)指定日志文件路径,并启用日志追加模式(systemLog.logAppend: true)。
  • 网络绑定net.bindIp默认为127.0.0.1(仅本地访问),若需远程访问,可改为0.0.0.0(允许所有IP)或指定具体IP(如192.168.1.100);net.port默认为27017,可根据需求修改。
  • 进程管理processManagement.fork: true让MongoDB以守护进程模式运行(后台服务)。
    这些配置需通过sudo vi /etc/mongod.conf编辑,修改后重启服务生效。

3. 安全配置(必做)

  • 启用身份验证:在security section添加authorization: enabled,强制用户连接时需提供用户名和密码,防止未授权访问。修改后需重启MongoDB服务。
  • 创建管理员用户:连接MongoDB shell(mongo),切换至admin数据库,执行以下命令创建管理员账户(示例):
    use admin
    db.createUser({
    
      user: "admin",
      pwd: "your_secure_password",
      roles: ["root"]  // root角色拥有所有数据库管理权限
    }
        )
    
  • 限制远程访问:若bindIp设置为0.0.0.0,需通过防火墙限制仅信任IP可访问MongoDB端口(默认27017),降低被扫描攻击的风险。

4. 防火墙配置
若系统启用了firewalld,需开放MongoDB端口以允许远程连接:

sudo firewall-cmd --zone=public --add-port=27017/tcp --permanent  # 永久添加端口
sudo firewall-cmd --reload  # 重新加载防火墙规则

若使用iptables,可执行sudo iptables -A INPUT -p tcp --dport 27017 -j ACCEPT并保存规则。

5. 性能优化配置

  • WiredTiger缓存大小:在storage.wiredTiger.engineConfig下设置cacheSizeGB,建议值为物理内存的50%(如8GB内存可设为4GB),避免占用过多内存导致系统卡顿。
  • OPLOG大小:对于副本集,replication.oplogSizeMB需根据数据写入量调整(默认为磁盘空间的5%),确保有足够空间存储操作日志(用于主从同步)。
  • 日志轮转:启用systemLog.logRotate: reopen并结合系统日志轮转工具(如logrotate),防止日志文件过大占用磁盘空间。

6. SELinux配置(若启用)
若系统启用了SELinux(默认启用),需调整策略允许MongoDB访问数据目录:

sudo semanage fcontext -a -t mongod_var_lib_t "/var/lib/mongo(/.*)?"  # 设置SELinux上下文
sudo restorecon -Rv /var/lib/mongo  # 恢复上下文

或临时设置为宽松模式(测试环境可用):编辑/etc/selinux/config,将SELINUX=enforcing改为SELINUX=permissive,然后重启系统。

7. 开机自启与状态检查
配置完成后,启动MongoDB服务并设置开机自启:

sudo systemctl start mongod  # 启动服务
sudo systemctl enable mongod  # 设置开机自启
sudo systemctl status mongod  # 检查服务状态(应为active(running))

通过mongo --eval 'db.version()'命令可验证MongoDB是否正常运行。

声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!


若转载请注明出处: MongoDB配置CentOS需要注意哪些点
本文地址: https://pptw.com/jishu/724543.html
centos下oracle内存如何设置 怎样在CentOS上监控MongoDB

游客 回复需填写必要信息