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
字段,它顯示了你選擇的存儲引擎。
請注意,更改存儲引擎可能會導致數據丟失,因此在執行此操作之前,請確保備份所有重要數據。