高信頼性ログ機能のメディアリカバリについて説明します。
ユーザログに対するメディアリカバリは、アーカイブログを利用し、rdbrcvコマンドによって、DSI単位またはDSI内のエントリ単位にユーザログをリカバリします。
高信頼性ログ機能のメディアリカバリを行うには、アーカイブログ運用を行う必要があります。
■アーカイブログ適用によるリカバリ
rdbrcvコマンドのCYCLIC構造DSIモードによって、アーカイブログを順次適用して、最新状態までユーザログをリカバリすることができます。
■高信頼性ログ機能のリカバリ単位
高信頼性ログ機能のリカバリには、DSI全体をリカバリする方法とエントリ単位に局所的にリカバリする方法があります。
高信頼性ログ機能のエントリを複数のディスクに分散して配置している場合は、ディスク破壊が発生したボリュームに配置されているエントリだけを局所的にリカバリすることが可能なため、リカバリ時間を短縮することができます。また、リカバリ中でも他エントリに対する操作が可能なため、ユーザログの取得処理などを停止する必要はありません。
なお、ディスク破壊が発生したボリュームに配置されているエントリ通番を特定するためにはrdbinfコマンドを利用します。rdbinfコマンドを利用して、複数エントリのうちリカバリが必要な範囲を特定します。
DSI全体をリカバリする方法とエントリ単位に局所的にリカバリする方法の流れを以下に示します。
◆DSI全体をリカバリする方法
以下の図のエントリ1、エントリ2、エントリ3の数字は、エントリ通番を示しています。
$ rdbexspc -mdetach -p ユーザログDB.DBSP1 DBSP1ボリューム交換 $ rdbexspc -mattach -p ユーザログDB.DBSP1 $ rdbrcv -C -i ユーザログDB.ユーザログDSI -w /tmp |
> rdbexspc -mdetach -p ユーザログDB.DBSP1 DBSP1ボリューム交換 > rdbexspc -mattach -p ユーザログDB.DBSP1 > rdbrcv -C -i ユーザログDB.ユーザログDSI -w C:\TEMP |
◆エントリ単位に局所的にリカバリする方法
以下の図のエントリ1、エントリ2、エントリ3の数字は、エントリ通番を示しています。
$ rdbexspc -mdetach -p ユーザログDB.DBSP1 DBSP1ボリューム交換 $ rdbexspc -mattach -p ユーザログDB.DBSP1 $ rdbinf -i ユーザログDB.ユーザログDSI -c $ rdbrcv -C -i ユーザログDB.ユーザログDSI -e 1 -w /tmp |
> rdbexspc -mdetach -p ユーザログDB.DBSP1 DBSP1ボリューム交換 > rdbexspc -mattach -p ユーザログDB.DBSP1 > rdbinf -i ユーザログDB.ユーザログDSI -c > rdbrcv -C -i ユーザログDB.ユーザログDSI -e 1 -w C:\TEMP |
注意
アーカイブログの一部または全部が、ディスクの破壊などの原因によって欠損している場合は、エントリをリカバリすることはできません。rdbfmtコマンドによるDSIの初期化が必要となります。