>> データに障害を発生させる |
|
前回の講座では、MySQLのMyISAMのデータ形式によるバックアップを実行しました。今回はそのリストアを行います。
リストアというのは、なんらかの問題が発生した状態で行いますので、確実にNetVaultによるバックアップが完了していることを確認した上で、データベースに障害を発生させてみます。一番分かりやすいのは、ユーザーのオペレーション・ミスでデータベースをdropしてしまった場合を考えてみることです。
mysql> show databases; +----------+ | Database | +----------+ | mysql | | test | | xoops | +----------+ 3 rows in set (0.00 sec)
まず、最初にここでは3つのデータベースが正常に確認できています。このうち、xoopsの動作に必要となるxoopsデータベースをdropしてみましょう。
mysql> drop database xoops; Query OK, 44 rows affected (0.08 sec)
dropしてから、もう一度show databasesで確認すると無くなっているのがわかります。
mysql> show databases; +----------+ | Database | +----------+ | mysql | | test | +----------+ 2 rows in set (0.00 sec)
この状態の場合、Webブラウザからxoopsにアクセスしても、コンテンツの表示に必要なデータベースがないため正常動作することができません。
>> MySQLをリストアする (MyISAM形式) |
|
NetVaultのメインのGUIから、リストアを選択し、今回の必要となるxoopsのデータベースを表示し、選択します。ここではわかりやすいように、各テーブル名までも表示していますが、通常はトップのxoopsだけ選択が見えれば問題ありません。
次にリストア・オプションですが、同じサーバのMySQLへ、アカウントやパスワードの設定に変更がない状態でリストアする際には、一切のオプション設定は必要ありません。MySQLにアクセスする方法が、リストア時に変更になっている場合には、その内容を登録します。
MySQL APMでは、この"Target Server Name"と指定クライアントのタブを選択することで異なるサーバへのリストアがサポートされています。この場合の詳細は、FAQ番号 NVT00124をご参照ください。
リストアが正常に実施されれば、障害発生前のようにデータベースが正しくすべて認識されます。
mysql> show databases; +----------+ | Database | +----------+ | mysql | | test | | xoops | +----------+ 3 rows in set (0.01 sec)
最後に、どうしても現在の環境でデータをリストアしたくないという場合には、別名で同じマシンにリストア可能です。
対象となるデータベース上で右クリックから、名前変更を選択します。
ファイル名に変更にチェックを入れた上で、変更したいデータベース名を登録します。
最終的に、ファイル名が変更された状態になりますので、あとは普通にリストアを実行します。
実行後にデータベースの状況を見ると、新規で作成したファイルが見事にデータベースとして確認できます。
sql> show databases; +----------+ | Database | +----------+ | mysql | | test | | xoops | | xoops2 | +----------+ 4 rows in set (0.00 sec)
これにより、いつでも気軽に現時点で運用されていても、テスト的なリストアも可能になります。
>> 次回は・・・ |
|
次回は、MyISAM形式以外のデータベースのバックアップ/リストア方法等について確認していきます。