2.99.1 pdrdreflsの形式と規則
(1) 機能
関連するRDエリアの情報を表示します。
pdrdreflsコマンドには,次の二つの機能があります。
-
関連するRDエリアの情報の表示
-
RDエリアの関連性のチェック
(2) 実行者
HiRDB管理者が実行できます。
(3) 形式
(a) 関連するRDエリアの情報の表示
pdrdrefls 〔-k dsp〕 -e org {-r RDエリア名〔,RDエリア名〕…|-r ALL |-t 〔認可識別子.〕表識別子} 〔-s サーバ名〔,サーバ名〕…〕 〔-l 〔-d 区切り文字〕〕 〔-a〕 〔-c 制約種別〕
(b) RDエリアの関連性のチェック
pdrdrefls -k chk -e org {-r RDエリア名〔,RDエリア名〕…|-r ALL} 〔-s サーバ名〔,サーバ名〕…〕 〔-c 制約種別〕
(4) オプション
(a) -k {dsp|chk}
実行するpdrdreflsコマンドの機能を指定します。
- dsp:
-
表を格納するすべてのRDエリア,及びRDエリア内にある資源(表,インデクス,及びLOB列)について,関連のあるRDエリアの情報を表示します。
- chk:
-
RDエリアの関連性をチェックします。関連するRDエリアが不足している場合,不足しているRDエリアの情報をメッセージで出力します。
(b) -e org
固定のオプションです。
(c) -r RDエリア名〔,RDエリア名〕… 〜<識別子>((1〜30))
処理対象のRDエリアの名称を指定します。また,更新可能なオンライン再編成を使用している場合は,オリジナルRDエリア名を指定してください。ただし,指定できるのはユーザ用RDエリア(一時表用RDエリアを除く)及びユーザLOB用RDエリアです。
RDエリアを指定する場合の規則については,「運用コマンド,ユティリティでのRDエリアの指定」を参照してください。
(d) -r ALL
すべてのユーザ用RDエリア(一時表用RDエリアを除く),及びユーザLOB用RDエリアを処理対象とする場合に指定します。
(e) -t 〔認可識別子.〕表識別子 〜<識別子>((認可識別子:1〜30,表識別子:1〜30))
処理対象の表の名称を指定します。
認可識別子を省略した場合,pdrdreflsコマンド実行時の環境変数PDUSERの認可識別子が仮定されます。環境変数PDUSERを設定していない場合,及び環境変数PDUSERの認可識別子とパスワードの両方に簡易認証キーワードを指定している※場合,ログインウィンドウのユーザ名が仮定されます。-tオプションの指定と環境変数PDUSERの設定によって有効となる認可識別子について次に示します。
-tオプションの認可識別子 |
環境変数PDUSERの設定内容 |
有効な認可識別子 |
---|---|---|
指定あり |
− |
-tオプションに指定された認可識別子 |
省略 |
認可識別子[/パスワード] |
環境変数PDUSERに指定された認可識別子 |
設定なし |
ログインウィンドウのユーザ名 |
|
認可識別子とパスワードの両方に簡易認証キーワードを指定 |
- 注※
-
OSログインユーザの簡易認証機能の有効,無効(システム共通定義のpd_os_authenticateオペランドの指定値)にかかわらず,環境変数PDUSERの設定内容で判断します。簡易認証キーワードについては,マニュアル「HiRDB Version 9 システム運用ガイド」の「OSログインユーザの簡易認証機能」を参照してください。
認可識別子及び表識別子を引用符(")で囲んだ場合は,英字の大文字と小文字が区別されますが,引用符(")で囲まない場合はすべて大文字として扱われます。なお,sh(Bourneシェル),csh(Cシェル),及びksh(Kシェル)の場合は,更にアポストロフィ(’)で囲む必要があります。
(f) -s サーバ名〔,サーバ名〕… 〜<識別子>((1〜8))
処理対象のサーバの名称を指定します。指定できるサーバの数は,最大128個です。
-k dspの場合,関連するRDエリアのうち,指定したサーバに定義されている情報だけを表示します。
-k chkの場合,-rオプションに指定したすべてのRDエリアが,指定したサーバに定義されているかどうかをチェックします。-rオプションに指定したすべてのRDエリアがその条件を満たしていない場合,そのRDエリア名をメッセージで出力し,エラー終了します。
指定するサーバ名は,pddbstのRDエリア単位の状態解析(論理的解析),又は表単位の状態解析で確認できます。
(g) -l
出力情報の各情報を改行しないで表示する場合に指定します。
(h) -d 区切り文字
-lオプション指定時の各情報の区切り文字を,半角1文字で指定します。
省略した場合は空白が仮定されます。
区切り文字としてアポストロフィ(')や引用符(")などの特殊文字を指定する場合,「\'」,「\"」と指定してください。エスケープ文字を区切り文字として指定する場合は,「\\」と指定してください。
(i) -a
すべての関連情報(サーバ名,RDエリア名,RDエリア種別,及び資源情報)を表示する場合に指定します。省略した場合,RDエリア名だけが表示されます。
(j) -c 制約種別
制約定義の「関連するRDエリアの情報」を表示又はチェックする場合に指定します。
- ref:
-
参照制約の「関連するRDエリアの情報」を表示又はチェックします。参照制約の関連するRDエリアとは,参照表又は被参照表を格納しているRDエリアに対して,世代番号を合わせて運用する必要のあるRDエリアのことです。参照制約の運用方法については,マニュアル「HiRDB Version 9 システム導入・設計ガイド」を参照してください。
(5) 規則
-
pdrdreflsコマンドは,HiRDBが稼働中のときだけ実行できます。
-
pdrdreflsコマンドは,シングルサーバ又はシステムマネジャがあるサーバマシンで実行してください。
(6) 注意事項
-
pdrdreflsコマンドの結果は,コマンド実行時のリターンコードで確認できます。リターンコードが0の場合は正常終了,4の場合は警告終了(解析対象の資源がありません),8の場合は異常終了です。
-
pdrdreflsコマンドの処理対象となるRDエリアに対して,表,インデクスの追加,削除,及び定義変更はしないでください。追加,削除,及び定義変更をした場合は,結果不正や異常終了となることがあります。
-
更新可能なオンライン再編成を使用している場合,pdrdreflsコマンドで関連するRDエリアの情報を取得し,取得した情報をコマンド又はユティリティの入力に使用するとき,関連するRDエリアの情報を取得してからコマンド又はユティリティを実行するまでの間に,RDエリアの名称を変更しないでください。名称を変更してしまうと,指定されたRDエリアが見つからないとして,エラーになる場合があります。エラーとなった場合は,コマンド又はユティリティに指定したRDエリア名称を変更後のRDエリア名称に修正した後で,再度コマンド又はユティリティを実行してください。
(7) 出力形式
〔説明〕
- サーバ名(最大8バイト):
-
関連するRDエリアがあるサーバの名称です。
- RDエリア名(最大32バイト):
-
関連するRDエリアの名称です。RDエリア名は引用符(")で囲んで表示されます。
- RDエリア種別(最大8バイト):
-
RDエリアの種別です。
USER:ユーザ用RDエリア
USER_LOB:ユーザLOB用RDエリア
- 資源種別(3バイト):
-
資源の種別です。
TBL:表
IDX:インデクス
LOB:LOB列
- 資源名(最大65バイト):
-
該当するRDエリアに格納されている資源の名称です。資源名は引用符で囲んで表示されます。
資源種別がTBLの場合:認可識別子.表識別子
資源種別がIDXの場合:認可識別子.インデクス識別子
資源種別がLOBの場合:LOB列名,又はLOB属性の抽象データ型列名
- 関連資源名(最大67バイト):
-
資源種別がIDX又はLOBの資源の関連資源名です。関連資源名は(認可識別子.表識別子)の形式で表示され,引用符で囲まれます。
- 制約による関連資源名(最大69バイト):
-
資源種別がTBLの資源に対して,制約定義によって関連する資源の名称です。この情報は,-cオプションを指定した場合だけ表示されます。-c refを指定した場合は,披参照表名称が表示されます。制約による関連資源名は,引用符(")で囲んで表示されます。
(8) 使用例
更新可能なオンライン再編成を使用している場合に,関連するRDエリアの情報を表示します。なお,-dオプションを省略しています。また,実行結果の△は1バイトの空白を表します。
-
RDエリアの構成
-
実行結果
-
pdrdrefls -e org -r RD01 -aの場合
SERVER NAME : BES1 RDAREA NAME : "RD01" AREA TYPE : USER RESOURCE : TBL : "user1"."TBL1" "user2"."TBL2" "user1"."TBL3" IDX : "user1"."IDX1" ("user1"."TBL1") "user1"."IDX3" ("user1"."TBL3") RDAREA NAME : "RD02" AREA TYPE : USER RESOURCE : TBL : "user2"."TBL2" "user1"."TBL3" IDX : "user2"."IDX2" ("user2"."TBL2") "user1"."IDX3" ("user1"."TBL3") RDAREA NAME : "RD04" ┐ AREA TYPE : USER │ RESOURCE : TBL : "user1"."TBL4" ├ ※ -><"user1"."TBL1"> │ IDX : "user1"."IDX4" │ ("user1"."TBL4") ┘ RDAREA NAME : "LOB01" AREA TYPE : USER_LOB RESOURCE : LOB : "COL1" ("user1"."TBL1")
注※ -c refを指定した場合だけ表示されます。
-
pdrdrefls -e org -r RD01の場合
RDAREA NAME : "RD01" RDAREA NAME : "RD02" RDAREA NAME : "RD04" ※ RDAREA NAME : "LOB01"
注※ -c refを指定した場合だけ表示されます。
-
pdrdrefls -e org -r RD01 -l -aの場合
BES1△"RD01"△USER△TBL△"user1"."TBL1" BES1△"RD01"△USER△TBL△"user2"."TBL2" BES1△"RD01"△USER△TBL△"user1"."TBL3" BES1△"RD01"△USER△IDX△"user1"."IDX1"△"user1"."TBL1" BES1△"RD01"△USER△IDX△"user1"."IDX3"△"user1"."TBL3" BES1△"LOB01"△USER_LOB△LOB△"COL1"△"user1"."TBL1" BES1△"RD02"△USER△TBL△"user2"."TBL2" BES1△"RD02"△USER△TBL△"user1"."TBL3" BES1△"RD02"△USER△IDX△"user2"."IDX2"△"user2"."TBL2" BES1△"RD02"△USER△IDX△"user1"."IDX3"△"user1"."TBL3" BES1△"RD04"△USER△TBL△"user1"."TBL4"△ "user1"."TBL1" ※ BES1△"RD04"△USER△IDX△"user1"."IDX4"△ "user1"."TBL4" ※
注※ -c refを指定した場合だけ表示されます。
-
pdrdrefls -e org -r RD01 -lの場合
"RD01"△"RD02"△"LOB01"△"RD04" ※
注※ -c refを指定した場合だけ表示されます。
-
pdrdrefls -e org -r RD02 -aの場合
SERVER NAME : BES1 RDAREA NAME : "RD02" AREA TYPE : USER RESOURCE : TBL : "user2"."TBL2" "user1"."TBL3" IDX : "user2"."IDX2" ("user2"."TBL2") "user1"."IDX3" ("user1"."TBL3") RDAREA NAME : "RD01" AREA TYPE : USER RESOURCE : TBL : "user1"."TBL1" "user2"."TBL2" "user1"."TBL3" IDX : "user1"."IDX1" ("user1"."TBL1") "user1"."IDX3" ("user1"."TBL3") RDAREA NAME : "RD04" ┐ AREA TYPE : USER │ RESOURCE : TBL : "user1"."TBL4" ├ ※ -><"user1"."TBL1"> │ IDX : "user1"."IDX4" │ ("user1"."TBL4") ┘ RDAREA NAME : "LOB01" AREA TYPE : USER_LOB RESOURCE : LOB : "COL1" ("user1"."TBL1")
注※ -c refを指定した場合だけ表示されます。
-
pdrdrefls -e org -r RD03 -aの場合
SERVER NAME : BES2 RDAREA NAME : "RD03" AREA TYPE : USER RESOURCE : TBL : "user1"."TBL3 IDX : "user1"."IDX3" ("user1"."TBL3")
-
pdrdrefls -e org -r RD04 -aの場合
SERVER NAME : BES1 RDAREA NAME : "RD04" AREA TYPE : USER RESOURCE : TBL : "user1"."TBL4" -><"user1"."TBL1"> ※ IDX : "user1"."IDX4" ("user1"."TBL4") RDAREA NAME : "RD01" ┐ AREA TYPE : USER │ RESOURCE : TBL : "user1"."TBL1" │ "user2"."TBL2" │ "user1"."TBL3" │ IDX : "user1"."IDX1" │ ("user1"."TBL1") │ "user1"."IDX3" │ ("user1"."TBL3") │ RDAREA NAME : "RD02" ├ ※ AREA TYPE : USER │ RESOURCE : TBL : "user2"."TBL2" │ "user1"."TBL3" │ IDX : "user2"."IDX2" │ ("user2"."TBL2") │ "user1"."IDX3" │ ("user1"."TBL3") │ RDAREA NAME : "LOB01" │ AREA TYPE : USER_LOB │ RESOURCE : LOB : "COL1" │ ("user1"."TBL1") ┘
注※ -c refを指定した場合だけ表示されます。