本地对远程服务器mysql数据库进行备份
我们常常会需要对数据进行备份,防止数据被篡改,或者数据库崩溃。
这里我们先一条命令搞定:
E:\MySQL\"MySQL Server 8.0"\bin\mysqldump -h127.0.0.1 -u root -p123456 --databases webpro > backup_webpro.sql
解释一下,想要本地备份数据库必须要你本地安装mysql使用mysqldump应用去进行备份,因此E:\MySQL\"MySQL Server 8.0"\bin\mysqldump指向的是我自己本地电脑上面的mysqldump,各位看官需要改成自己电脑的mysql安装路径(注意,如果某级目录中间有空格需要用引号括起来)
接下来就好理解了-h表示主机ip,大家替换成自己的远程数据库主机ip/域名就行,-u是数据库登录名,-p是登录密码,--database表示要备份的数据库,>后面的表示存储位置(笔者这里表示跟脚本同级目录下)。
其实到这里备份就结束了,但是,我们备份数据应该是周期性的备份,因此需要把命令写进脚本,并且为每次备份取一个不同的名字,最简单的方式就是用当前的日期了,于是获取日期的命令:
-
for /f
"tokens=2 delims==" %%a in (
'wmic path win32_operatingsystem get LocalDateTime /value')
do (
-
set t=%%a
-
)
-
set Today=%t:~
0,
4%-%t:~
4,
2%-%t:~
6,
2%
-
echo,%Today%
然后修改备份的脚本(新建文本文件,将下面代码复制进去,修改自己的个性化配置,保存退出,修改文件扩展名为.bat),然后双击运行,同级目录下会出现一个backup_webpro_xxx.sql,这就是你需要的备份文件了!!!
-
@echo off
-
for /f
"tokens=2 delims==" %%a in (
'wmic path win32_operatingsystem get LocalDateTime /value')
do (
-
set t=%%a
-
)
-
set Today=%t:~
0,
4%-%t:~
4,
2%-%t:~
6,
2%
-
echo,%Today%
-
-
IF EXIST backup_webpro
_%Today%.sql ( del backup_webpro
_%Today%.sql &echo backup_webpro
_%Today%.sql is deleted)
-
-
E:\MySQL\
"MySQL Server 8.0"\bin\mysqldump -h127.
0.
0.
1 -u root -p123456 --databases webpro > backup_webpro
_%Today%.sql
-
-
echo
"success!!"
-
-
Pause
人生路远,且码且珍惜!!!