14.8.3 バックアップの運用例(OSコマンドを使用)
ここでは,OSのコマンドを使用したバックアップの運用例(フルバックアップを取得する運用例)について説明します。
- 〈この項の構成〉
(1) システムの構成例
3つのノード(hadb01,hadb02,hadb03)で構成されるマルチノード構成で,マスタノードはhadb01とします。DBディレクトリおよびアーカイブディレクトリは,次の構成となっているとします。
- ■hadb01のディレクトリ構成
-
DBディレクトリ構成
/home/user01/db ├ADBDIC:ブロックスペシャルファイル(サイズは10MB) ├ADBMST:ブロックスペシャルファイル(サイズは512MB) ├ADBSTBL:ブロックスペシャルファイル(サイズは512MB) ├ADBWORK:ローカルファイルシステム上のディレクトリ ├ADBWRK:ブロックスペシャルファイル(サイズは2GB) ├ADBUTBL01:ブロックスペシャルファイル(サイズは4GB) ├ADBUIDX01:ブロックスペシャルファイル(サイズは2GB) ├SPOOL:ローカルファイルシステム上のディレクトリ └ADBSYS:システムディレクトリ
アーカイブディレクトリ構成
/home/user01/archive
アーカイブディレクトリは,アーカイブマルチチャンク表を定義した場合に作成するディレクトリです。
- ■hadb02のディレクトリ構成
-
DBディレクトリ構成
/home/user01/db ├ADBDIC:ブロックスペシャルファイル ├ADBMST:ブロックスペシャルファイル ├ADBSTBL:ブロックスペシャルファイル ├ADBWORK:ローカルファイルシステム上のディレクトリ ├ADBWRK:ブロックスペシャルファイル ├ADBUTBL01:ブロックスペシャルファイル ├ADBUIDX01:ブロックスペシャルファイル ├SPOOL:ローカルファイルシステム上のディレクトリ └ADBSYS:システムディレクトリのファイルシステムのマウントポイント
アーカイブディレクトリ構成
/home/user01/archive
アーカイブディレクトリは,アーカイブマルチチャンク表を定義した場合に作成するディレクトリです。
- ■hadb03のディレクトリ構成
-
DBディレクトリ構成
/home/user01/db ├ADBDIC:ブロックスペシャルファイル ├ADBMST:ブロックスペシャルファイル ├ADBSTBL:ブロックスペシャルファイル ├ADBWORK:ローカルファイルシステム上のディレクトリ ├ADBWRK:ブロックスペシャルファイル ├ADBUTBL01:ブロックスペシャルファイル ├ADBUIDX01:ブロックスペシャルファイル ├SPOOL:ローカルファイルシステム上のディレクトリ └ADBSYS:システムディレクトリのファイルシステムのマウントポイント
アーカイブディレクトリ構成
/home/user01/archive
アーカイブディレクトリは,アーカイブマルチチャンク表を定義した場合に作成するディレクトリです。
(2) バックアップの取得
OSのコマンドを使用して,バックアップを取得する手順を説明します。
手順
-
マルチノード構成のHADBサーバを終了する※1
adbstop KFAA90000-I adbstop processing started. KFAA91154-I The HADB system was terminated normally. KFAA90001-I adbstop processing ended. (return code = 0) monend
マスタノードのhadb01でadbstopコマンドを実行し,全ノードのHADBサーバが正常終了したあとに,HAモニタのmonendコマンドを実行してください。
-
OSのコマンドでバックアップを取得する
OSのcpコマンドおよびddコマンドをマスタノードのhadb01で実行し,DBディレクトリとアーカイブディレクトリのバックアップを取得します。
DBディレクトリのバックアップの取得
cp -r /home/user01/db/ADBSYS /home/user01/db_bkup/ADBSYS dd if=/home/user01/db/ADBMST of=/home/user01/db_bkup/ADBMST bs=524288 dd if=/home/user01/db/ADBDIC of=/home/user01/db_bkup/ADBDIC bs=524288 dd if=/home/user01/db/ADBSTBL of=/home/user01/db_bkup/ADBSTBL bs=524288 dd if=/home/user01/db/ADBUTBL01 of=/home/user01/db_bkup/ADBUTBL01 bs=524288 dd if=/home/user01/db/ADBUIDX01 of=/home/user01/db_bkup/ADBUIDX01 bs=524288
バックアップの取得先ディレクトリは/home/user01/db_bkupです。
システムディレクトリが$DBDIR/ADBSYSにマウントされていない場合は,OSのmountコマンドを実行してマウントしてください。
なお,ブロックスペシャルファイルのデータをバックアップする場合,ボリューム全体をコピーするため,実際の使用量よりもバックアップ容量が増えます。
アーカイブディレクトリのバックアップの取得
cp -r /home/user01/archive /home/user01/archive_bkup
アーカイブマルチチャンク表を定義している場合は,アーカイブディレクトリのバックアップを取得する必要があります。
アーカイブディレクトリをNFSサーバ上に作成している場合は,アーカイブディレクトリのバックアップをスレーブノードで取得する必要はありません。
-
マルチノード構成のHADBサーバを開始する※2
adbstart
hadb01〜hadb03の全ノードで,adbstartコマンドおよびHAモニタのmonbeginコマンドを実行してください。adbstartコマンドの実行後,別ターミナル(コマンド入力画面)から,HAモニタのmonbeginコマンドを実行してください。
- 注意事項
-
adbstartコマンドが終了する前に,monbeginコマンドを実行してください。
monbegin
- 注※1
-
手順1.は,次の方法で代替することもできます。
マスタノードのhadb01でadbchgsrvmodeコマンドを実行し,マスタノードのHADBサーバの稼働モードを静止モードに変更します。
adbchgsrvmode --quiescence
- 注※2
-
手順1.で注※1の方法を実施した場合は,マスタノードのhadb01でadbchgsrvmodeコマンドを実行し,マスタノードのHADBサーバの稼働モードを通常モードに変更してください。
adbchgsrvmode --normal
(3) バックアップからの回復
バックアップからの回復手順を説明します。
手順
-
マルチノード構成のHADBサーバを終了する
adbstop KFAA90000-I adbstop processing started. KFAA91154-I The HADB system was terminated normally. KFAA90001-I adbstop processing ended. (return code = 0) monend
マスタノードのhadb01でadbstopコマンドを実行し,全ノードのHADBサーバが正常終了したあとに,HAモニタのmonendコマンドを実行してください。
-
OSのコマンドでデータベースを回復する
OSのcpコマンドおよびddコマンドをマスタノードのhadb01で実行し,バックアップからDBディレクトリとアーカイブディレクトリを回復します。
DBディレクトリの回復
cp -r /home/user01/db_bkup/ADBSYS /home/user01/db/ADBSYS dd if=/home/user01/db_bkup/ADBMST of=/home/user01/db/ADBMST bs=524288 dd if=/home/user01/db_bkup/ADBDIC of=/home/user01/db/ADBDIC bs=524288 dd if=/home/user01/db_bkup/ADBSTBL of=/home/user01/db/ADBSTBL bs=524288 dd if=/home/user01/db_bkup/ADBUTBL01 of=/home/user01/db/ADBUTBL01 bs=524288 dd if=/home/user01/db_bkup/ADBUIDX01 of=/home/user01/db/ADBUIDX01 bs=524288
バックアップファイルの格納ディレクトリは,/home/user01/db_bkupです。
システムディレクトリが$DBDIR/ADBSYSにマウントされていない場合は,OSのmountコマンドを実行してマウントしてください。
アーカイブディレクトリの回復
rm -r /home/user01/archive/* cp -r /home/user01/archive_bkup/archive/* /home/user01/archive
アーカイブマルチチャンク表を定義している場合は,アーカイブディレクトリを回復する必要があります。
アーカイブディレクトリをNFSサーバ上に作成している場合は,スレーブノードでアーカイブディレクトリを回復する必要はありません。
-
マルチノード構成のHADBサーバを開始する
adbstart
hadb01〜hadb03の全ノードで,adbstartコマンドおよびHAモニタのmonbeginコマンドを実行してください。adbstartコマンドの実行後,別ターミナル(コマンド入力画面)から,HAモニタのmonbeginコマンドを実行してください。
- 注意事項
-
adbstartコマンドが終了する前に,monbeginコマンドを実行してください。
monbegin
マルチノード構成のHADBサーバの開始後,マスタノードのHADBサーバの稼働モードが静止モードの場合,マスタノードのhadb01でadbchgsrvmodeコマンドを実行し,マスタノードのHADBサーバの稼働モードを通常モードに変更してください。
adbchgsrvmode --normal