如果我想对MongoDB中的所有数据库进行通用备份,那么我需要做的就是:
$ mongodump
如果我想恢复最新的数据库备份,我只需要:
$ mongorestore
- mongodump的备份存储在哪里?
- 如何指定特定的dump以恢复所有数据库?
如果我想对MongoDB中的所有数据库进行通用备份,那么我需要做的就是:
$ mongodump
如果我想恢复最新的数据库备份,我只需要:
$ mongorestore
恢复全部
mongorestore --host=<host> --port=<port> --username=<username> --authenticationDatabase=<authenticationdatabase> --nsInclude "*.*" <path to dump>
备份全部
mongodump --ssl --host <domain> --port <port> -p <password> --authenticationDatabase <authenticationdatabase> -u <username> -p <password> --out <dir path>
如果您想备份数据库,请使用以下命令:
mongodump --ssl --host <domain> --port <port> -p <password> --authenticationDatabase <authenticationdatabase> -u <username> -p <password> --out <dir path>
如果数据库启用了SSL,请包括--ssl
标志。
如果不包括--out
,mongodump
将创建一个“/dump”目录。
在转储或指定的备份目录中,您将找到以您的数据库名称命名的目录,在每个目录中,您将找到备份文件,对于每个集合,您将找到一个“.bson”和一个“.metadata.json”文件。
要恢复所有数据库,请使用:
mongorestore --ssl --host=<host> --port=<port> --username=<username> --authenticationDatabase=<authenticationdatabase> --nsInclude "*.*" <path to dump>
--ssl
标记,如果没有,请删除它。
--nsInclude
标记告诉 mongorestore
您要还原哪些数据库或集合。--nsInclude=test.users
这将备份数据库测试中用户集合的数据,因此如果转储路径不是该特定数据库的users.bson路径,则会失败。
要包括所有数据库和所有集合,请使用--nsInclude=*.*
或--nsInclude *.*
,然后定义备份中所有集合目录的路径。