如何备份,还原和迁移MongoDB数据库

不言
发布: 2019-03-23 15:16:18
原创
3328 人浏览过

mongodump是mongodb提供的用于创建数据库备份的实用程序。这是一个非常有用的实用程序,可以考虑非常有效地为实时服务器数据库进行备份。对于数据库还原,需要使用mongorestore命令。

如何备份,还原和迁移MongoDB数据库

1、备份mongodb数据库(mongodump)

有多种备份MongoDB数据库的方法。使用mongodump命令进行所有数据库备份、单个集合备份或者单个数据库备份。

备份单个数据库

使用此命令仅备份单个数据库(名为mydb)。将在/backup/db/目录中创建备份。

$ mongodump --db mydb --out / backup / db /
登录后复制

-db - 要备份的数据库名称
-out - 数据库备份位置。这将创建具有数据库名称的文件夹。

可以为远程数据库连接备份指定主机,端口,用户名和密码,如下所示。

$ mongodump --host 10.0.1.7 --port 27017 --username admin --password somepassword --db mydb --out / backup / db /
登录后复制

备份所有数据库

要备份所有数据库,只需按以下命令运行即可。这里/ data / db /是你的mongodb数据目录的位置,/ backup / db是备份目录的位置。

$ mongodump --out / backup / db /
登录后复制

可以为远程数据库指定主机,端口。

备份单一集合

此命令将从数据库中备份单个集合。备份文件将在dump / mydb /目录中创建。

$ mongodump --collection mycollection --db mydb --out / backup / db /
登录后复制

2、使用mongorestore恢复MongoDB数据库

mongorestore是用于恢复mongodb数据库备份的命令行工具。这里/ data / db /是你的mongodb数据目录的位置,/ backup / db是备份目录的位置。

$ mongorestore --db mydb --drop / backup / db / mydb
登录后复制

-drop - 如果已经存在,将删除数据库。

只需将备份文件移动到远程服务器并在那里运行相同的命令即可恢复备份。

3、MongoDB备份Shell脚本

可以在调度程序中轻松安排以下脚本,以定期备份数据库。创建如下文件

$ vi /backup/mongo-backup.sh
登录后复制

将以下内容添加到文件中。相应地更新数据库主机名,数据库名称,用户名和密码。

#!/bin/sh
 
TODAY=`date +%d%b%Y`
BACKUP_DIR=/backup/db
 
mkdir -p ${BACKUP_DIR}/${TODAY}
 
mongodump -h <DATABASE_HOST> -d <DATABASE_NAME> -u <USERNAME> -p <PASSWRD> --out ${BACKUP_DIR}/${TODAY}/
登录后复制

现在在crontab中配置它以便每天运行。

0 2 * * * /backup/mongo-backup.sh
登录后复制

   本篇文章到这里就已经全部结束了,更多其他精彩内容可以关注PHP中文网的MySQL视频教程栏目!

以上是如何备份,还原和迁移MongoDB数据库的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
作者最新文章
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!