备份与恢复攻略——MongoDB
-
目录
任何数据库都需要数据备份、恢复处理,目的是为了进一步提高数据的安全。这也是MongoDB数据库技术人员需要关心的问题。 - 可以通过mongodump、mongoexport进行备份。
- 使用mongorestore 命令来恢复备份的数据。
数据库备份
- 利用MongoDB自带的Mongodump共苦可任意实现指定数据库备份,也可以通过mongoexport工具实现指定集合备份。
- 分为:整个数据库备份及恢复和集合备份及恢复
1. 首先检查需要备份的数据库情况
show dbs
2. 使用Mongodump工具实施数据库备份
mongodump -h dbhost -d dbname -o dbdirectory
mongodump -h localhost:27017 -d zuoye -o "C:\Users\Desktop\备份"
-h dbhost,需要备份数据库所在的位置,如本地,可忽略;如远程:IP:PORT指定
-d dbname,需要备份数据库的名称
-o dbdirectory,备份数据库临时存放的位置,确保位置存在
3. 使用Mongorestore工具恢复备份数据
mongorestore -h <hostname><:port> -d dbname <path>
mongorestore -h localhost:27017 -d zuo "C:\Users\Desktop\备份"
-h <hostnameport><:port>:需要恢复的节点的服务器地址,默认为: localhost:27017
-d dname :需要恢复的数据库名称,例如:zuoye,当然这个名称也可以和备份时候的不一样,比如zuo
<path>:备份文件所在的文件路径
集合备份及恢复过程 (数据的导入导出操作)
可以通过MongoDB自带的mongoexport、mongoimport工具,实现指定集合数据的备份及恢复。
Mongoexport为导出指定数据库集合工具,其导出数据文件格式为JSON或CSV,导出文件扩展名可以指定为.json或.csv。
Mongoexport -h dbhost -d dbname –c collectionname -o dbdirectory
例如:导出 zuo数据库里的 shuju 集合 用my.json格式表示
>mongoexport -h localhost:27017 -d zuo -c shuju -o "C:\Users\锦樽\Desktop\备份\集合\my.json"
Mongoimport为导入指定数据库集合工具,其导入数据文件扩展名可以指定为.json或.csv。
Mongoimport -d dbname –c collectionname -type csv –headerline --file <path>
例如:将导出shuju集合,导入到test数据库中,集合名称为mycol
>mongoimport -d test -c mycol --file "C:\Users\锦樽\Desktop\备份\集合\my.json"