mongodb系列~mongodb数据迁移

本文介绍了MongoDB中数据迁移的具体命令,包括数据导出、导入、表备份及用户创建等操作。此外还讨论了BSON与JSON格式的优缺点,并提醒在不同版本间迁移时应注意的事项。

一 简介:今天来聊聊mongo的数据迁移
二 迁移
   1 具体迁移命令
   nohup mongodump --port --db dbname --collection tablename --query '{"sentTime": { $gt: "2018-07-13 00:00:00" } }' -o /home/data
   2 具体导入命令
   db导入
   mongorestore --port 40000 --db dbname /home/data/dbname
   collcection 和 data导入
   mongorestore --port 40000 --db dbname --collection tablename /home/data/dbname/table.json
  3 表备份命令
  db.table.renameCollection("table_20180813BACK");
  db.table_20180813.renameCollection("table");
 4 创建相应用户
   1 切换到相应库下
   2 执行创建命令
   use db
   db.createUser(
   {
   user:"user",
   pwd:"password",
   roles:[{role:"readWrite",db:"dbname"}]
    }
    )
  3 进行验证
   mongo --port -u'user' -p'password' --authenticationDatabase(有的版本可以不加) db
 5 进行查看数据有效性
三 备后注意
 1 mongodump导出的是bson格式,是二进制形式,不过可以使用mongo自带的bsondump命令查看里面的数据,而mongoexport导出的则是文本,可以是csv、json格式。
 2 JSON可读性强但体积较大,BSON则是二进制文件,体积小但对人类几乎没有可读性。
 3 在一些mongodb版本之间,BSON格式可能会随版本不同而有所不同,所以不同版本之间用mongodump/mongorestore可能不会成功,具体要看版本之间的兼容性。当无法使用BSON进行跨版本的数据迁移的时候,使用JSON格式即mongoexport/mongoimport是一个可选项。跨版本的     mongodump/mongorestore个人并不推荐,实在要做请先检查文档看两个版本是否兼容(大部分时候是的)。
4 JSON虽然具有较好的跨版本通用性,但其只保留了数据部分,不保留索引,账户等其他基础信息。使用时应该注意,导入导出后重新建立这些信息

转载于:https://www.cnblogs.com/danhuangpai/p/9239418.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值