Windowsで定時にバックアップされたコードとデータベースファイルを圧縮するスクリプト(bat)

システム要件
タスクマネージャー、7Z圧縮ソフトのインストール

batコード下記:
SET hour=%time:~0,2%
SET hour=%hour: =%
SET DATE=%date:~0,10%_%hour%_%time:~3,2%_%time:~6,2%
SET ZIP_CMD=e:soft-Zipz.exe
set www_root=d:webwww
set svn_root=e:svncode
SET BACKUP_ROOT=e:ak_code
mkdir %BACKUP_ROOT%%USER%_%DATE%
::===============コードバックアップ================
%ZIP_CMD% a -tzip %BACKUP_ROOT%%USER%_%DATE%.www.zip %www_root%
move %BACKUP_ROOT%%USER%_%DATE%.www.zip %BACKUP_ROOT%%USER%_%DATE%

::==============SVNバックアップ===================
%ZIP_CMD% a -tzip %BACKUP_ROOT%%USER%_%DATE%.svncode.zip %svn_root%
move %BACKUP_ROOT%%USER%_%DATE%.svncode.zip %BACKUP_ROOT%%USER%_%DATE%

::====================データベースのバックアップ===============
set DATABASES=db_name1 db_name2 db_name3
:: MySQL ユーザー名
set USERNAME=root
:: MySQL パスワード
set PASSWORD=startnews24
:: MySQL Bin ディレクトリ
:: mysqldumpを利用する
::set MYSQL=D:SERVERMySQLin
::%MYSQL%mysqldump -u%USERNAME% -p%PASSWORD% %%D > %BACKUP_ROOT%%USER%_%DATE%.%%D.sql

echo データベースのバックアップを開始…
for %%D in (%DATABASES%) do (
echo Dumping database %%D …
mysqldump -u%USERNAME% -p%PASSWORD% %%D > %BACKUP_ROOT%%USER%_%DATE%.%%D.sql
::データベースファイルを圧縮
%ZIP_CMD% a -tzip %BACKUP_ROOT%%USER%_%DATE%.%%D.zip %BACKUP_ROOT%%USER%_%DATE%.%%D.sql
move %BACKUP_ROOT%%USER%_%DATE%.%%D.zip %BACKUP_ROOT%%USER%_%DATE%
del %BACKUP_ROOT%%USER%_%DATE%.%%D.sql/Q /S
)
echo Done
exit

shellscript

Posted by arkgame