# mongodb-备份和还原数据

# MongoDB数据备份

使用mongodump命令来备份MongoDB数据。该命令可以导出所有数据到指定目录中。

# 语法

mongodump命令脚本语法如下:

mongodump -h <hostname><:port> -d dbname -o dbdirectory
1
  • -h:

    MongoDB 所在服务器地址,例如:127.0.0.1,当然也可以指定端口号:127.0.0.1:27017

  • -d:

    需要备份的数据库实例,例如:database

  • -o:

    备份的数据存放位置,例如:d:\data\backup,当然该目录需要提前建立,在备份完成后,系统自动在backup目录下建立一个database目录,这个目录里面存放该数据库实例的备份数据。

# 实例

  • 备份所有数据到bin/dump/ 目录中。
mongodump
1
  • 备份指定数据库到指定位置
mongodump -h localhost -d heliu -o D:\data

mongodump -h 192.168.1.1 -u heliu -p 123456 -d heliu -o D:\database\mongodb
1
2
3

# MongoDB数据恢复

mongodb使用 mongorestore 命令来恢复备份的数据。

# 语法

mongorestore命令脚本语法如下:

mongorestore -h <hostname><:port> -d dbname path

1
2
  • --host :port, -h :port:

    MongoDB所在服务器地址,默认为: localhost:27017

  • --db , -d :

    需要恢复的数据库实例,例如:test,当然这个名称也可以和备份时候的不一样,比如test2

  • --drop:

    恢复的时候,先删除当前数据,然后恢复备份的数据。就是说,恢复后,备份后添加修改的数据都会被删除,慎用哦!

  • path:

    mongorestore 最后的一个参数,设置备份数据所在位置,例如:c:\data\dump\test。

    你不能同时指定 path 和 --dir 选项,--dir也可以设置备份目录。

  • --dir:

    指定备份的目录

    你不能同时指定 path 和 --dir 选项。

# 实例

  • 还原指定数据库
mongorestore -h localhost:27017 -d heliu D:\data\heliu
1

# 注意事项

mongodb在4.4版本之前时mongodump、mongorestore功能是集成在mongodb中的。但在4.4版以后mongodb对功能进行拆分,将数据库备份还原功能拆分成独立工具。

工具官方下载地址 (opens new window)

image-20220224083729110

根据自己的系统下载对应版本工具

上次更新时间: 2024年2月12日星期一晚上7点28分