欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

windows mysql定时备份任务 博客分类: 数据库 mysqlwindows 

程序员文章站 2024-03-15 11:53:29
...
mysqlbak.cmd
echo off
set txt1=%date:~0,4%
::当前年
set txt2=%date:~5,2%
::当前月
set txt3=%date:~8,2%
::当前日
set txt4=%time:~0,2%
::当前小时
set txt5=%time:~3,2%
::当前分钟
set txt6=%time:~6,2%
::当前秒
set date=%txt1%%txt2%%txt3%
set time=%txt4%%txt5%%txt6%

::数据库用户名
set user=root

::数据库用户密码
set passwd=root

::要备份的数据库
set db=test

::7z压缩工具绝对路径
set _7z="D:\Program Files\7-Zip\7z.exe"

::mysqldump数据库备份工具绝对路径
set mysqldump="D:\Programs\mysql-5.6.34-winx64\bin\mysqldump.exe"

::备份文件夹
set bakdir="E:\mysqlbak\data"

set file7z=%bakdir%\%db%%date%%time%.7z
set sqlfile=%bakdir%\%db%%date%%time%.sql
echo --------------------------------------------------
echo -------------正在执行MySQL数据库备份--------------
echo --------------------------------------------------
echo ...
echo ...
echo 导出Database...
if exist %sqlfile% del %sqlfile%
%mysqldump% --add-drop-table --default-character-set=gbk -c -u %user% -p%passwd% -h  localhost  %db% > %sqlfile%
echo ...
echo ...
if exist %file7z% del %file7z%
echo 压缩文件...%file7z% %sqlfile%
%_7z% a -t7z %file7z% %sqlfile% -mx9
echo ...
echo ...
echo 删除临时文件
del %sqlfile%
echo ...
echo ...
echo 备份完成!
rem pause 


rem 安装定时任务 每分钟一次 用当前用户权限
rem schtasks /create /tn mysqlbak /tr E:\mysqlbak\mysqlbak.cmd /sc MINUTE
rem 成功: 成功创建计划任务 "mysqlbak"。
 
rem 安装定时任务 一天一次 夜里两点执行
rem schtasks /create /tn mysqlbak02 /tr E:\mysqlbak\mysqlbak.cmd /sc DAILY /st 02:00


rem 删除定时任务 需用管理员权限的CMD执行
rem SCHTASKS /delete /tn mysqlbak

--default-character-set=gbk 不加这个,导出后无法导入

7z.exe的下载和安装
http://www.7-zip.org/

数据库恢复
mysql-5.6.34-winx64\bin\mysql -uroot -pmysql -h localhost mydb  < E:\mysqlbak\data\mydb.sql
相关标签: mysql windows