MongoDB数据库的备份和还原

备份数据库

语法

mongodump -h -port -u -p -d -o

语法说明

-h   host      服务器IP地址,默认本机
-port          端口,默认27017
-u   user      账号
-p   pwd       密码
-d   database  数据库,默认导出全部
-o   open      备份到指定目录下

备份所有数据库

重点:突然发现我原来下载的数据库文件缺失很多工具,需要单独下载
下载工具集
https://www.mongodb.com/try/download/database-tools
在这里插入图片描述
将下载的工具集文件bin里的工具都复制到原先的mongodb的bin目录下,执行下面语句就没问题了

mongodump -u admin -p admin888 -o E:\mongodb\bak

在这里插入图片描述

备份指定数据库

重点:这里不能用超级管理员权限,会报错
对要备份的数据库添加readwrite权限
添加安全权限教程
添加失败分析
在这里插入图片描述
使用上图的账号和密码,注意要回到bin目录下输入下列指令

mongodump -u test5 -p test888 -d test5 -o E:\mongodb\bak2

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
备份成功~

还原数据库

语法

mongoretore -h -port -u -p -d --drop 备份数据目录

语法说明

-h   host      服务器IP地址,默认本机
-port          端口,默认27017
-u   user      账号
-p   pwd       密码
-d   database  不写还原全部数据
--drop         先删除数据库再导入

用超级管理员权限登录
先删除几个数据库,用来看导入效果,下图删除了test1、test5
千万别删admin数据库~
在这里插入图片描述

还原所有数据库

 mongorestore -u admin -p admin888 --drop E:\mongodb\bak

在这里插入图片描述

验证:
在这里插入图片描述
test1和test5已还原成功!

还原指定数据

先删除test5数据库
在这里插入图片描述

还原指定数据就不能用admin超级用户权限了,需要用数据库单独的权限
在这里插入图片描述

mongorestore -u test5 -p admin888 -d test5 --drop E:\mongodb\bak2\test5
注:要精确到备份文件

在这里插入图片描述
在这里插入图片描述
还原成功!

猜你喜欢

转载自blog.csdn.net/qq_43710881/article/details/107872445