阅读量:47
MongoDB配置文件在Linux中的设置步骤
1. 定位MongoDB配置文件
Linux系统中,MongoDB的默认配置文件路径为**/etc/mongod.conf**(多数发行版如Ubuntu、CentOS均采用此路径)。若未找到,可通过以下命令全局搜索:
sudo find / -name "mongod.conf" 2>/dev/null
2. 编辑配置文件
使用文本编辑器(如vim、nano)以管理员权限打开配置文件:
sudo vim /etc/mongod.conf
配置文件采用YAML格式(注意缩进需用空格,避免Tab键),以下是关键配置项说明及示例:
核心配置项
- 数据存储路径:指定MongoDB数据文件的存储位置(需提前创建目录并赋权)。
storage: dbPath: /var/lib/mongodb # 默认路径,可修改为其他目录(如/data/mongodb) journal: enabled: true # 启用日志功能(确保数据持久性,建议开启) - 日志设置:配置日志输出的目标路径、追加模式及级别。
systemLog: destination: file # 日志输出到文件 logAppend: true # 追加日志(避免重启时覆盖旧日志) path: /var/log/mongodb/mongod.log # 日志文件路径(需提前创建目录) verbosity: 1 # 日志级别(0-5,1为默认,数值越大输出越详细) - 网络配置:设置MongoDB监听的IP地址和端口。
net: port: 27017 # 默认端口(可修改,如27018) bindIp: 127.0.0.1,192.168.1.100 # 绑定IP(127.0.0.1仅本地访问;0.0.0.0允许所有IP,需注意安全) - 安全配置:启用认证以保护数据库访问(必选)。
security: authorization: enabled # 开启用户认证(需提前创建管理员账号) # keyFile: /etc/mongodb/keyfile # 集群节点间身份验证(可选,用于副本集/分片) - 副本集配置(可选):若需搭建高可用副本集,需指定复制集名称。
replication: replSetName: myReplSet # 副本集名称(所有节点需一致)
3. 创建必要的目录并赋权
确保配置文件中指定的dbPath和logpath目录存在,且属于mongodb用户(MongoDB默认运行用户):
# 创建数据目录和日志目录
sudo mkdir -p /var/lib/mongodb /var/log/mongodb
# 赋权给mongodb用户(若用户不存在,先创建:sudo useradd -r -s /bin/false mongodb)
sudo chown -R mongodb:mongodb /var/lib/mongodb /var/log/mongodb
4. 重启MongoDB服务使配置生效
修改配置文件后,需重启MongoDB服务:
sudo systemctl restart mongod
验证服务状态(确保无报错):
sudo systemctl status mongod
5. 验证配置是否生效
- 检查端口监听:确认MongoDB是否在指定端口运行。
输出应包含ss -tulnp | grep mongod0.0.0.0:27017(或你设置的端口)。 - 连接数据库测试:使用
mongo命令连接(本地无需密码,远程需指定IP和认证)。
连接后执行mongo --host 127.0.0.1 --port 27017db.runCommand({ connectionStatus: 1 }),查看authenticated字段是否为false(未认证状态,需进一步创建用户)。
6. 常见配置优化(可选)
- 调整WiredTiger缓存大小:限制MongoDB使用的内存(避免占用过多系统资源)。
storage: wiredTiger: engineConfig: cacheSizeGB: 2 # 设置缓存大小为2GB(根据服务器内存调整) - 禁用透明大页(THP):提升数据库性能(需在系统层面设置)。
echo never | sudo tee /sys/kernel/mm/transparent_hugepage/enabled echo never | sudo tee /sys/kernel/mm/transparent_hugepage/defrag - 增加最大连接数:应对高并发场景。
net: maxIncomingConnections: 65535 # 默认16384,可根据需求调整
通过以上步骤,即可完成MongoDB在Linux系统中的配置文件设置。修改配置后务必重启服务,确保更改生效。