Mongo03 备份与恢复

全栈 专栏收录该内容
7 篇文章 0 订阅

导出

使用mongoexport命令,将一个collection导出为JSON格式或CSV格式的文件。

从MongoDB4.2开始,mongoexport就不再随着MongoDB一起安装了,需要单独安装,各平台安装地址在这里

注意,Linux和macOS系统中,需要将工具拷贝到$PATH环境变量的目录,也就是mongod命令所在的目录,我的mac上地址是usr/local/mongodb/bin,这样才可以直接在命令行中使用

mongoexport -d dbname -c collectionname -o file --type json/csv -f field

参数说明:

  • -d,数据库名
  • -c,collection名
  • -o,输出的路径和文件名
  • --type,输出的格式,默认为JSON
  • -f,输出的字段,如果--type为CSV,需要加上-f 字段名

例子:

sudo mongoexport -d lucky-test -c test_income -o a.json

导入

使用mongoimport进行导入,上面安装mongoexport时,就安装了mongoimport命令,如果没有安装需要按照上面的步骤进行安装

mongoimport -d dbname -c collectionname --file filename --headerline --type json/csv -f field

参数说明:

  • -d,数据库名
  • -c,collection名
  • --file,要导入的文件
  • --type,输出的格式,默认为JSON
  • -f:导入的字段名
  • --headerline:如果导入的格式是csv,则可以使用第一行的标题作为导入的字段

备份

使用mongodump备份(需要与mongoexport同样进行安装)

mongodump -h host -d dbname -o directory
mongodump -h IP --port 端口 -u 用户名 -p 密码 -d 数据库 -o 文件存在路径
# mongodump -d test -o /data/

参数说明:

  • h:MongDB所在服务器地址,如:127.0.0.1,也可以指定端口号:127.0.0.1:27017
  • -d:需要备份的数据库名称,如db_test,如果想导出所有数据库,可以去掉-d
  • -o:备份的数据存放位置,如:~\dump,当然该目录需要提前建立,在备份完成后,系统自动在dump目录下建立一个db_test目录,这个目录里面存放该数据库实例的备份数据

恢复

使用mongorestore备份(需要与mongoexport同样进行安装)

mongorestore -h host -d dbname --directoryperdb dbdirectory
# mongorestore --host=10.0.0.25 --port=27017 --db ztjy --dir=ztjy/

参数说明:

  • -h:MongoDB所在服务器地址
  • -d:需要恢复的数据库名称,如:db_test,当然这个名称可以不同于备份的时候,比如new_db
  • --directoryperdb:备份数据文件所在位置,如:~\dump\db_test(这里之所以要加db_test子目录,从mongoretorehelp中的--directoryperdb说明了,“每一个db在一个单独的目录”。)

参考

  • 0
    点赞
  • 0
    评论
  • 0
    收藏
  • 一键三连
    一键三连
  • 扫一扫,分享海报

©️2021 CSDN 皮肤主题: 编程工作室 设计师:CSDN官方博客 返回首页
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值