MongoDB 在 Linux 上默认使用 WiredTiger 存储引擎。如果你想要调整 MongoDB 的存储引擎,你需要重新安装 MongoDB,并在启动时指定所需的存储引擎。以下是如何在 Linux 上为 MongoDB 安装和配置不同存储引擎的步骤:
卸载当前的 MongoDB:
sudo systemctl stop mongod sudo apt-get --purge remove mongodb-org* sudo rm -r /var/log/mongodb sudo rm -r /var/lib/mongodb
安装所需的存储引擎。以安装 WiredTiger 存储引擎为例:
wget -qO - https://www.mongodb.org/static/pgp/server-4.4.asc | sudo apt-key add - echo "deb [ arch=amd64,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 sudo apt-get install -y mongodb-org
创建一个新的数据目录,并设置适当的权限:
sudo mkdir -p /var/lib/mongodb-wiredtiger sudo chown -R `id -un` /var/lib/mongodb-wiredtiger
创建一个新的 MongoDB 配置文件,例如 /etc/mongod.conf
,并添加以下内容以指定 WiredTiger 存储引擎:
storage: dbPath: /var/lib/mongodb-wiredtiger engine: wiredTiger wiredTiger: engineConfig: cacheSizeGB: 1
如果你想使用其他存储引擎,例如 MMAPv1,请将 engine
行更改为 engine: mmapv1
。
启动 MongoDB 服务:
sudo systemctl start mongod
验证存储引擎已更改:
mongo --eval 'db.runCommand({ connectionStatus: 1 })'
在输出的信息中,你应该能看到 storageEngine
字段,它显示了你选择的存储引擎。
请注意,更改存储引擎可能会导致数据丢失,因此在执行此操作之前,请确保备份所有重要数据。