(一)一个备份数据mysql数据库的批处理

@echo off
echo -------------------------
echo 系统时间:%date% %time%

@set /p isUseDefault=是否使用默认用户名密码【user=root,password=root】(y/n)

@set user=root
@set password=root
@set fileName=df
if %isUseDefault% EQU y (
echo ---------------------------------------
echo 你使用了默认的用户名和密码,如果你的用户名和密码与默认的不符,将会备份失败
echo ---------------------------------------
)
if %isUseDefault% EQU n (
set /p user=请输入用户名:
set /p password=请输入密码:
set /p fileName=请输入备份文件名称:
)

echo ---------------------------------------
@set /p isData=是否备份数据库表数据(y/n):

@set temp=show databases;
echo %temp% > temp.sql

mysql -u %user% --password=%password% < temp.sql > db.txt
rem 定义文件名称
rem 年
@set year=%date:~0,4%
if %year% LSS 10 set year=0%date:~1,3%
rem 月
@set month=%date:~5,2%
if %month% LSS 10 set month=0%date:~6,1%
rem 日
@set day=%date:~8,2%
if %day% LSS 10 set day=0%date:~9,1%
rem 时
@set hour=%time:~0,2%
if %hour% LSS 10 set hour=0%time:~1,1%
rem 分
@set min=%time:~3,2%
if %min% LSS 10 set min=0%time:~4,1%
rem 秒
set sec=%time:~6,2%
if %sec% LSS 10 set sec=0%time:~7,1%
rem 毫秒
set mill=%time:~9,2%
if %mill% LSS 10 set mill=0%time:~10,1%
@set fullFileName=%fileName%_%year%_%month%_%day%_%hour%_%min%_%sec%_%mill%.sql

echo 备份文件名称:%fullFileName%
echo ---------------------------------------
echo 数据备份开始,请勿关闭窗口

echo --数据库备份文件,请勿删除 > %fullFileName%

for /f "tokens=1 delims==" %%i in (db.txt) do (
if /i not %%i==Database (
if /i not "%%i"=="information_schema" (
if /i not "%%i"=="mysql" (
if /i not "%%i"=="test" (
echo 开始备份 %%i
echo create database %%i; >> %fullFileName%
echo use %%i; >> %fullFileName%
if %isData% EQU y (
mysqldump --opt %%i -u %user% --password=%password% >> %fullFileName%
)
if %isData% EQU n (
mysqldump --opt -d %%i -u %user% --password=%password% >> %fullFileName%
)
echo %%i 备份结束
)
)
)
)
)
echo 数据备份完毕
echo ---------------------------------------
@set /p isClean=是否清理缓存文件(y/n)
if %isClean% EQU y (
del temp.sql
del db.txt
echo 缓存文件清理成功
)
echo ---------------------------------------
pause&exit

 

posted on 2016-01-06 19:55  天涯码客  阅读(185)  评论(0)    收藏  举报

导航