スポンサードリンク

MySQLを使っているのですが、
そのデータのバックアップをいつもphpMyAdminから
バックアップを取っていたのですが、
それを、WEB上からバックアップできるようにする方法です。
スポンサードリンク
mysqldumpコマンドを使うためのPHPのsystem関数
こちらを参考にさせて頂きました。
XserverでPHP+mysqldump使ってDBをバックアップする方法
$dbHost = "データベースのホスト名"; $dbUser = "データベースのユーザー名"; $dbPass = "データベースのパスワード"; $dbName = "データベースの名前"; $filePath = "保存する場所への絶対パス"; $fileName = date('ymd').'_'.date('His').'.sql'; $command = "mysqldump ".$dbName." --host=".$dbHost." --user=".$dbUser." --password=".$dbPass." > ".$filePath.$fileName; system($command); //保存したらダウンロード $dlFile = $filePath . $fileName; //ファイルパス header('Content-Type: application/octet-stream'); //ダウンロードの指示 header('Content-Disposition: attachment; filename="' . $fileName . '"'); //ダウンロードするファイル名 header('Content-Length: '.filesize($dlFile)); //ファイルサイズを指定することでプログレスバーが表示される。 readfile($dlFile);
保存のファイルはテキスト形式でもよかったのですが、
SQLファイルにしました。
サーバーにもバックアップを保存しておきます。
バックアップを保存した後で、ダウンロードしています。
cronで時間指定して
自動バックアップも考えましたが、
今回は手動でバックアップを取ってダウンロードする方法にしました。
スポンサードリンク