视频1 视频21 视频41 视频61 视频文章1 视频文章21 视频文章41 视频文章61 推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37 推荐39 推荐41 推荐43 推荐45 推荐47 推荐49 关键词1 关键词101 关键词201 关键词301 关键词401 关键词501 关键词601 关键词701 关键词801 关键词901 关键词1001 关键词1101 关键词1201 关键词1301 关键词1401 关键词1501 关键词1601 关键词1701 关键词1801 关键词1901 视频扩展1 视频扩展6 视频扩展11 视频扩展16 文章1 文章201 文章401 文章601 文章801 文章1001 资讯1 资讯501 资讯1001 资讯1501 标签1 标签501 标签1001 关键词1 关键词501 关键词1001 关键词1501 专题2001
如何备份,还原和迁移MongoDB数据库
2020-11-09 08:38:54 责编:小采
文档
 mongodump是mongodb提供的用于创建数据库备份的实用程序。这是一个非常有用的实用程序,可以考虑非常有效地为实时服务器数据库进行备份。对于数据库还原,需要使用mongorestore命令。

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视频教程栏目!

下载本文
显示全文
专题