ubuntu

Ubuntu MongoDB数据持久化配置解析

小樊
45
2025-10-25 05:11:48
栏目: 云计算

Ubuntu MongoDB数据持久化配置解析

一、数据持久化的核心配置文件

Ubuntu系统中,MongoDB的主配置文件为**/etc/mongod.conf**,所有与数据持久化相关的参数均在此文件中设置。修改配置后需重启服务(sudo systemctl restart mongod)使更改生效。

二、关键持久化配置项详解

1. 数据存储路径(storage.dbPath)

作用:指定MongoDB数据文件的本地存储目录(如WiredTiger引擎的 data files、索引文件等)。
配置示例

storage:
  dbPath: /var/lib/mongodb

注意事项

2. 日志功能启用(storage.journal.enabled)

作用:开启预写日志(Write-Ahead Logging, WAL),记录所有对数据的修改操作(如插入、更新、删除)。当日志写入磁盘后,才会向客户端返回“写入成功”响应。
配置示例

storage:
  journal:
    enabled: true

重要性

3. WiredTiger存储引擎配置(storage.wiredTiger)

作用:WiredTiger是MongoDB默认的存储引擎(从3.2版本起),提供文档级锁定事务支持数据压缩功能,显著提升性能与资源利用率。
配置示例

storage:
  wiredTiger:
    engineConfig:
      cacheSizeGB: 4  # 设置WiredTiger缓存大小(建议为物理内存的50%-75%)

关键参数

4. 写入关注(Write Concern)配置

作用:通过应用程序驱动设置,强制要求写操作在持久化到磁盘后再返回成功,避免因网络延迟或进程崩溃导致数据丢失。
配置方式

参数说明

三、辅助持久化措施

1. 复制集(Replication)

作用:通过多节点同步实现数据冗余,即使主节点宕机,副本节点可自动切换为主节点,确保数据持续可用。
配置步骤

2. 定期备份

作用:通过逻辑备份(mongodump/mongorestore)或物理备份(复制数据文件)保存数据副本,应对逻辑错误(如误删除)或物理灾难(如磁盘损坏)。
常用工具

#!/bin/bash
BACKUP_DIR="/backup/mongodb/$(date +%Y%m%d)"
DB_USER="admin"
DB_PASSWORD="password"
mongodump -u $DB_USER -p $DB_PASSWORD --archive="$BACKUP_DIR.dump"
find /backup/mongodb -name "*.dump" -mtime +7 -exec rm {} \;  # 保留7天备份

四、配置验证与维护

1. 检查配置生效

2. 日志与监控

0
看了该问题的人还看了