第一步:编写mysql备份bat脚本
将下面代码复制到记录本,并另存为backupdb.bat 文件。
@echo off
SETLOCAL ENABLEDELAYEDEXPANSION
call:get_config "config.ini"
if %time:~0,2% leq 9 (set hour=0%time:~1,1%) else (set hour=%time:~0,2%)
set Ymd=%date:~,4%_%date:~5,2%_%date:~8,2%_%hour%%time:~3,2%
set safe_path=%backup_safe_path%%Ymd%
md %safe_path%
set tmp_file=tmp_db_list.txt
set thisdb=%dbname%
::是否备份全部数据表
set isdbtotal=0
::指定忽略的表
set igtb=--ignore-table %dbname%.zq_admin_log --ignore-table %dbname%.zq_areas --ignore-table %dbname%.v_bservice
if %thisdb% == "" (
echo Please set the database to be backed up...
) else (
if %isdbtotal% == 1 (
echo backup --- %dbname%
%mysql_bin%mysqldump --user=%user% --password=%pwd% --host=%host% --port=%port% --skip-lock-tables --default-character-set=utf8 --single-transaction --quick %dbname%> %safe_path%\%dbname%.sql
) else (
%mysql_bin%mysqldump --user=%user% --password=%pwd% --host=%host% --port=%port% --skip-lock-tables --default-character-set=utf8 --single-transaction --quick %dbname% %igtb%> %safe_path%\%dbname%.sql
)
echo finished --- %dbname%
ping /n 3 127.0.0.1 >nul
)
::pause
exit
echo backup is finished,save in %safe_path%
ping /n 3 127.0.0.1 >nul
:get_config
for /f "usebackq delims=" %%a in (%1) do (
set content=%%a
if not "!content:~0,1!" == "[" (
for /f "delims=; tokens=1" %%b in ("!content!") do (
set content=%%b
for /f "delims== tokens=1-2" %%i in ("!content!") do (
set key=%%i
set key=!key: =!
set value=%%j
set value=!value: =!
set !key!=!value!
)
)
)
)
goto:eof
第二步:创建config.ini配置文件,注意与backupdb.bat文件目录同级。内容如下:
[FILE_PATH]
mysql_bin=E:\phpstudy_pro\Extensions\MySQL5.7.26\bin\
backup_safe_path=K:\MYSQLDBbak\DATA\
[mysql]
host=127.0.0.1
port=3306
user=root
pwd="root"
dbname="zq_testdb"
配置文件请设置为您的相关配置。
最后双击backupdb.bat即可进行mysql数据库的备份。如果您需要实现自动备份功能,只需要将backupdb.bat加到系统的定时任务即可。
用bat脚本实现mysql数据库备份功能https://download.csdn.net/download/heronivy/85577144
版权声明:本文为heronivy原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。