データベースのバックアップにPHPを含める必要はありません。必要なのは、mysqldump を使用するスクリプトだけです。 データベースをバックアップし、CRONジョブを設定 します。 スクリプトを定期的に実行するには:
mysqldump db_name > backup-file.sql
... mysqldumpからの出力を指定されたファイル名にリダイレクトすることにより、データベースをファイルにバックアップします。
Peterは、コマンドによってアーカイブが1日しか与えられないという良い点を指摘しました。2日以上経過したアーカイブはすべて上書きされます。これにより、7日間のローリングログが可能になります:
CURRENT_DAY_OF_WEEK=`date '+%u'`
FILENAME="mysqlbackup_"$CURRENT_DAY_OF_WEEK".sql"
mysqldump db_name > $FILENAME
また、ファイルのアクセス許可が適用されることに注意してください。スクリプトを実行するユーザーがフォルダーへのアクセス許可を持っていない場合、ファイルを書き込むことはできません。