一、windows环境以mysql5.7.39为例:
1.手动备份通过命令窗口进入到mysql/bin目录下执行:
(1)mysqldump -u root -p testdb>c:testdb.sql
(2)mysqldump -uroot -p -R --triggers --single-transaction --master-data=2 -B testdb >c:backup_testdb.sql
两种命令均可,注意语句后没分号!
C:\mysql-5.7.39\bin> mysqldump -uroot -p testdb >c:mysql_bak\testdb_backup.sqlEnter password:
C:\mysql-5.7.39\bin>mysqldump -uroot -p -R --triggers --single-transaction --master-data=2 -B testdb >c:\mysql_bak\tsetdb_backup.sqlEnter password:
二、定时自动备份:
1、编写备份脚本,文件格式为 .bat
@echo offecho 设置MySql数据库的连接信息set host=127.0.0.1set port=3306set user=用户名set pass=密码 echo 设置要备份的MySql数据库名称set dbname=testdb(库名)echo 获取当天的日期格式,例如:1102231300set hour=%time:~0,2%if "%time:~0,1%"==" " set hour=0%time:~1,1%set backup_date=%Date:~0,4%%Date:~5,2%%Date:~8,2%%hour%%Time:~3,2%%Time:~6,2%echo 设置备份文件的路径 (注意路径!!!)set backupfile=C:\mysql_bak\%dbname%_backup_%backup_date%.sqlecho 使用mysqldump对指定的MySql进行备份echo 注意mysqldump实际路径(注意路径!!!)"C:\mysql-5.7.39\bin\mysqldump" -h%host% -P%port% -u%user% -p%pass% -c --add-drop-table %dbname% > %backupfile%echo 删除过期文件,这里是超过7天就删除(注意路径!!!)forfiles /p C:\mysql_bak /s /m *.sql /d -7 /c "cmd /c del @file /f"
2、创建定时任务
利用windows系统自身定时任务开启
1.控制面板->管理工具->任务计划程序->创建基本任务
选择运行脚本;
2.设置完成后,通过手动执行定时任务,查看是否备份成功;
至此,mysql定时备份设置完成。