mysql备份使用win系统中的计划任务功能执行bat脚本进行备份MySQL数据库。
    bat代码示例(文件名back_db.bat默认端口):

    1. @echo off
    2. rem 先备份
    3. set "Ymd=%date:~,4%%date:~5,2%%date:~8,2%"
    4. for %%a in (
    5. db1
    6. db2
    7. db3
    8. db4
    9. ) do (
    10. "D:\soft\mysql\mysql-5.7.28-winx64\bin\mysqldump.exe" --opt -u root --password=123456 %%a > D:\mysqlback_data\%%a_%Ymd%.sql
    11. )
    12. @echo on
    13. rem 删除三天以前的数据
    14. set DaysAgo=3
    15. for /f %%i in ('powershell -c "Get-Date (Get-Date).AddDays(-%DaysAgo%) -uformat "%%Y%%m%%d""') do (
    16. set "DstDate=%%i"
    17. )
    18. rem echo %DstDate%
    19. rem pause
    20. for %%b in (
    21. db1
    22. db2
    23. db3
    24. db4
    25. ) do (
    26. del "D:\mysqlback_data\%%b_%DstDate%.sql"
    27. )
    28. #pause

    bat代码示例(文件名back_db.bat其它端口)

    1. @echo off
    2. rem 先备份
    3. set "Ymd=%date:~,4%%date:~5,2%%date:~8,2%"
    4. for %%a in (
    5. db1
    6. db2
    7. db3
    8. ) do (
    9. "C:\java_software\mysql-5.7.21-winx64\bin\mysqldump.exe" --opt -h 127.0.0.1 -P 3308 -u root --password=123456 %%a > C:\java_software\mysqlback_data\%%a_%Ymd%.sql
    10. )
    11. @echo on
    12. rem 删除三天以前的数据
    13. set DaysAgo=3
    14. for /f %%i in ('powershell -c "Get-Date (Get-Date).AddDays(-%DaysAgo%) -uformat "%%Y%%m%%d""') do (
    15. set "DstDate=%%i"
    16. )
    17. rem echo %DstDate%
    18. rem pause
    19. for %%b in (
    20. db1
    21. db2
    22. db3
    23. ) do (
    24. del "C:\java_software\mysqlback_data\%%b_%DstDate%.sql"
    25. )
    26. #pause

    在win系统——>控制面板——>管理工具——>任务计划程序
    在任务计划程序库下面新建文件夹(msyql),选择该文件夹在右侧创建任务,出现如下图:
    image.png
    再按照图中从左到右依次的顺序配置好即可(剩余不一一说明了,只记录核心关键)。

    注意:在win server 2019版中并未出现”使用最高权限运行”,看情况设置即可。