mongodb3.x - mongodb数据迁移(mongorestore,mongoimport)出错
巴扎黑
巴扎黑 2017-05-02 09:23:08
0
2
852

我现在想将本地的Mongo数据(50GB)迁移到阿里云上(内存1G)。本地版本是v2.4.9,服务器上是v3.2.11

  • 但是我使用mongodump将数据导出,传到阿里云上后用mongorestore恢复,恢复到1.8%左右就会出错。应该是内存不足引起的。
    错误提示Failed: sof.test: error restoring from /root/sof/test.bson.gz: insertion error: EOF

  • 我同时测试了mongoexport/mongoimport命令 都是同样的错误。

  • 我又进行了再次测试:我本地用另一台电脑装了mongo v3.2版本的,将本地v2.4.9机子上的数据导出来,传到阿里云服务器(mongo v3.2.11)上,mongorestore出现同样的错误。

我在阿里云上部署用mongo v2.x版本的话,就可以将数据恢复成功。

所以可能是 v2到v3 之间的问题,也可能是v3本身的问题?但是感觉后者可能性不大。
求问,如何解决?

巴扎黑
巴扎黑

모든 응답(2)
洪涛

방금 시도했는데 2.6.6에서 덤프했다가 2.6.10과 3.2.11에서 성공적으로 복원했습니다. 버전 문제가 아니어야 하며 버전은 모두 이전 버전과 호환됩니다.
아마도 데이터 문제일까요?
그렇게 큰 데이터가 없어서 테스트하기가 어렵네요. 더 작은 시계로 바꿔보세요.

巴扎黑

문서를 주의 깊게 읽으십시오. 버전 간 업그레이드는 명시적으로 금지되어 있습니다. 올바른 접근 방식은 버전별로 업그레이드하는 것입니다. 두 가지 옵션:

로컬에서 버전별로 3.2 버전으로 업그레이드한 후 원격으로 내보내기

상황은 다음과 같아야 합니다. 2.4.9 -> 2.6.x -> 3.0.x -> 3.2.11
마지막으로 3.2.11에서 내보낸 데이터를 mongorestore로 가져옵니다.

2.4.9를 원격으로 설치하고 3.2.11로 업그레이드

과정 역시 위와 같은 과정을 따릅니다.
최종적으로 올바른 결과를 얻으려면 각 버전의 업그레이드를 해당 버전의 업그레이드 노트에 따라 수행해야 합니다.

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!