mongodump、mongorestore-创新互联

通常来说针对collection使用mongoexport导出,而Mongodump可以单表,也可以整库。同时mongoexport输出的JSON比Mongodump的BSON可读性更高,JSON文件可以直接进行读取操,操作拼接指令来insert还原数据。

创新互联公司IDC提供业务:重庆服务器托管,成都服务器租用,重庆服务器托管,重庆服务器租用等四川省内主机托管与主机租用业务;数据中心含:双线机房,BGP机房,电信机房,移动机房,联通机房。

--备份单个表(用户lych,密码abcde,导出的是lych_db库里的aaa collecion)
mongodump -u lych -p abcde --port 27017 --authenticationDatabase admin -d lych_db -c aaa -o /tmp/abc.bak

---备份单库则去掉上面的 -c aaa则可

----而备份所有库,则再去掉 -d lych_db

(--备份所有库推荐使用添加--oplog参数(基于某一时间点的快照),只能用于备份全部库时,单库和单表不适用:

mongodump -h 127.0.0.1 --port 80000 --oplog -o /tmpt/abc.bak (部分配置文件可以对bond_ip做了相应配置,需要注意)

--恢复时要加上--oplogReplay参数:
mongorestore -h 127.0.0.1 --port 80000 --oplogReplay /tmp)

--恢复单个库:
mongorestore -u xx -p xxx --port 80000 --authenticationDatabase admin -d xxx /tmp

--恢复所有库:
mongorestore -u superuser -p 123456 --port 80000 --authenticationDatabase admin /tmp/bak
(如果备份的时候加了--gzip参数,那么恢复的时候也要带上--gzip)

--恢复单表
mongorestore -u xxx -p xxx --authenticationDatabase admin -d xxx -c xx /xxx.bson

mongorestore默认是追加,--drop参数后,会将数据库数据清空后再导入,如果数据库备份后又新加入了数据,也会将新加的数据删除

----mongo在关闭时也可以备份,只需要找到data目录:
mongodump --dbpath /data/db

•mongodump导出的是bson格式,是二进制形式,不过可以使用mongo自带的bsondump命令查看里面的数据,而mongoexport导出的则是文本,可以是csv、json格式。
•JSON可读性强但体积较大,BSON则是二进制文件,体积小但几乎没有可读性。
•在一些mongodb版本之间,BSON格式可能会随版本不同而有所不同,所以不同版本之间用mongodump/mongorestore可能不会成功,具体要看版本之间的兼容性。当无法使用BSON进行跨版本的数据迁移的时候,使用JSON格式即mongoexport/mongoimport是一个可选项。
跨版本的mongodump/mongorestore个人并不推荐,实在要做请先检查文档看两个版本是否兼容(大部分时候是的)。
•JSON虽然具有较好的跨版本通用性,但其只保留了数据部分,不保留索引,账户等其他基础信息。使用时应该注意。

另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


当前名称:mongodump、mongorestore-创新互联
浏览路径:http://abwzjs.com/article/gidgd.html