把mmapv1存儲引擎存儲的mongodb3.0數據庫數據復制到WiredTiger存儲引擎的mongodb3.2中
來源:程序員人生 發布時間:2016-07-18 08:33:38 閱讀次數:3687次
mongodb3.0在mmapv1的存儲引擎基礎上添加了1個新的存儲引擎WiredTiger。但是3.0的默許存儲引擎照舊是mmapv1,因此我們項目之前也就用的默許方式。
但是mongodb更新實在太快,轉眼間,從3.0直接跳到3.2,默許的存儲引擎也改成了WiredTiger。聽說這個引擎具有占用磁盤空間更小,占用內存空間更小,查詢效力更高等1系列特點。
為了防患于未然,今天嘗試了1下把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⑴默許的方式。
生活不易,碼農辛苦
如果您覺得本網站對您的學習有所幫助,可以手機掃描二維碼進行捐贈