将MongoDB的存储引擎迁移到WiredTiger
我听说可以减少磁盘使用量。
假设您已经使用Homebrew安装了MongoDB 3及其以上版本。
1. 对数据库文件进行备份。
复制 -r /usr/local/var/mongodb。
只是为了保险起见,不是必需的。
2. 导出现有的数据库
使用mongodump命令,将数据备份至mongodb_dump目录。
3. 停止服务
运行以下命令卸载 homebrew.mxcl.mongodb.plist 文件:
launchctl unload ~/Library/LaunchAgents/homebrew.mxcl.mongodb.plist
删除DB文件
删除 /usr/local/var/mongodb/ 中的所有文件和文件夹
5. 修改mongod.conf。
将引擎更改为WiredTiger。为了降低磁盘空间,这次将日志设为false。
$ cat /usr/local/etc/mongod.conf
storage:
dbPath: /usr/local/var/mongodb
engine: wiredTiger
journal:
enabled: false
systemLog:
destination: file
path: /usr/local/var/log/mongodb/mongo.log
logAppend: true
net:
bindIp: 127.0.0.1
6. 创办服务
加载~/Library/LaunchAgents/homebrew.mxcl.mongodb.plist文件后启动launchctl。
7. 将数据库写回去
mongorestore 是一个用于将备份数据恢复到 MongoDB 数据库的命令。
以上です。ディスクの使用量が当社比で95%減少し、非常に満足しています。
参考这个链接:http://docs.mongodb.org/manual/release-notes/3.0-upgrade/