这篇文章主要介绍了备份、还原和迁移MongoDB数据库的方法是什么,具有一定借鉴价值,需要的朋友可以参考下。希望大家阅读完这篇文章后大有收获。下面让小编带着大家一起了解一下。
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
感谢你能够认真阅读完这篇文章,希望小编分享备份、还原和迁移MongoDB数据库的方法是什么内容对大家有帮助,同时也希望大家多多支持亿速云,关注亿速云行业资讯频道,遇到问题就找亿速云,详细的解决方法等着你来学习!