32.2.3 自動反映方式のリードレプリカ構成の構築手順
自動反映方式でのリードレプリカ機能を適用するHiRDB環境の構築手順を次の表に示します。各作業の詳細については対応する節を参照してください。
|
内容 |
実行するDB |
|
|---|---|---|
|
更新DB |
参照DB |
|
|
ディスクの共有設定 |
○ |
○ |
|
更新DBのHiRDB環境構築 |
○ |
− |
|
更新DBのHiRDB構成確認 |
○ |
− |
|
更新DBのHiRDB起動 |
○ |
− |
|
更新DBのデータベース作成 |
○ |
− |
|
更新DBの静止化と反映開始位置情報の登録 |
○ |
− |
|
データベース複製に向けた更新DBの処置 |
○ |
− |
|
参照DBのHiRDB環境構築 |
− |
○ |
|
参照DBのHiRDB構成確認 |
− |
○ |
|
参照DBへのデータベース複製 |
○ |
○ |
|
更新DBのHiRDB起動又は静止化解除 |
○ |
− |
|
参照DBのHiRDB起動 |
− |
○ |
- (凡例)
-
○:実行するHiRDBシステムを表します。
−:該当しません。
- 〈この項の構成〉
(1) ディスクの共有設定
自動反映方式では,更新DBのシステムログファイルを参照DBで参照し,更新情報の反映処理をします。そのため,共有ディスク又はディスクのレプリケーションソフトウェアを使用して,更新DBと参照DBの間でディスクを共有してください。
なお,アクセス権限は次のとおりに設定してください。
|
HiRDBシステム |
共有ディスクに対するアクセス権限 |
|---|---|
|
更新DB |
書き込み,及び読み込み権限 |
|
参照DB |
読み込み権限 |
(2) 更新DBのHiRDB環境構築
更新DBのHiRDBシステムについて,HiRDBシステム定義の指定,及びHiRDBシステムファイルを作成して,HiRDBシステムを構築してください。更新DBのHiRDBシステム定義で指定する内容については,「参照DBで変更する項目」を参照してください。
なお,システムログファイルについては,(1)で設定したディスク上に作成してください。
(3) 更新DBのHiRDB構成確認
更新DBのHiRDB構成チェックには,pdconfchkコマンドを使用します。更新DBでpdconfchkコマンドを実行し,HiRDB定義に誤りがあれば訂正してください。また,pdconfchkコマンドではチェックできない項目はユーザでチェックしてください。pdconfchkコマンドの詳細については,マニュアル「HiRDBコマンドリファレンス」を参照してください。
(4) 更新DBのHiRDB起動
pdstartコマンドを使用し,更新DBを起動してください。
(5) 更新DBのデータベース作成
更新DBのデータベースを作成してください。データベースの作成方法については,マニュアル「HiRDBシステム導入・設計ガイド」を参照してください。
(6) 更新DBの静止化と反映開始位置情報の登録
参照DBへの更新ログ反映開始時に,反映対象システムログファイルの反映開始位置を特定する必要があります。そのため,次に示す手順で反映開始位置情報を登録しておくことで,参照DBデータベース複製の作業実施時に参照DB側で反映開始位置情報を取得できます。
|
フェーズ |
内容 |
|---|---|
|
更新DBの静止化※1 |
更新ログを取得しないよう,更新DBの全RDエリアを参照可能バックアップ閉塞(更新WAITモード)にします。 (コマンド例) pdhold -r all -b -w |
|
反映開始位置情報の登録※2 |
シンクポイント有効化時点のシステムログブロックの位置情報を,更新DBのマスタディレクトリ用RDエリアに登録します。 (コマンド例) pdlogswap -d sys -w -m 又は pdlogsync -d sys -w -m |
- 注※1
-
更新DBの静止化を実施しないで反映開始位置情報の登録だけ実施した場合,登録した以降に更新ログを取得すると,更新DB側のシンクポイント有効化位置が変更されます。そのため,マスタディレクトリ用RDエリアに登録されている反映開始位置情報との整合性が失われます。
この場合,参照DB起動時にKFPS01267-Eメッセージ(理由コード1003)を出力して起動処理に失敗します。「参照DBのデータベース再作成手順」を参照して参照DBのデータベースを再作成してください。
- 注※2
-
反映開始位置情報の登録を実施しなかった場合,KFPS01267-Eメッセージ(理由コード1003)を出力して,起動処理に失敗します。「参照DBのデータベース再作成手順」を参照して参照DBのデータベースを再作成してください。
(7) データベース複製に向けた更新DBの処置
参照DBへのデータベース複製をする場合,更新DBを停止して行う方法と,稼働中に行う方法があります。次に示すどちらかの手順で参照DBへデータベースを複製してください。
-
更新DB停止中にデータベース複製を行う場合
pdstopコマンドを実行して,更新DBを停止してください。
-
稼働中にデータベース複製を行う場合
特に作業は不要です。ただし,データベース複製完了後,「更新DBのHiRDB起動又は静止化解除」の手順に従って,更新DBの静止化を解除してください。
(8) 参照DBのHiRDB環境構築
参照DBのHiRDBシステムについて,HiRDBシステム定義,及びHiRDBシステムファイルを作成して,HiRDBシステムを構築してください。なお,参照DBのHiRDBシステム定義で指定する内容については「更新DBと参照DBで一致させる項目」及び「参照DBで変更する項目」を参照してください。
また,反映対象システムログファイルの配置とシステム定義の指定例と,更新DB・参照DBでのシステム定義の例を次の図に示します。
|
|
|
|
(9) 参照DBのHiRDB構成確認
参照DBのHiRDB構成チェックには,pdconfchkコマンドを使用します。参照DBでpdconfchkコマンドを実行し,HiRDB定義に誤りがあれば訂正してください。また,pdconfchkコマンドではチェックできない項目についてはユーザでチェックしてください。pdconfchkコマンドの詳細については,マニュアル「HiRDBコマンドリファレンス」を参照してください。
なお,「ディスクの共有設定」で共有した反映対象システムログファイルが参照できることを確認するため,pdflsコマンドでHiRDBファイルの内容が表示されることを確認してください。コマンドがエラー終了する場合は出力されたエラーメッセージに従って対処してください。
(10) 参照DBへのデータベース複製
参照DBは更新DBのシステムログを使って更新するため,更新DBと参照DBのデータベースの物理構造(ページ,セグメント等)を一致させる必要があります。そのため,参照DBの初期構築時,又は再作成時には,更新DBと参照DBのRDエリアの内容を次に示す範囲で一致させてください。
-
初期構築時:すべてのRDエリアを一致させてください。
-
再作成時:反映対象となる表を格納するRDエリアを一致させてください。各操作で更新されるRDエリアは,「同時にバックアップを取得する必要があるRDエリア」を参照してください。
また,更新DBと参照DBのファイルパスも一致させてください。次に,RDエリアの内容を一致させる方法の例を示します。この方法では,コピー元を更新DB,コピー先を参照DBとします。
- <HiRDBファイル単位で複製する場合>
-
-
HiRDBのpdfbkupコマンド,及びpdfrstrコマンドを使用して,HiRDBファイルをコピーします。
-
- <HiRDBファイルシステム領域単位で複製する場合>
-
反映対象外のRDエリアもコピーされることに注意し,次のどちらかの方法で複製してください。
-
HiRDBのpdfbkupコマンド,及びpdfrstrコマンドを使用して,HiRDBファイルシステム領域をコピーしてください。この場合,コピー先の参照DB側にあらかじめHiRDBファイルシステム領域を作成し,pdfrstrコマンドを実行します。
-
OSのコマンド(cpコマンド,及びddコマンド)を使用して,HiRDBファイルシステム領域をコピーします。
-
(11) 更新DBのHiRDB起動又は静止化解除
更新DBが停止中の場合,pdstartコマンドを実行して起動してください。
更新DBが稼働中,かつ静止化状態の場合は次のコマンドを実行して,参照可能バックアップ閉塞(更新WAITモード)を解除してください。
(コマンド例)
・pdrels -r all
・pdrels -r マスタディレクトリ用RDエリア名
(12) 参照DBのHiRDB起動
pdstartコマンドを実行し,参照DBを起動します。
なお,参照DB起動時にエラーメッセージが出力された場合は,メッセージの内容及び理由コードに従って対処してください。