MongoDB数据备份还原,及docker中MongoDB备份还原

MongoDB数据备份还原,及docker中MongoDB备份还原,第1张

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

mongodump命令可以通过参数指定导出的数据量级转存的服务器。

mongodump命令脚本语法如下:

参数说明:

其他参数参考:

2)示例:

如果没有设置账户密码,或者端口都是默认的27017,则可以省略参数。如:

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

1)语法:

mongorestore命令脚本语法如下:

参数:

2)示例:

例子,此时有一个mongo容器

方法一:

直接进入docker容器,一步一步还原。

还原一样,步骤复制本地到容器中,进入容器中,还原复制过来的备份文件。

方法二:

一步到位备份:

还原:

1、冷备份与恢复——创建数据文件的副本(前提是要停止MongoDB服务器),也就是直接copy

www.2cto.com

MongoDB将所有数据都存储在数据目录下,默认是/data/db/(Windows下是C:\data\db\),启动MongoDB时也可以用--dbpath指定我们自己设置的数据存储目录。

备份MongoDB数据:只要简单的创建数据存储目录的副本就可以了,直接copy一份。

恢复MongoDB数据:在MongoDB启动时用--dbpath指定数据存储目录副本位置。

在服务器运行的情况下直接copy是有风险的,可能copy出来时,数据已经遭到破坏,这种方式下创建数据目录的副本需要在关闭MongoDB服务器的前提下,数据目录中存储的就是关闭那一刻数据的快照,在服务器重新启动之前可以复制目录作为备份。

方法/步骤

在mongodb的官方上search mongodump没有相应的资料,自己就在shell命令行里面 :

/data/mongodb-linux-x86_64-1.6.0/bin/mongodump --help 了一把, 自己来测试了,测试总结如下:

备份本机mongodb到/tmp/bakup目录下面:[root@localhost csf]# /data/mongodb-linux-x86_64-1.6.0/bin/mongodump -h 192.168.0.39:10001 -d csf -o /backup/mongodb

将/tmp/backup 下面的文件导入数据库:[root@localhost csf]#/data/mongodb-linux-x86_64-1.6.0/bin/mongorestore -h 192.168.0.39:10001 -d csf -drop --directoryperdb /backup/mongodb/csf/

【注释】--drop参数,有此参数,则表示,先删除所有的记录,然后恢复。如无此参数,则恢复备份时候的数据,备份之后新增加的数据依然存在;/backup/mongodb则是备份文件存放路径


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/sjk/10000083.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-04
下一篇 2023-05-04

发表评论

登录后才能评论

评论列表(0条)

保存