阿毛
It's me !
想你所想

MongoDB 数据导出及导入

记录一下,如何将MongoDB中的某个库数据导入到另外一个主机的MongoDB库中。

MongoDB自身支持数据的导入和导出,不需要额外组件,安装了MongoDB即可。在 MongoDB目录下存在mongoexport.exemongoimport.exe文件 ,这两个文件分别实现导出和导入。

数据导出

mongoexport -h dbhost -u “username” -p “password” -d dbName -c collectionName --type json/csv -f fields -o filename

参数说明:

  • -h:需要数据导出的MongoDB服务地址,可指定端口号,如不指定,则默认MongoDB端口号。不指定-h,则默认127.0.0.1。
  • -u:MongoDB 用户名,如果开启了权限认证的话。
  • -p:MongoDB 密码,如果开启了权限认证的话。
  • -d:需要数据导出的 MongoDB 某个库,库名。
  • -c:集合名,MongoDB某个库的“某张表名”。
  • –type:将数据以哪种格式导出,支持json和csv。不指定默认json
  • -f:需要导出具体集合(“表”)中的哪个字段的数据。不指定默认集合全部字段。
  • -o:导出至哪个文件中,即导出后的文件名。数据导出,自动创建生成。

这里,我需要导出本地MongoDB中mydb库(没有开启认证)中的test集合的所有数据,导出为根下的test.json文件,则:mongoexport -d mydb -c test --type json -o /test.json

数据导入

mongoimport -h dbhost -u “username” -p “password” -d dbName -c collectionName --type json/csv -f fields --file filename
  • -h:需要数据导入的MongoDB服务地址,可指定端口号,如不指定,则默认MongoDB端口号。不指定-h,则默认127.0.0.1。
  • -u:MongoDB 用户名,如果开启了权限认证的话。
  • -p:MongoDB 密码,如果开启了权限认证的话。
  • -d:需要数据导入至MongoDB 某个库,库名。
  • -c:集合名,MongoDB某个库的“某张表名”。
  • –type:将数据以哪种格式导入解析,支持json和csv。不指定默认json
  • -f:需要导入具体集合(“表”)中的哪个字段的数据。不指定默认集合全部字段。
  • –file:导入哪个文件,即从哪个文件导入解析数据。

这里,我需要将“/test.json”数据导入至本地MongoDB的mydb库(未开启权限认证)中的test集合,则:mongoimport -d mydb -c test --type json --file /test.json


当然,导入导出命令,还有其他参数,可以进行更细致的操作,具体可参考官方文档。

humh

文章作者

站长本人,一个憨批!

发表回复

textsms
account_circle
email

想你所想

MongoDB 数据导出及导入
记录一下,如何将MongoDB中的某个库数据导入到另外一个主机的MongoDB库中。 MongoDB自身支持数据的导入和导出,不需要额外组件,安装了MongoDB即可。在 MongoDB目录下存在mongoexport.…
扫描二维码继续阅读
2020-05-07