ホームページ >バックエンド開発 >PHPチュートリアル >win2003_PHP チュートリアルで mysql データベースの毎日の自動バックアップを実装する
1. 環境: Windows Server 2003 + PHP5 + MySQL 5.1.6
2. PHP インストール ディレクトリが D:/php であり、MySQL インストール ディレクトリが D:/mysql であると仮定します。
3. D: にディレクトリ WinRAR を作成します。 /php、WinRAR インストール ディレクトリの WinRAR.exe と RARReg.KEY を D:/php/WinRAR にコピーします。
4. ファイル mysql_backup.php を D:/php に作成します。 コードは次のとおりです:
< ;?
// ディレクトリを保存します。パスにはバックスラッシュを使用します。
$store_folder = 'D:databse_backup';
//このアカウントには [すべて] を操作する権限が必要です。 ] データベースと FILE
//それ以外の場合、一部のデータベースはバックアップできません。
$time=time(); date("Ymd", $time)."";
if(file_exists("$nowdir.rar")) die("ファイルが存在します.rn");
mysql_connect("localhost") ","$db_username" ,"$db_password");
$query=mysql_list_dbs();
$command = '';
while($result=mysql_fetch_array($query)){
. . mysqlbinmysqldump --opt '."$result[データベース] -u{$db_username} ".($db_password?"-p{$db_password}":"")." > $nowdir\$result[データベース].sql rn"; $command .= "エコー ダンプ データベース `$result[データベース]`... rn";
}
$command .= "エコー Winrar ローディング...rn";
$command .= dirname( __FILE__); \WinRAR\WinRAR.exe a -ep1 -r -o+ -m5 -df "$nowdir.rar" "$nowdir" rn";
$command .= "echo OK!rn";
$ command .= " del mysqldumping_temp.batrn";
$fp = fopen('mysqldumping_temp.bat','w');
fwrite($fp,$command);
fclose($fp);
// ファイルを 5 日間削除しますago
@unlink("$store_folder\".date("Ymd",$time-86400*5).".rar");
5. D:/php 次に、ファイル mysql_backup を作成します。 Bat、内容は次のとおりです:
echo off
php.exe mysql_backup.php
mysqldumping_temp.bat が存在する場合は mysqldumping_temp.bat を呼び出します
6. バックアップできる場合は、bat ファイルをダブルクリックして実行します。OK、次のステップは次のとおりです。タスク プランを追加します。
7. D:/php/mysql_backup をタスク プランに追加し、サーバーの監視結果によると、毎朝午前 5 ~ 8 時がトラフィックの少ない時間帯です。午前5時から7時の間にデータベースのクリーニング作業をするので、時間を朝8時に設定します
原作者: faisun
ウェブサイト: http://www.softpure.com
http://www.bkjia.com/PHPjc/317270.html
www.bkjia.com
true