2.105.1 pdrdconstckの形式と規則
(1) 機能
インナレプリカグループ内のRDエリアの構成情報の整合性をチェックし,差異を検出します。また,RDエリアの構成情報を出力します。このコマンドは,ディクショナリ表からRDエリアの構成情報を検索し,オリジナルRDエリアとレプリカRDエリアの差異を確認することで,整合性のチェックを行います。このコマンドでチェック対象とするディクショナリ表及び列名を次に示します。
ディクショナリ表 |
列名 |
データ型 |
内容 |
---|---|---|---|
SQL_RDAREAS |
SQL_RDAREAS |
INTEGER |
ページ長(単位:バイト)。 |
SEGMENT_SIZE |
INTEGER |
セグメントサイズ(単位:ページ)。 |
|
FILE_COUNT |
INTEGER |
HiRDBファイル数。 |
|
EXTENSION |
CHAR(1) |
RDエリアの増分指定有無。 U:指定あり N:指定なし |
|
EXTENSION_SEGMENT_SIZE |
INTEGER |
増分セグメント数。 RDエリアの増分指定がない場合はナル値となります。 |
|
SQL_PHYSICAL_FILES |
PHYSICAL_FILE_NAME |
VARCHAR(167) |
HiRDBファイル名。 |
INITIAL_SIZE |
INTEGER |
HiRDBファイルのセグメント数。 |
|
PHYSICAL_FILE_ID |
INTEGER |
物理ファイルID。 |
(2) 実行者
HiRDB管理者が実行できます。
(3) 形式
(a) インナレプリカグループ内のRDエリアを指定する場合
pdrdconstck {-r ALL|-r RDエリア名} 〔-u 認可識別子〕 〔-o ファイル名〔-x 〔-y〕〕〕
(b) インナレプリカグループに含まれないRDエリアを指定する場合
pdrdconstck {-r ALL -n|-r RDエリア名} 〔-u 認可識別子〕 -o ファイル名 〔-x 〔-y〕〕
(4) オプション
(a) -r ALL(-n指定なし)
すべてのインナレプリカグループ内のRDエリアの整合性チェックを実施し,更にRDエリアの構成情報を出力します。
(b) -r ALL(-n指定あり)
インナレプリカグループに含まれないすべてのユーザRDエリア,ユーザLOB用RDエリアの構成情報を出力します。RDエリアの構成情報出力だけを行い,RDエリアの構成情報の整合性チェックは実施しません。
(c) -r RDエリア名
- インナレプリカグループ内のRDエリアを指定した場合
-
指定したRDエリアを含むインナレプリカグループ内のRDエリアの整合性チェックを実施し,更にRD エリアの構成情報を出力します。
- インナレプリカグループに含まれないRDエリアを指定した場合
-
指定したユーザRDエリア,ユーザLOB用RDエリアを対象に,RDエリアの構成情報出力を実施します。RDエリアの構成情報の整合性チェックは実施しません。
(d) -u 認可識別子
ディクショナリ表を検索するユーザの認可識別子を指定します。DBA権限を持つユーザを指定する必要があります。
このオプションを指定すると,パスワード入力要求の応答付きメッセージが出力されます。認可識別子,パスワードを引用符(")で囲んだ場合は,英字の大文字と小文字を区別しますが,引用符(")で囲まない場合はすべて大文字として扱います。
このオプションを省略した場合,環境変数PDUSERの設定値が仮定されます。このオプションを省略し,かつ環境変数PDUSERも設定していない場合,このコマンドは実行できません。
(e) -o ファイル名
RDエリアの構成情報を出力するファイル名を絶対パス名で指定します。
- -r ALL(-n指定なし),又は-r RDエリア名でインナレプリカグループ内のRDエリアを指定した場合
-
このオプションを省略した場合,RDエリアの構成情報出力は行わず,整合性チェックの結果を標準出力にだけ出力します。
- -r ALL(-n指定あり),又は-r RDエリア名でインナレプリカグループに含まれないRDエリアを指定した場合
-
このオプションを省略した場合,オプション指定エラーとなります。
(f) -x
CSV形式で情報を出力する場合に指定します。指定しない場合,テキスト形式で情報を出力します。このオプションは,-oオプションを指定した場合だけ有効となります。
(g) -y
-xオプション指定時にヘッダ(項目名)を付ける場合に指定します。
(5) 規則
-
pdrdconstckコマンドは,HiRDB稼働中のときだけ実行できます。
-
pdrdconstckコマンドは,シングルサーバ又はディクショナリサーバを定義しているユニットで実行してください。
-
pdrdconstckコマンド実行時は,環境変数PDHOST,PDNAMEPORTを設定してください。
(6) 出力形式
(a) -xオプション省略時
pdrdconstck VV-RR *** RDAREA INFORMATION *** YYYY-MM-DD hh:mm:ss ...1 ----- ...2 [RDAREA_NAME=aa....aa, RDAREA_ID=bb....bb, GENERATION_NUMBER=cc....cc] ...3 SQL_RDAREAS ...3 PAGE_SIZE=dd....dd ...3 SEGMENT_SIZE=ee....ee ...3 FILE_COUNT=ff....ff ...3 EXTENSION=gg....gg ...3 EXTENSION_SEGMENT_SIZE=hh....hh ...3 SQL_PHYSICAL_FILES ...3,4 PHYSICAL_FILE_NAME=ii....ii ...3,4 INITIAL_SIZE=jj....jj ...3,4 PHYSICAL_FILE_ID=kk....kk ...3,4 : ...3,4 : ...3,4 ...3 ----- ...2 [RDAREA ll....ll, mm....mm CHECK RESULT] ...5 nn....nn ...5 ...5
- [説明]
-
-
ヘッダ情報です。
-
区切り記号です。RDエリアの整合性チェック及び構成情報のファイル出力をする場合,インナレプリカグループごとに表示します。構成情報のファイル出力だけをする場合,表示しません。
-
ディクショナリ表中のRDエリア構成情報です。コマンドの実行対象となるRDエリアをすべて表示します。インナレプリカグループ内のRDエリアの整合性チェックをする場合,オリジナルRDエリア,レプリカRDエリアの順に出力を行います。レプリカRDエリアが複数存在する場合,すべてのレプリカRDエリアを表示します。
-
HiRDBファイルに関するRDエリア構成情報です。RDエリア内に複数のHiRDBファイルが存在する場合,すべてのHiRDBファイルを表示します。
-
整合性チェックの結果です。RDエリアの整合性チェック及び構成情報のファイル出力をする場合,表示します。レプリカRDエリアが複数存在する場合,すべてのレプリカRDエリアを表示します。構成情報のファイル出力だけをする場合,表示しません。
-
- VV-RR:
-
HiRDBのバージョン情報
- YYYY-MM-DD hh:mm:ss:
-
コマンド実行日時(年月日時分秒)
- aa....aa:
-
RDエリア名
- bb....bb:
-
RDエリアID
- cc....cc:
-
世代番号
インナレプリカグループに含まれないRDエリアを指定した場合,世代番号はナル値となるため,「, GENERATION_NUMBER=cc....cc」は出力しません。
- dd....dd:
-
ページ長(単位:バイト)
- ee....ee:
-
セグメントサイズ(単位:ページ)
- ff....ff:
-
HiRDBファイル数
- gg...gg:
-
RDエリアの増分指定有無
U:指定あり
N:指定なし
- hh...hh:
-
増分セグメント数
RDエリアの増分指定がない場合はナル値となるため,空文字を出力します。
- ii...ii:
-
HiRDBファイル名
- jj...jj:
-
HiRDBファイルのセグメント数
- kk...kk:
-
物理ファイルID
- ll...ll:
-
オリジナルRDエリア名
- mm...mm:
-
レプリカRDエリア名
- nn...nn:
-
チェック結果
表示内容
チェック結果
Configuration information matched.
構成情報一致
*Configuration information unmatched.
構成情報不一致
インナレプリカRDエリアで,ディクショナリ表中のRDエリアの構成情報に差分が発生した箇所では,列名の直前の半角空白を「*」に置き換えて表示します。HiRDBファイル名については,ファイル名が異なる場合だけ「*」を表示します。ファイル名以外の箇所が異なる場合,「*」には置き換えません。オリジナルRDエリアにだけ存在する物理ファイルが存在した場合,「*Some physical files not created, PHYSICAL_FILE_NAME={ファイル名}」行を出力します。
- <出力例>
-
「-r RDエリア名」オプションを使用し,整合性に問題が無かった場合
pdrdconstck 10-06 *** RDAREA INFORMATION *** 2022-09-01 10:00:00 ----- [RDAREA_NAME=USER1, RDAREA_ID=10, GENERATION_NUMBER=0] SQL_RDAREAS PAGE_SIZE=4096 SEGMENT_SIZE=80 FILE_COUNT=2 EXTENSION=U EXTENSION_SEGMENT_SIZE=10 SQL_PHYSICAL_FILES PHYSICAL_FILE_NAME=/users/HiRDB/db/DB1/rdusr101 INITIAL_SIZE=10 PHYSICAL_FILE_ID=0 PHYSICAL_FILE_NAME=/users/HiRDB/db/DB2/rdusr201 INITIAL_SIZE=15 PHYSICAL_FILE_ID=1 [RDAREA_NAME=USER1GN1, RDAREA_ID=21, GENERATION_NUMBER=1] SQL_RDAREAS PAGE_SIZE=4096 SEGMENT_SIZE=80 FILE_COUNT=2 EXTENSION=U EXTENSION_SEGMENT_SIZE=10 SQL_PHYSICAL_FILES PHYSICAL_FILE_NAME=/users/HiRDB/db/DB1GN1/rdusr101 INITIAL_SIZE=10 PHYSICAL_FILE_ID=0 PHYSICAL_FILE_NAME=/users/HiRDB/db/DB2GN1/rdusr201 INITIAL_SIZE=15 PHYSICAL_FILE_ID=1 ----- [RDAREA USER1, USER1GN1 CHECK RESULT] Configuration information matched.
「-r RDエリア名」オプションを使用し,整合性に問題があった場合
pdrdconstck 10-06 *** RDAREA INFORMATION *** 2022-09-01 11:00:00 ----- [RDAREA_NAME=USER1, RDAREA_ID=10, GENERATION_NUMBER=0] SQL_RDAREAS PAGE_SIZE=4096 SEGMENT_SIZE=80 FILE_COUNT=3 EXTENSION=U EXTENSION_SEGMENT_SIZE=10 SQL_PHYSICAL_FILES PHYSICAL_FILE_NAME=/users/HiRDB/db/DB1/rdusr101 INITIAL_SIZE=10 PHYSICAL_FILE_ID=0 PHYSICAL_FILE_NAME=/users/HiRDB/db/DB2/rdusr202 INITIAL_SIZE=15 PHYSICAL_FILE_ID=1 PHYSICAL_FILE_NAME=/users/HiRDB/db/DB2/rdusr302 INITIAL_SIZE=15 PHYSICAL_FILE_ID=2 [RDAREA_NAME=USER1GN1, RDAREA_ID=21, GENERATION_NUMBER=1] SQL_RDAREAS PAGE_SIZE=4096 SEGMENT_SIZE=80 *FILE_COUNT=2 EXTENSION=U *EXTENSION_SEGMENT_SIZE=20 SQL_PHYSICAL_FILES PHYSICAL_FILE_NAME=/users/HiRDB/db/DB1GN1/rdusr101 INITIAL_SIZE=10 PHYSICAL_FILE_ID=0 *PHYSICAL_FILE_NAME=/users/HiRDB/db/DB2GN1/rdusr201 *INITIAL_SIZE=15 *PHYSICAL_FILE_ID=1 *Some physical files not created, PHYSICAL_FILE_NAME=rdusr202 *Some physical files not created, PHYSICAL_FILE_NAME=rdusr302 ----- [RDAREA USER1, USER1GN1 CHECK RESULT] *Configuration information unmatched.
(b) CSV形式での出力形式(-x及び-yオプション指定時)
"CHECK_RESULT","RDAREA_NAME","RDAREA_ID","GENERATION_NUMBER","ORIGINAL_RDAREA_NAME","PAGE_SIZE","SEGMENT_SIZE","FILE_COUNT","EXTENSION","EXTENSION_SEGMENT_SIZE","PHYSICAL_FILE_NAME_1","INITIAL_SIZE_1","PHYSICAL_FILE_ID_1",…[CR]...1,2 "oo....oo","aa....aa",bb....bb,cc....cc,"pp....pp",dd....dd,ee....ee,ff....ff,"gg....gg",hh....hh,"ii....ii",jj....jj,kk....kk,…[CR]...1,3 : :
- [説明]
-
-
[CR]は,改行を表します。HiRDBファイル(2個目)〜HiRDBファイル(16個目)の記載は「…」で省略しています。
-
ディクショナリ表中のRDエリア構成情報の項目名です。-yオプション指定時だけ出力します。
-
ディクショナリ表中のRDエリア構成情報です。表示する内容を次に示します。
項目名
内容
CHECK_RESULT
oo....oo : チェック結果
レプリカRDエリアのチェック結果で,整合性に問題が無かった場合「Matched」,整合性に問題があった場合「*Unmatched」を表示します。
オリジナルRDエリアか,又はインナレプリカグループ外のRDエリアである場合,空要素を表示します。
RDAREA_NAME
aa....aa : RDエリア名
RDAREA_ID
bb....bb : RDエリアID
GENERATION_NUMBER
cc....cc : 世代番号
インナレプリカグループに含まれないRDエリアを指定した場合,空要素を表示します。
ORIGINAL_RDAREA_NAME
pp....pp : オリジナルRDエリア名
オリジナルRDエリア及びレプリカRDエリアを指定した場合,オリジナルRDエリアを表示します。
インナレプリカグループに含まれないRDエリアを指定した場合,空要素を表示します。
PAGE_SIZE
dd....dd : ページ長(単位:バイト)
SEGMENT_SIZE
ee....ee : セグメントサイズ(単位:ページ)。
FILE_COUNT
ff....ff : HiRDBファイル数
EXTENSION
gg....gg : RDエリアVMの増分指定有無
U:指定あり
N:指定なし
EXTENSION_SEGMENT_SIZE
hh....hh : 増分セグメント数
RDエリアの増分指定がない場合はナル値となるため,空文字を出力します。
PHYSICAL_FILE_NAME_1
ii....ii : HiRDBファイル(1個目)のHiRDBファイル名
INITIAL_SIZE_1
jj....jj : HiRDBファイル(1個目)のセグメント数
PHYSICAL_FILE_ID_1
kk....kk : HiRDBファイル(1個目)の物理ファイルID
PHYSICAL_FILE_NAME_2
ii....ii : HiRDBファイル(2個目)のHiRDBファイル名
INITIAL_SIZE_2
jj....jj : HiRDBファイル(2個目)のセグメント数
PHYSICAL_FILE_ID_2
kk....kk : HiRDBファイル(2個目)の物理ファイルID
PHYSICAL_FILE_NAME_3
ii....ii : HiRDBファイル(3個目)のHiRDBファイル名
INITIAL_SIZE_3
jj....jj : HiRDBファイル(3個目)のセグメント数
PHYSICAL_FILE_ID_3
kk....kk : HiRDBファイル(3個目)の物理ファイルID
PHYSICAL_FILE_NAME_4
ii....ii : HiRDBファイル(4個目)のHiRDBファイル名
INITIAL_SIZE_4
jj....jj : HiRDBファイル(4個目)のセグメント数
PHYSICAL_FILE_ID_4
kk....kk : HiRDBファイル(4個目)の物理ファイルID
PHYSICAL_FILE_NAME_5
ii....ii : HiRDBファイル(5個目)のHiRDBファイル名
INITIAL_SIZE_5
jj....jj : HiRDBファイル(5個目)のセグメント数
PHYSICAL_FILE_ID_5
kk....kk : HiRDBファイル(5個目)の物理ファイルID
PHYSICAL_FILE_NAME_6
ii....ii : HiRDBファイル(6個目)のHiRDBファイル名
INITIAL_SIZE_6
jj....jj : HiRDBファイル(6個目)のセグメント数
PHYSICAL_FILE_ID_6
kk....kk : HiRDBファイル(6個目)の物理ファイルID
PHYSICAL_FILE_NAME_7
ii....ii : HiRDBファイル(7個目)のHiRDBファイル名
INITIAL_SIZE_7
jj....jj : HiRDBファイル(7個目)のセグメント数
PHYSICAL_FILE_ID_7
kk....kk : HiRDBファイル(7個目)の物理ファイルID
PHYSICAL_FILE_NAME_8
ii....ii : HiRDBファイル(8個目)のHiRDBファイル名
INITIAL_SIZE_8
jj....jj : HiRDBファイル(8個目)のセグメント数
PHYSICAL_FILE_ID_8
kk....kk : HiRDBファイル(8個目)の物理ファイルID
PHYSICAL_FILE_NAME_9
ii....ii : HiRDBファイル(9個目)のHiRDBファイル名
INITIAL_SIZE_9
jj....jj : HiRDBファイル(9個目)のセグメント数
PHYSICAL_FILE_ID_9
kk....kk : HiRDBファイル(9個目)の物理ファイルID
PHYSICAL_FILE_NAME_10
ii....ii : HiRDBファイル(10個目)のHiRDBファイル名
INITIAL_SIZE_10
jj....jj : HiRDBファイル(10個目)のセグメント数
PHYSICAL_FILE_ID_10
kk....kk : HiRDBファイル(10個目)の物理ファイルID
PHYSICAL_FILE_NAME_11
ii....ii : HiRDBファイル(11個目)のHiRDBファイル名
INITIAL_SIZE_11
jj....jj : HiRDBファイル(11個目)のセグメント数
PHYSICAL_FILE_ID_11
kk....kk : HiRDBファイル(11個目)の物理ファイルID
PHYSICAL_FILE_NAME_12
ii....ii : HiRDBファイル(12個目)のHiRDBファイル名
INITIAL_SIZE_12
jj....jj : HiRDBファイル(12個目)のセグメント数
PHYSICAL_FILE_ID_12
kk....kk : HiRDBファイル(12個目)の物理ファイルID
PHYSICAL_FILE_NAME_13
ii....ii : HiRDBファイル(13個目)のHiRDBファイル名
INITIAL_SIZE_13
jj....jj : HiRDBファイル(13個目)のセグメント数
PHYSICAL_FILE_ID_13
kk....kk : HiRDBファイル(13個目)の物理ファイルID
PHYSICAL_FILE_NAME_14
ii....ii : HiRDBファイル(14個目)のHiRDBファイル名
INITIAL_SIZE_14
jj....jj : HiRDBファイル(14個目)のセグメント数
PHYSICAL_FILE_ID_14
kk....kk : HiRDBファイル(14個目)の物理ファイルID
PHYSICAL_FILE_NAME_15
ii....ii : HiRDBファイル(15個目)のHiRDBファイル名
INITIAL_SIZE_15
jj....jj : HiRDBファイル(15個目)のセグメント数
PHYSICAL_FILE_ID_15
kk....kk : HiRDBファイル(15個目)の物理ファイルID
PHYSICAL_FILE_NAME_16
ii....ii : HiRDBファイル(16個目)のHiRDBファイル名
INITIAL_SIZE_16
jj....jj : HiRDBファイル(16個目)のセグメント数
PHYSICAL_FILE_ID_16
kk....kk : HiRDBファイル(16個目)の物理ファイルID
-
- [CSV形式での出力規則]
-
-
CSV形式での共通出力規則については,「コマンド実行結果をDAT形式で出力する場合の規則」を参照してください。
-
該当するHiRDBファイルが存在しない場合,空要素として表示します。
-
CSV形式では,テキスト形式で表示しているヘッダ情報は表示しません。また,列ごとの構成情報差分を示す情報(「*」及び「*Some physical files not created, PHYSICAL_FILE_NAME={ファイル名}」)も表示しません。
-
- <出力例>
-
「-r RDエリア名」オプションを使用し,整合性に問題が無かった場合
"CHECK_RESULT","RDAREA_NAME","RDAREA_ID","GENERATION_NUMBER","ORIGINAL_RDAREA_NAME","PAGE_SIZE","SEGMENT_SIZE","FILE_COUNT","EXTENSION","EXTENSION_SEGMENT_SIZE","PHYSICAL_FILE_NAME_1","INITIAL_SIZE_1","PHYSICAL_FILE_ID_1","PHYSICAL_FILE_NAME_2","INITIAL_SIZE_2","PHYSICAL_FILE_ID_2", …[CR]...1 "","USER1",10,0,"USER1",4096,80,2,"U",10,"/users/HiRDB/db/DB1/rdusr101",10,0,"/users/HiRDB/db/DB2/rdusr201",15,1, …[CR]...1 "Matched","USER1GN1",21,1,"USER1",4096,80,2,"U",10,"/users/HiRDB/db/DB1GN1/rdusr101",10,0,"/users/HiRDB/db/DB2GN1/rdusr201",15,1,…[CR]...1
- [説明]
-
-
[CR]は,改行を表します。HiRDBファイル(3個目)〜HiRDBファイル(16個目)の記載は「…」で省略しています。
-
「-r RDエリア名」オプションを使用し,整合性に問題があった場合
"CHECK_RESULT","RDAREA_NAME","RDAREA_ID","GENERATION_NUMBER","ORIGINAL_RDAREA_NAME","PAGE_SIZE","SEGMENT_SIZE","FILE_COUNT","EXTENSION","EXTENSION_SEGMENT_SIZE","PHYSICAL_FILE_NAME_1","INITIAL_SIZE_1","PHYSICAL_FILE_ID_1","PHYSICAL_FILE_NAME_2","INITIAL_SIZE_2","PHYSICAL_FILE_ID_2","PHYSICAL_FILE_NAME_3","INITIAL_SIZE_3","PHYSICAL_FILE_ID_3", …[CR]...1 "","USER1",10,0,"USER1",4096,80,3,"U",10,"/users/HiRDB/db/DB1/rdusr101",10,0,"/users/HiRDB/db/DB2/rdusr202",15,1,"/users/HiRDB/db/DB2/rdusr301",15,2, …[CR]...1 "*Unmatched","USER1GN1",21,1,"USER1",4096,80,2,"U",20,"/users/HiRDB/db/DB1GN1/rdusr101",10,0,"/users/HiRDB/db/DB2GN1/rdusr201",15,1,"",,, …[CR]...1
- [説明]
-
-
[CR]は,改行を表します。HiRDBファイル(4個目)〜HiRDBファイル(16個目)の記載は「…」で省略しています。
-
(7) 整合性に問題があるときの対処
整合性に問題があるときは,pdmodコマンドのdefine copy rdarea文を実行する必要があります。対処方法については,マニュアル「インナレプリカ機能 HiRDB Staticizer Option」の「インナレプリカグループ内のRDエリアの構成変更と構成情報の複写」を参照してください。
(8) 注意事項
-
pdrdconstckコマンドのリターンコードを次に示します。
0:正常終了(整合性に問題なし)
4:正常終了(整合性に問題あり)
8:異常終了(コマンド実行中にエラーが発生)
-
インナレプリカグループ内のRDエリア,又はディクショナリ表のどちらかを更新する操作とpdrdconstckコマンドを同時に実行すると,pdrdconstckコマンドで更新前の値を参照し,整合性が正常に判定されないことがあります。このため,同時に実行しないでください。
-
pdchpathfコマンドを実行した場合,pdchpathnコマンドを実行してディクショナリ表を更新してから,このコマンドを実行してください。
-
HiRDB接続時のパスワード秘匿化機能を使用している場合,クライアント環境定義PDAUTHTYPEを設定する必要があります。指定値については,マニュアル「HiRDB システム運用ガイド」の「HiRDB接続時のパスワード秘匿化機能の設定方法」を参照してください。
-
通信情報ファイルディレクトリ変更機能を使用している場合,クライアント環境定義 PDIPCFILEDIRに値を設定する必要があります。指定値については,マニュアル「HiRDB UAP開発ガイド」の「クライアント環境定義の設定内容」を参照してください。
-
pdrdconstckコマンド実行時には,データディクショナリ表のSQL_RDAREAS表, SQL_PHYSICAL_FILES表の検索を行います。検索時の排他オプションにはWITHOUT LOCK NOWAITを指定しているため,排他による待ちは発生しません。ただし,RDエリアが多数存在するHiRDB環境で「-r ALL」オプションを指定した場合,データディクショナリ表の検索に時間が掛かり,オンライン中の業務に影響を与える可能性があります。このようなHiRDB環境では,pdrdconstckコマンド実行による業務への影響を事前に確認してください。