注册

MongoDB整库备份与还原以及单个collection备份、恢复方法

MongoDB整库备份与还原

备份方法

  1. 打开命令行界面,进入MongoDB的bin文件夹下,输入以下命令备份整个数据库:

mongodump -h dbhost -d dbname -o dbbackup

  • dbhost:数据库地址,示例为localhost
  • dbname:需要备份的数据库名称
  • dbbackup:备份后的文件存放路径

  • 在dbbackup路径下可以发现备份的数据,以json和bson格式存储。

还原方法

  1. 打开命令行界面,进入MongoDB的bin文件夹下,输入以下命令还原整个数据库:

mongorestore -h dbhost -d dbname --drop dbbackup

  • dbhost:数据库地址,示例为localhost
  • dbname:需要还原的数据库名称
  • dbbackup:备份文件存放路径

  • 再次登录MongoDB时,可以发现数据库已经还原。

单个collection备份与恢复

备份方法

  1. 打开命令行界面,进入MongoDB的bin文件夹下,输入以下命令备份collection:

mongodump -h dbhost -d dbname -c collectionname -o dbbackup

  • dbhost:数据库地址,示例为localhost
  • dbname:需要备份的数据库名称
  • collectionname:需要备份的collection名称
  • dbbackup:备份文件存放路径

  • 在dbbackup路径下可以发现备份的数据,以json和bson格式存储。

还原方法

  1. 打开命令行界面,进入MongoDB的bin文件夹下,输入以下命令还原单个collection:

mongorestore -h dbhost -d dbname -c collectionname --drop dbbackup

  • dbhost:数据库地址,示例为localhost
  • dbname:需要还原的数据库名称
  • collectionname:需要还原的collection名称
  • dbbackup:备份文件存放路径

  • 再次登录MongoDB时,可以发现collection已经还原。

示例

假如我们需要备份MongoDB中的一个名为testdb的数据库,并还原到一个名为testdb_backup的数据库。

备份

  1. 打开命令行界面,进入MongoDB的bin文件夹下,输入以下命令备份整个数据库:

mongodump -h localhost -d testdb -o C:\backup

  1. 备份完成后,在C:\backup路径下可以发现备份的数据,以json和bson格式存储。

还原

  1. 打开命令行界面,进入MongoDB的bin文件夹下,输入以下命令还原整个数据库:

mongorestore -h localhost -d testdb_backup --drop C:\backup\testdb

  1. 再次登录MongoDB时,可以发现数据库已经还原。

如果需要备份单个collection,将以上命令中的db改为collection名称即可。