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 评论
avatar

取消