小金井にあるWEB制作会社の備忘録

MEMORANDUM

PHPでデータベース(MySQL)のデータを自動バックアップ

データベースのバックアップを取りたい時、毎回管理ツールからダウンロードボタンを押しても可能だけれど、押し忘れや対応できない時があるのを避けるため自動化した際の内容をメモ。

PHP

$dbHost = '○○○○'; // MySQLホスト名
$dbName = '○○○○'; // データベース名
$dbUser = '○○○○'; // データベースユーザー名
$dbPass = '○○○○'; // データベースパスワード

$filePath = './○○○○/'; // ファイルを保存するディレクトリ
$fileName = date('ymd').'_'.date('His').'.sql';
$savePath = $filePath.$fileName;

$command = "mysqldump ".$dbName." --host=".$dbHost." --user=".$dbUser." --password=".$dbPass." > ".$savePath;
exec($command);

「$filePath」に記載した内容のディレクトリを作成し、上記を記述したファイルをサーバーに用意されているクーロン機能を使って定期的に実行する。