Windows下MySQL数据库备份脚本
一、设置数据库配置(my.ini)
port=3306
default-character-set=utf8
host=localhost
user=root
password='123456'
二、自动备份脚本
@echo off
#设置数据库路径
set
mysql_workspace=D:\phpstudy_pro\Extensions\MySQL5.7.26\bin
#设置备份时间
set
Ymd="%date:~0,4%%date:~5,2%%date:~8,2%%time:~0,2%%time:~3,2%%time:~6,2%"
#设置备份目录
set
target_dir=D:\SQLBackup
#设置数据库地址
set
hostname=127.0.0.1
#设置my.ini地址
set
extraFile=D:/phpstudy_pro/Extensions/MySQL5.7.26/my.ini
#设置备份目录根地址
set Pan=d:
#设置数据库存放路径
set test01=test01\
set test02=test02\
echo 本批处理准备创建以下文件夹
echo 1.test01环境数据 %target_dir%%test01%
echo 2.test02环境数据 %target_dir%%test02%
#创建备份目录
if exist %target_dir% (
if exist %target_dir%%test1% (
echo 目录%target_dir%%test1%已存在,无需创建
) else (
echo 创建%target_dir%%test1%
md %target_dir%%test1%
)
if exist %target_dir%%test2% (
echo 目录%target_dir%%test2%已存在,无需创建
) else (
echo 创建%target_dir%%test2%
md %target_dir%%test2%
)
) else (
echo "**********初始化目录%target_dir%**********"
md %target_dir%
md %target_dir%%test1%
md %target_dir%% test2%
)
D:
cd %mysql_workspace%
echo "**********备份开始**********"
mysqldump --defaults-extra-file=%extraFile% -h %hostname% test1 > %target_dir%%pre_release%\test1%Ymd%.sql
mysqldump --defaults-extra-file=%extraFile% -h %hostname% test2 >
%target_dir%%test2%\test2%Ymd%.sql
echo "**********备份结束**********"
set DaysAgo=15
echo "**********删除15天前的备份文件**********"
Forfiles /p %target_dir%%test1% /s /d %DaysAgo% /m *.dbb /c "cmd /c del /q /f @path"
Forfiles /p %target_dir%%test2% /s /d %DaysAgo% /m *.dbb /c "cmd /c del /q /f @path"
echo "**********删除15天前的备份文件结束**********"
ping -n 15
127.1>nul
三、备份包括存过过程和函数
mysqldump -h hostname -u username -ntd -R databasename > backupflie.sql

0 评论