バックアップ · 1 min read · Feb 12, 2026
MySQLのバックアップとリカバリ mysql-zrmを使用したDebian Sarge - ページ3
4 バックアップの例
mysql-zrmを使用すると、日次バックアップ、週次バックアップ、osCommerceデータベースのバックアップ、vBulletinデータベースのバックアップなど、複数のバックアップ(バックアップセット)を維持できます。
最初のバックアップをバックアップセットdailyrunに作成しましょう:
mysql-zrm-scheduler --now --backup-set dailyrun --backup-level 0これにより、すべてのデータベースがディレクトリ/var/lib/mysql-zrm/dailyrunに即座にバックアップされ、/etc/mysql-zrm/dailyrunディレクトリも作成されます。–backup-level 0は、フルバックアップを意味します(増分バックアップ(–backup-level 1)もできますが、これは後で説明します - 今はフルバックアップのみを行います)。
メール通知を有効にしている場合、バックアップのステータスに関するメールを受け取っているはずです。しかし、コマンドラインでバックアップステータスに関するレポートを生成することもできます:
mysql-zrm-reporter --where backup-set=dailyrun --show backup-status-info出力は次のようになります:
| backup_set backup_date backup_level backup_status comment ---------------------------------------------------------------------------------------------------------------------- dailyrun Tue 26 Sep 2006 07:57:47 PM CEST 0 Backup succeeded ---- |
他にもいくつかのレポートを次のコマンドで生成できます:
mysql-zrm-reporter --where backup-set=dailyrun --show backup-method-info
mysql-zrm-reporter --where backup-set=dailyrun --show backup-retention-info
mysql-zrm-reporter --where backup-set=dailyrun --show backup-performance-info
mysql-zrm-reporter --where backup-set=dailyrun --show restore-full-info
mysql-zrm-reporter --where backup-set=dailyrun --show restore-incr-info
mysql-zrm-reporter --where backup-set=dailyrun --show replication-infoそれぞれを試して、どの情報が提供されるかを確認してください。
次に、システムによって自動的に実行される日次バックアップと週次バックアップを作成したいと思います(つまり、私たちの操作なしで)。これがバックアップを設定する方法です:
mysql-zrm-scheduler --add --interval daily --backup-set dailyrun --backup-level 0
mysql-zrm-scheduler --add --interval weekly --backup-set weeklyrun --backup-level 0(2番目のコマンドで、weeklyrunという新しいバックアップセットを作成しました。)
スケジュールされたバックアップを確認しましょう:
mysql-zrm-scheduler --query出力は次のようになります:
| Logging to /var/log/mysql-zrm/mysql-zrm-scheduler.log 0 3 * * * /usr/bin/mysql-zrm --action backup --destination /var/lib/mysql-zrm --backup-set dailyrun --backup-level 0 0 4 * * * /usr/bin/mysql-zrm --action purge --destination /var/lib/mysql-zrm 0 2 * * 0 /usr/bin/mysql-zrm --action backup --destination /var/lib/mysql-zrm --backup-set weeklyrun --backup-level 0 |
ご覧のとおり、日次バックアップは毎日03:00に実行され、週次バックアップは毎週日曜日の02:00に実行されます。
(ちなみに、
mysql-zrm-scheduler --queryの代わりに、
crontab -lを実行しても同じ情報が得られます。)
日次バックアップを別の時間、例えば13:35に開始したい場合は、次のようにします:
mysql-zrm-scheduler --add --interval daily --backup-set dailyrun --start 13:35 --backup-level 0cronからスケジュールされたバックアップを削除するには、次のようにします:
mysql-zrm-scheduler --delete --interval weeklyこれにより、日曜日の02:00に実行される週次バックアップがcronから削除されます。13:35にスケジュールされた日次バックアップを削除したい場合は、次のようにします:
mysql-zrm-scheduler --delete --interval daily --start 13:35しかし、
crontab -eを実行してcronジョブを編集することもでき、これは時々mysql-zrm-schedulerを扱うよりも簡単です。
5 カスタマイズされたレポート、HTMLレポート
第4章では、どのようなレポートが利用可能かについてすでに言及しました。しかし、カスタマイズされたレポートを生成することもできます。つまり、表示したい列/情報を指定できます。例えば、
mysql-zrm-reporter --fields backup-set,backup-date,backup-level,backup-status --where backup-set=dailyrunは、バックアップセットdailyrunのレポートを生成し、バックアップセット、バックアップ日、バックアップレベル、バックアップステータスの列を表示します:
| backup_set backup_date backup_level backup_status ------------------------------------------------------------------------------------------------ dailyrun Tue 26 Sep 2006 07:57:47 PM CEST 0 Backup succeeded dailyrun Tue 26 Sep 2006 07:58:08 PM CEST 0 Backup succeeded dailyrun Tue 26 Sep 2006 07:58:31 PM CEST 0 Backup succeeded dailyrun Tue 26 Sep 2006 08:24:04 PM CEST 0 Backup succeeded |
mysql-zrmを使用すると、HTMLレポートも作成できます。例えば、システムにドキュメントルート/var/wwwを持つWebサーバー(例:Apache)がインストールされていると仮定します。次に実行します:
mysql-zrm-reporter --show backup-status-info --where backup-set=dailyrun --type html --output /var/www/backup-status-dailyrun.htmlこれにより、/var/wwwディレクトリにbackup-status-dailyrun.htmlというHTMLファイルが作成され、ブラウザでアクセスできるようになります(例:http://server1.example.com/backup-status-dailyrun.html):

新しい投稿を受信箱で受け取る
スパムはありません。いつでも購読を解除できます。