把mmapv1存储引擎存储的mongodb3.0数据库数据复制到WiredTiger存储引擎的mongodb3.2中

mongodb3.0在mmapv1的存储引擎基础上添加了一个新的存储引擎 WiredTiger。但是3.0的默认存储引擎依旧是mmapv1,因此我们项目之前也就用的默认方式。

但是mongodb更新实在太快,转眼间,从3.0直接跳到3.2,默认的存储引擎也改成了WiredTiger。据说这个引擎具有占用磁盘空间更小,占用内存空间更小,查询效率更高等一系列特点。

为了防患于未然,今天尝试了一下把3.0的数据复制到3.2中。由于以前都是用mongovue直接复制,但是新的存储引擎,mongovue连表都打不开,根本无法读取数据,因此只好在mongo shell中操作。

其中成功的操作步骤大致如下:
1、 把mmapv1存储引擎存储的mongodb3.0.5数据库的数据使用mongodump的方式备份出来:


2、把数据以mongorestore的方式恢复到以 WiredTiger存储引擎存储的mongodb3.2.7中:


注:两个数据库都开启了用户验证,也都是以默认的存储引擎方式启动。不同的是,3.0.5中用户验证使用的是手动修改后的 MONGODB-CR验证方式,而3.2.7中则是SCRAM-SHA-1默认的方式。
涂宗勋 CSDN认证博客专家 web安全 系统安全 安全架构
从事java开发,现居湖北武汉,有过支付、OA、CA、OAUTH2等工作经验,现从事车联网行业。
爱好分享,个人博客blog.tzxcode.cn,微信tuzongxun,qq1160569243,欢迎来撩。
已标记关键词 清除标记
©️2020 CSDN 皮肤主题: 成长之路 设计师:Amelia_0503 返回首页