我无法将wiredTiger
其用作服务MongoDB
。
然后,我按照以下指南一步一步地进步;
http://docs.mongodb.org/manual/release-notes/3.0-upgrade/
步骤 1:启动 3.0 mongod。好的,我做到了。
步骤 2:使用 mongodump 导出数据。好的
步骤 3:为 WiredTiger 创建数据目录。好的 - 用户权限已调整。
步骤 4:使用 WiredTiger 重新启动 mongod。好的
mongod --storageEngine wiredTiger --dbpath <newWiredTigerDBPath>
是的,mongod
成功了。但是它Step-5
说“使用 mongorestore 上传导出的数据”。但是我的控制台很忙,并说“正在等待端口 27017 上的连接”,因为最后一个命令不包括像 这样的服务service mongod start
。
然后我尝试编辑我的/etc/mongod.conf
文件以将其作为服务运行。但我做不到。我添加了 wiredTiger director 作为 dbpath。但我想我需要编辑/etc/init/mongod.conf
文件。因为它包含一些授予 db 目录权限的代码。
我花了 8 个小时才找到相关文档。我想问一下:
如何在 MongoDB 上使用 wiredTiger?
我想知道是否有人在 MongoDB 上使用 wiredTiger?
安慰
答案1
我无法使用 wiredTiger 升级 MongoDB。但是,今天我卸载了 MongoDB 2.6,然后安装了 MongoDB 3.0.3。安装后,我立即storageEngine=wiredTiger
在 mongod.conf 文件顶部添加了它。然后我输入sudo service mongod start
命令,最终就可以了。
编辑:
如果当前版本支持wiredTiger;
- 使用获取当前数据库的备份mongodump命令
sudo service mongod stop
使用命令停止 mongod 服务- 添加文本作为文件
storageEngine=wiredTiger
的第一行mongod.conf
- 删除所有文件
/var/lib/mongodb
(或/data/db
文件夹,如果使用)
[这很重要。因为 MongoDB 无法将当前的 MMAP db 文件转换为 wiredTiger 格式] sudo service mongod start
使用命令启动mongod服务- 使用备份恢复数据库mongorestore命令
- wiredTiger 正在被使用...