PHP を使用して MySQL データベースを自動的にバックアップする方法

Php Wo Shi Yongshite Mysql Detabesuwo Zi Dong Denibakkuappusuru Fang Fa



MySQL は、膨大な量のデータを構造化された方法で効率的に作成、管理、保存できるオープンソースの RDBMS です。データのセキュリティを確保するために、データベースのバックアップは重要なタスクです。 MySQL は多くの言語をサポートしているため、MySQL データベースのバックアップを作成するために、ユーザーは強力なスクリプト言語である PHP でスクリプトを作成できます。

この記事では、PHP を使用して MySQL データベースのバックアップを作成し、バックアップ プロセスを自動化する方法について説明します。

PHP を使用して MySQL データベースを自動的にバックアップする

PHP コードを記述するには、任意のコード エディターを開きます。この投稿では、「 ビジュアル スタジオ コード 」が使用されています:









「」という名前の PHP ファイルを作成します。 db_backup.php 」:







次のコードを入力し、MySQL データベースの資格情報を提供します。

定義 ( 「DB_HOST」 'your_mysql_host' ) ;

定義 ( 'DB_USER' 'your_mysql_username' ) ;

定義 ( 「DB_PASS」 'your_mysql_password' ) ;

定義 ( 「DB_NAME」 'your_database_name' ) ;

バックアップ ファイルが保存されるバックアップ ディレクトリを定義します。



定義 ( 'バックアップ_ディレクトリ' 「/path/to/your/backup/directory」 ) ;

バックアップ ファイルの名前の日付形式を設定します。

$date = date('Y-m-d_H-i-s');

バックアップファイル 」:

$backup_file = BACKUP_DIR . '/' . DB_NAME 。 '-' . $日付。 '.sql';

バックアップ ファイルを作成するには、mysqldump ユーティリティを使用し、データベースの資格情報を提供します。

$command = 'mysqldump --user='.DB_USER.' --password='.DB_PASS.' '.DB_NAME.' > '.$backup_file;

システム ($コマンド);

gzip ' 道具:

$gzip_command = 'gzip '.$backup_file;

システム($gzip_command);

このコードを入力して、古いバックアップ ファイルを削除します。この投稿では、「 7 」 日前の日付が削除されます:

$find_command = 'find '.BACKUP_DIR.' -type f -name '*.gz' -mtime +7 -delete';

システム ($find_command);

ファイルを保存して実行し、バックアップファイルが作成されているかどうかを確認します。コード エディター ターミナルを開き、次のコマンドを入力してファイルを実行します。

php .\db_backup.php

ディレクトリを一覧表示して、バックアップ ファイルが存在するかどうかを確認します。出力には、正常に作成されたバックアップ ファイルが表示されます。

バックアップのプロセスを自動化するには、スタート メニューを開き、「 タスクスケジューラ 」をクリックし、「 開ける ' ボタン:

から ' 行動 」を押して「 タスクの作成 ' オプション:

新しいウィザードが開きます。 「に向かいます 全般的 」タブをクリックして、タスクの名前を入力します。ユーザーがログアウトしている場合でもバックアップを保証するオプションを選択します。

トリガー 」タブを押して「 新しい ' ボタン:

オプション「 予定通り 」。予定時刻を「 毎日 」を調整し、「 始める ' 時間。詳細設定で、「 有効 」オプションを選択し、「 OK ' ボタン:

ステータスが「 有効 」:

を選択 ' 行動 」タブをクリックし、「 新しい ' ボタン:

「アクション」の名前を入力し、「 プログラム/スクリプト ” 作成した PHP ファイルと “ 引数を追加 」をクリックし、「 OK 」:

アクションが正常に作成されます。

条件 ” タブをクリックし、チェックボックスをオンにします “ このタスクをこするためにコンピューターをスリープ解除します 」:

の中に ' 設定 」タブをクリックし、出力に表示されるオプションを選択し、再起動の時間を調整して「 OK ' ボタン:

プロンプトが表示されます。資格情報を入力し、「 OK ' ボタン:

MySQL データベースは自動的にバックアップされます。必要に応じて、バックアップ ディレクトリをチェックしてバックアップ ファイルを確認します。

MySQL データベースをバックアップするための PHP ファイルを正常に作成し、タスク スケジューラを使用してバックアップ プロセスを自動化しました。

結論

コード エディターを使用して PHP ファイルを作成し、MySQL データベースの資格情報を指定し、ファイル名の形式と日付の形式をバックアップします。 mysqldump コマンドを使用して SQL ファイルを作成し、gzip ツールを使用して SQL ファイルを圧縮します。バックアップ プロセスの自動化には、タスク スケジューラを使用します。この投稿では、PHP を使用して MySQL データベースを自動的にバックアップする方法を示しました。