mongodb数据库的备份还原

在使用过程mongodb数据库的时候我们经常会涉及到备份和还原的操作,mongodb数据库提供 对应的工具来进行相关的操作。
中文文档地址:https://www.mongodb.org.cn/manual

一、数据库备份

备份mongodb数据库使用到的工具为 mongodump ,一般在数据库安装的bin目录下。

下面我们试着在本机备份一个数据库,然后在后面还原一下。

备份语法为: mongodump -h dbhost -d dbname -o dbdirectory

# 参数:-d [dbname] 备份的数据库名称,-o [out] 输出的位置
# 更多参数可查看官方文档:https://www.mongodb.org.cn/manual/193.html

# 本地备份不用指定 host 和 name
# 例如:我们现在拥有数据库 wlt ,我们需要把wlt数据库备份到/home/mongodb/backup目录下

#(1)创建备份文件夹,切换到/home/mongodb,我们需要打包backup目录,便于下载和保存
mkdir -p /home/mongodb/backup
cd /home/mongodb

#(2)执行备份数据库命令,mongodump是按照文档来备份的,每个集合产生2个文件
mongodump -d wlt -o /home/mongodb/backup

#(3)把备份打包压缩
tar zcvPf mongodb-wlt-2020042109360112.tar.gz /home/mongodb/backup

tip: 如果想备份整个数据库,不指定数据库的名称即可。

二、数据库还原

备份的数据库可在任意一台mongodb数据库上进行,有时我们可使用他来同步数据库,迁移数据库等操作。

还原数据库的语法为:mongorestore -h dbhost -d dbname --directoryperdb dbdirectory

我们这里把上面备份的数据库还原一下。

# 参数:
# -d dbname 数据库的名称,可以和备份时的数据库名称不一样,不存在会自动创建数据库
# --directoryperdb dbdirectory 指定还原数据库文件夹的位置
# --drop 删除已经存在的数据,再还原

#(1)创建还原件夹
mkdir -p /home/mongodb/backup

#(2)在任意位置解压备份文件
tar zxvf mongodb-wlt-2020042109360112.tar.gz -C /

#(3)还原数据库,还原的数据库名称为wlt_backup
mongorestore -d wlt_backup --directoryperdb /home/mongodb/backup/wlt --drop

猜你喜欢

转载自www.cnblogs.com/lixingwu/p/12742771.html