6. バックアップ運用設計を怠るべからず
6.11. アクセス禁止状態となる契機と対処方法
Symfoware Server べからず集
Symfoware Server べからず集
データベーススペースの運用情報にアクセス禁止状態が設定される契機
RDBコマンドで明示的にアクセス禁止状態を設定
rdbinh コマンドの-p オプションでデータベーススペース名を指定した場合、
指定したデータベーススペースの運用情報にアクセス禁止状態が設定されます。
ディスク装置の電源が未投入の状態でSymfoware/RDBを起動
ディスク装置の電源が未投入の状態でSymfoware/RDBを起動した場合、該当 ディスク装置に割り当てられたデータベーススペースの運用状態に、アクセス 禁止状態が設定されます。
データベーススペースが割り付けられているローデバイスの容量や属性を変 更
Symfoware/RDBが停止している状態で、データベーススペースの割り付けら
れているローデバイスの容量や属性を変更した後、Symfoware/RDBを起動し た場合、該当ローデバイスに割り当てられたデータベーススペースの運用情報 にアクセス禁止状態が設定されます。
対処方法
上記で説明したアクセス禁止状態になる契機ごとの対処方法を以下に示します。
DSIの運用情報にアクセス禁止状態が設定された場合の対処方法
利用者がRDBコマンドで明示的に設定したアクセス禁止状態の場合 対象のDSIの特定方法:
rdbinfコマンドでアクセス禁止状態のDSIの一覧を表示し、閉塞種別がCMD
であるDSIを特定します。
対処方法:
特定したDSIに対し、rdbpmtコマンドでアクセス禁止状態を解除します。
更新ログの取得を行わないデータベースの更新を行う RDB コマンドが異常 終了した場合
rdbinf -l inh -a
コマンド出力例:
# rdbinf -l inh -a DB0000.DSIT0,CMD DB0000.DSIT1,CMD ~ ~ ~ DB0000.DSIT9,CMD
閉塞種別が「CMD」なのでRDBコマンドに よるアクセス禁止状態であることが確 認できます
アクセス禁止状態のDSI名
Symfoware Server べからず集 対象のDSIの特定方法:
イベントログまたは、メッセージログファイルに出力される以下のメッセージ から、アクセス禁止状態のDSIを特定します。
qdg03400u:ロールバックが不可能なため データベースをアクセス禁止状態に
しました DB名='s*' DSI名='t*' u*
qdg13217u:行の追加処理に失敗したため データベースをアクセス禁止状態に
しました DB名='s*' DSI名='t*' u*
(s*: データベース名,t*: DSI名,u*: RDBシステム名)
qdg03400uは該当のコマンドすべてで発生する可能性があります。qdg13217u
はrdbsaloaderコマンドだけで発生する可能性があります。
対処方法:
特定したDSIに対し、「6.11.3. 備考」で示すマニュアルの「コマンドがエラ
ーになった場合のロールバック不可からのリカバリ」 に従い対処します。
上記マニュアル記事の 「◆コマンドごとのリカバリ操作」 に記述の “DSI の状態” は以下の方法で判定します。
コマンド異常終了時に出力されたエラーメッセージ qdg03400u 内に出力され たDSI:ロールバック異常
コマンド異常終了時に出力されたエラーメッセージ qdg13217u 内に出力され たDSI:追記処理の異常
リカバリを適用しない運用のDSIに対するデータベースの更新が異常終了し た場合
対象のDSIの特定方法:
イベントログまたは、メッセージログファイルに出力される以下のメッセージ から、アクセス禁止状態のDSIを特定します。
qdg03400u:ロールバックが不可能なため データベースをアクセス禁止状態に
しました DB名='s*' DSI名='t*' u*
(s*: データベース名,t*: DSI名,u*: RDBシステム名) 対処方法:
特定したDSIに対し、「6.11.3. 備考」で示すマニュアルの「ロールバック不
可からのリカバリ」 に従い対処します。
ただし、DSI名が “_TEMP” で始まる場合、そのDSIは一時表のDSI名で
あり、次回の一時表の利用時にSymfoware/RDBが初期化して使用可能状態に するため、ユーザの対処は不要です。
データベーススペースの運用情報にアクセス禁止状態が設定された場合の対処 方法
Symfoware Server べからず集
rdbinf コマンドでアクセス禁止状態のデータベーススペースの情報を表示し、
閉塞種別がCMDであるデータベーススペースを特定します。
対処方法:
特定したデータベーススペースに対し、rdbpmt コマンドでアクセス禁止状態 を解除します。
ディスク装置の電源が未投入の状態でSymfoware/RDBを起動した場合 対象のデータベーススペースの特定方法:
電源が未投入のディスクに配置されているデータベーススペースの特定 イベントログまたは、メッセージログファイルに出力される以下のメッセージ から、アクセス禁止状態のデータベーススペースを特定します。
qdg12079e:データベーススペース's*.t*'のデバイスが削除されています デバ
イス名='u*' v*
(s*: データベース名 t*: データベーススペース名u*: デバイス名v*: RDBシ ステム名)
対処方法:
特定したデータベーススペースに対し、「6.11.3. 備考」 で示すマニュアルの
「起動時のデータベーススペースのアクセス禁止状態からのリカバリ方法」に 従い対処します。
データベーススペースが割り付けられているローデバイスの容量や属性が変 更されている状態でSymfoware/RDBを起動した場合
対象のデータベーススペースの特定方法:
割付先ローデバイスの容量または属性に変更があったデータベーススペース rdbinf -p データベース名.データベーススペース名 -a
確認対象のデータベーススペース名は、「rdbspcinf -d データベース名」で確認できます
コマンド出力例:
# rdbinf -p DB0000.DBS0 -a
~ ~ ~ ~ ~ ~ ~ DBspace : DBS0
Cond State Cause Used Free Size ACT INH/DBS CMD 20% 80% 104857600 ~ ~ ~ ~ ~ ~ ~
StateがINHならアクセス禁止の
データベーススペース Causeが「CMD」なのでRDBコマンドによる アクセス禁止状態であることが確認可能
Symfoware Server べからず集 の特定
イベントログまたはメッセージログファイルに出力される以下のエラーメッ セージから、アクセス禁止状態のデータベーススペースを特定します。
qdg12353e:データベーススペース's*.t*'のデバイスの属性が変更されています
デバイス名='u*' v*
qdg12354e:データベーススペース's*.t*'のデバイスの容量が小さく変更されて
います デバイス名='u*' v*
qdg12355e:データベーススペース's*.t*'のデバイスの容量が大きく変更されて
います デバイス名='u*' v*
(s*: データベース名 t*: データベーススペース名u*: デバイス名v*: RDBシ ステム名)
事象に合わせて上記いずれかのメッセージが出力されます。
対処方法:
特定したデータベーススペースに対し、「6.11.3. 備考」 で示すマニュアルの
「媒体障害からのリカバリ方法」 に従い対処します。
補足
上 記 に 記 載 以 外 の エ ラ ー メ ッ セ ー ジ が 出 力 さ れ た 場 合 に お い て も 、
Symfoware/RDBの資源が何らかの原因で破壊された可能性があります。
そのため、「6.11.3. 備考」 で示すマニュアルの 「異常時のシステムメッセージ とリカバリ方法」 を参照し、該当するエラーメッセージが出力されている場合 は、記事の内容に従い対処してください。
6.11.2. 未対処時の影響 (1) 現象分類
機能の異常/処理結果異常 (2) 現象/原因
対象の資源の状態がアクセス禁止状態の場合は、SQL文またはRDBコマンドが、以 下のメッセージを出力して異常終了する場合があります。
JYP4934E:DSI“DSI名”がアクセス禁止状態です。
JYP5011E:スキーマ“スキーマ名”の表“表名”内に定義されているDSI“DSI名”
がアクセス禁止状態です。
RDB コマンドで明示的にアクセス禁止情報を設定し、SQL文を実行した場合、上記 エラーメッセージのいずれかに加え、以下のエラーメッセージを出力し、異常終了す る場合があります。
JYP4932E:データベーススペース“データベーススペース名”がアクセス禁止状態
Symfoware Server べからず集 6.11.3. 備考
Symfoware Server RDB運用ガイド 5 媒体障害からのリカバリ
11.1.2 異常時のシステムメッセージとリカバリ方法
11.7.1 ロールバック不可からのリカバリ
11.7.2 コマンドがエラーになった場合のロールバック不可からのリカバリ
11.8 起動時のデータベーススペースのアクセス禁止状態からのリカバリ方法
Symfoware Server コマンドリファレンス 2.31 rdbinf
2.32 rdbinh 2.44 rdbprt 2.51 rdbrcv 2.56 rdbrtr 2.57 rdbsaloader 2.61 rdbsloader 2.65 rdbsuloader 2.71 rdbunl
Symfoware Server べからず集