使用批处理文件并使用Windows Task Scheduler进行mysql备份

时间:2019-04-20 03:48:38

标签: batch-file scheduled-tasks

我已经创建了以下批处理文件,用于从数据库备份mysql单个表,过程和触发器,然后使用7zip对其进行压缩。当我在Windows的命令提示符下运行此文件时,它可以完美运行并创建一个名为20192004-1859.zip的文件,文件大小为几百mb。但是当我使用Windows任务计划程序对其进行计划时,它将按名称20192004-.7z创建一个文件,并且文件大小仅为1kb,而且也为空。请找到下面的代码,让我知道如何使其工作。

 @ECHO Off
 Echo Avoid Any MYSQL Transcations until backup completes
set TIMESTAMP=%DATE:~10,4%%DATE:~4,2%%DATE:~7,2%-%TIME:~0,2%%TIME:~3,2%
md E:\backup\%TIMESTAMP%\Adatabase
cd D:\wamp\bin\mysql\mysql5.7.9\bin\
mysql -s -e "SHOW TABLES FROM Adatabase" --user=root --password=  --skip-column-names > E:\backup\tables.txt
for /f %%A in (e:\backup\tables.txt) DO (mysqldump --user=XXX --password=XXX  Adatabase %%A > E:\backup\%TIMESTAMP%\Adatabase\%%A.sql)
mysqldump --user=root --password=   --no-create-db --no-create-info --no-data --routines Adatabase > E:\backup\%TIMESTAMP%\Adatabase\procNtrig.sql
E:
cd E:\backup\
C:\7zip\7za a  %TIMESTAMP%.zip e:\backup\%TIMESTAMP%\*
RMDIR /S  /q e:\backup\%TIMESTAMP%

0 个答案:

没有答案