MongoDB数据迁移

需求:将某台Linux上的MongoDB数据库迁移到另一台Linux中
步骤:导出mongoexport、导入mongoimport

导出集合

MongoDB中的mongoexport可将集合导出为JSON或CSV格式的文件,指的注意的CSV文件对于大部分的关系型数据库而言是支持的。

$ mongoexport -d db -c collection -o outfile --type json/csv -f fields
-h, --host 远程连接的数据库地址,默认连接本地Mongo数据库。
--port 远程连接的数据库的端口,默认为27017.
-u, --username 连接远程数据库的账户,若数据库设置了认证,需指定账户。
-p, --password 连接远程数据库账户对应的密码
--authenticationDatabase 认证的数据库
-d, --db 数据库名称
-c, --collection 集合名称
-o, --out 导出的文件名
--type 导出的文件格式,默认为JSON,可选CSV、JSON。
-f, --fields 导出的字段,多字段以逗号分隔,当输出格式为CSV是必须指定输出的字段,CSV大部分关系型数据库都支持。
-q, --query 查询条件
--skip 跳过指定数量的数据
--limit 读取指定数量的数据记录
--sort 对数据进行排序,可指定排序的字段,使用1为升序-1为降序,如 sort({key:1})。

例如:指定查询条件导出bike集合数据为CSV

$ mongoexport -p 27030 -u sa -p sa -d map -c bike -f id,lat,lng,created_at,source -o bike.csv --query='{"source":"ofo"}' --limit=1
# 导出集合
$ mongoexport --host 127.0.0.1 --port 27017 --username sa --password sa --authenticationDatabase game --db game --collection ap_user --type json --out ./ap_user.json
# 简化方式
$ mongoexport -d game -c tf_game -o ./tf_game.json

导入集合

# 导入集合
$ mongoimport --host 127.0.0.1 --port 27017 --username sa --password sa --authenticationDatabase game --db game --collection ap_user --file ./tf_game.json 
    原文作者:JunChow520
    原文地址: https://www.jianshu.com/p/9baa0b801469
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞