20.3.1 create rdarea文
create rdarea RDエリア名 〔globalbuffer グローバルバッファ名〕 for {registry|LOB used by HiRDB(SQL_REGISTRY)} 〔page ページ長 characters〕 〔storage control segment セグメントサイズ pages〕 〔extension {use 増分セグメント数 segments|nouse}〕 file name "HiRDBファイルシステム領域名/HiRDBファイル名" initial HiRDBファイル内セグメント数 segments 〔file name "HiRDBファイルシステム領域名/HiRDBファイル名" initial HiRDBファイル内セグメント数 segments〕… ;
- 〈この項の構成〉
(1) RDエリア名
〜<識別子>((1〜30))
HiRDBで使用するRDエリアの名称を指定します。RDエリア名にALLは指定できません。RDエリア名を引用符(")で囲んだ場合は,英字の大文字と小文字が区別されますが,引用符で囲まない場合はすべて大文字として扱われます。
- (例)
-
-
create rdarea "pdbuser01" for …
この場合,RDエリア名はpdbuser01で扱われます。
-
create rdarea pdbuser01 for …
この場合,RDエリア名はPDBUSER01で扱われます。
-
(2) globalbuffer グローバルバッファ名
〜<識別子>((1〜16))
追加したRDエリアに一時的にグローバルバッファを割り当てたい場合に,HiRDBシステムにある(HiRDB/パラレルサーバの場合は,ディクショナリサーバにある)グローバルバッファ名を指定します。ただし,インデクス用のグローバルバッファは指定できません。グローバルバッファについては,pdbuflsコマンドで確認できます。
- <規則>
-
-
レジストリ用RDエリアを追加するときは,このオペランドは必ず指定します。
-
指定するグローバルバッファのグローバルバッファ長は,追加するRDエリアのページ長以上とします。グローバルバッファ長については,pdbuflsコマンドで確認できます。
-
グローバルバッファ長は,システム共通定義のpdbuffer文の-lオペランドの指定値,及びHiRDB起動時のグローバルバッファに割り当たっているRDエリアの最大ページ長の大きい方の値です。
-
このオペランドの指定は,次回のHiRDBの正常開始時には無効となります。したがって,次回の正常開始時に,システム共通定義のグローバルバッファの指定を変更する必要があります。
-
このオペランドの指定時にグローバルバッファを割り当てられない場合は,RDエリアは追加できません。
-
(3) for {registry|LOB used by HiRDB(SQL_REGISTRY)}
- registry
-
RDエリアがレジストリ用RDエリアの場合に指定します。
- LOB used by HiRDB(SQL_REGISTRY)
-
RDエリアがレジストリLOB用RDエリアの場合に指定します。
(4) page ページ長 characters
〜<符号なし整数>((4096〜30720))《4096又は8192》
RDエリアを構成するHiRDBファイルのページ長を,2048の倍数のバイト単位で指定します。
- <レジストリLOB用RDエリアの場合>
-
8192を指定してください。8192以外の値を指定した場合でも,8192が仮定されます。
ここで指定したページ長は,HiRDBがRDエリアに対して入出力する最小の単位となります。
(5) storage control segment セグメントサイズ pages
〜<符号なし整数>((1〜16000))《1又は50》
1セグメントの大きさを,ページ数で指定します。
- <レジストリLOB用RDエリアの場合>
-
1を指定してください。1以外の値を指定した場合でも,1が仮定されます。
(6) extension {use 増分セグメント数 segments|nouse}
RDエリアに自動増分を適用するかどうかを指定します。
RDエリアの自動増分については,マニュアル「HiRDB Version 9 システム運用ガイド」を参照してください。
- <前提条件>
-
RDエリアがあるHiRDBファイルシステム領域に-eオプション又は-aオプションが指定されている必要があります。
- use 増分セグメント数 segments:
-
RDエリアの自動増分を適用します。
RDエリアの自動増分は,レジストリ用RDエリア,及びレジストリLOB用RDエリアの場合に有効となります。ほかのRDエリアにuseを指定しても,nouseが仮定されます。
自動増分の契機は,RDエリア内の空きセグメント数が自動増分契機に達したときです。pd_rdarea_extension_timingオペランドで指定できます。
- 増分セグメント数 〜<符号なし整数>((1〜64000))
-
増分セグメント数を指定します。
-
pdfmkfs -eを指定したHiRDBファイルシステム領域の場合
HiRDBファイルのエクステント数は最大24で,これを超えるとエラーとなります。また,HiRDBファイルシステム領域の空きが不足したり,使用する領域がHiRDBファイルサイズの上限を超えたりすると,エラーとなります。
HiRDBファイルシステム領域当たりの最大増分回数は,HiRDBファイルシステム領域作成時の指定値で決まるため,HiRDBファイルシステム領域内のファイル数,増分頻度を考慮し最大増分回数を定義しておく必要があります。
-
pdfmkfs -aを指定したHiRDBファイルシステム領域の場合
HiRDBファイルを格納しているディスクに,必要なHiRDBファイルシステム領域を確保する容量が不足していたり,使用する領域がHiRDBファイルサイズの上限を超えたりすると,エラーとなります。
-
- nouse:
-
RDエリアの自動増分機能を適用しません。
- <注意事項>
-
-
新たに追加される未使用セグメントは,RDエリアを構成するHiRDBファイルの最終ファイルに追加されます。
-
HiRDBファイルシステム領域の容量不足によって,未使用セグメントを確保できない場合,RDエリアの拡張又は再初期化をするか,データベース再編成ユティリティでディクショナリ表の再編成をしてください。
-
エクステントの数が上限値を超えた場合は,RDエリアがあるHiRDBファイルシステム領域のエクステントを統合するか,又はRDエリアに別のHiRDBファイルシステム領域のHiRDBファイルを追加してください。
エクステントを統合するには,pdfbkupでバックアップを取得し,pdfmkfsでHiRDBファイルシステム領域の初期設定をし,pdfrstrでバックアップから回復します。
-
RDエリア自動増分処理の開始から終了までの間,最終ファイルに対して排他が掛かります。
-
(7) file name "HiRDBファイルシステム領域名/HiRDBファイル名"
〜((167文字以内))
RDエリアに対して割り当てる,HiRDBファイルシステム領域の名称とHiRDBファイルの名称を指定します。
- <規則>
-
-
HiRDBファイルシステム領域名/HiRDBファイル名は引用符(")で囲んで指定してください。
-
引用符内に改行文字を含まないようにしてください。
-
一つのRDエリアに対して,最大16個のHiRDBファイルを割り当てられます。
-
HiRDBファイルシステム領域名/HiRDBファイル名は,HiRDBシステム内で重複しないようにしてください。
-
- HiRDBファイルシステム領域名 〜<パス名>
-
HiRDBファイルシステム領域の名称を指定します。
- HiRDBファイル名 〜<HiRDBファイル名>((1〜30文字))
-
HiRDBファイルの名称を指定します。plで始まる名称は指定できません。