Hitachi

ノンストップデータベース HiRDB Version 9 コマンドリファレンス(UNIX(R)用)


13.1.1 前提条件

〈この項の構成〉

(1) 動作条件

pdconstck実行時の前提条件を次の表に示します。

表13‒1 pdconstck実行時の前提条件

項目

前提条件

実行権限

DBA権限を持つユーザ,又は表の所有者が実行できます。

RDエリアの状態

pdconstckと処理対象RDエリアの状態の関係については,「コマンド実行時のRDエリアの状態」を参照してください。

同時実行

同一表に対するpdconstckの同時実行はできません。同時実行した場合,該当する表の資源種別名TABL(資源種別:0002)とDICT(資源種別:3005)間でデッドロックとなることがあります。

対象となる表が異なる場合は,pdconstckを同時実行できます。ただし,検査保留状態を変更する場合,排他待ちとなります。

最大同時実行数

pdconstckの最大同時実行数は,pd_max_usersオペランドの指定値÷2となります。

資源数

pdconstckは,対象表及び外部キーが参照する被参照表に対して排他を掛けます。そのため,次のシステム定義の指定値に注意してください。

  • 同時アクセス可能実表数

    システム定義のpd_max_access_tablesオペランドには,(対象表の外部キー数+1)以上の値を指定してください。

  • 1サーバ当たりのUNTIL DISCONNECT指定の排他表及びRDエリア数の総和

    システム定義のpd_lck_until_disconnect_cntオペランドには,次の計算式X以上の値を指定してください。

    X=(2+処理対象表の外部キー数+処理対象表の格納RDエリア数

    +外部キーが参照する主キーの表の格納RDエリアの総数)

  • サーバ当たりの排他制御用プールサイズ

    システム定義のpd_lck_pool_sizeオペランドに記載している計算式を元に設定してください。

検査保留状態の遷移

システム定義のpd_check_pendingオペランドの指定に関係なく,pdconstckの実行によって検査保留状態は遷移します。

インナレプリカ機能

インナレプリカ機能を使用する場合,対象表に関連するすべてのRDエリア(表格納用RDエリア,LOB列格納用RDエリア,及びインデクス格納用RDエリア)のレプリカ定義数を一致させてください。また,レプリカRDエリアの世代番号をすべてそろえてください。なお,対象となる表が参照表の場合,参照表が参照する被参照表に関連するRDエリアは,該当する表とレプリカ定義が異なるときでも,pdconstckを実行できます。

  1. 対象表

    ・表に関連するすべてのレプリカRDエリアが,コマンド閉塞かつクローズ状態の世代の場合,処理対象にはなりません。

    ・サーバ間の分割をしている場合,サーバ内にレプリカRDエリアがないとき,そのサーバはカレントRDエリアを処理対象とします。

  2. 対象表(参照表)が参照する被参照表

    ・全世代単位の場合は,対象表(参照表)が参照する被参照表に関連するレプリカRDエリアが,対象表に対応するレプリカRDエリアの世代でないとき,カレントRDエリアを整合性チェック対象とします。

    ・世代単位の場合は,参照表が参照する被参照表に関連するレプリカRDエリアが,指定した世代にないとき,カレントRDエリアを整合性チェック対象とします。

    ・カレントRDエリアの世代の場合は,参照表が参照する被参照表のカレントRDエリアを整合性チェック対象とします。

(2) 動作環境

pdconstckの動作環境を次の表に示します。

表13‒2 pdconstckの動作環境

項目

動作環境

HiRDB環境

コマンド実行場所

pdconstckは,シングルサーバ又はシステムマネジャがあるサーバマシンで実行してください。

サーバの状態

pdconstckを実行する場合,次のサーバが稼働していなければなりません。

HiRDB/シングルサーバの場合:シングルサーバ

HiRDB/パラレルサーバの場合:ディクショナリサーバ,フロントエンドサーバ,及びバックエンドサーバ(マルチフロントエンドサーバの場合,一つ以上のフロントエンドサーバが稼働中である必要があります)

環境変数

PDDIR

PDDIR環境変数に,絶対パス名でHiRDB運用ディレクトリを設定してください。

PDCONFPATH

PDCONFPATH環境変数に,絶対パス名でHiRDBシステム定義ファイルを格納するディレクトリを設定してください。

OS環境

LANG環境変数

pdsetupコマンドで設定した文字コードがutf-8の場合,PDLANG環境変数に,UTF-8を設定してください。LANG環境変数には任意の値を設定してください。

pdsetupコマンドで設定した文字コードがutf-8_ivsの場合,PDLANG環境変数に,UTF-8_IVS又はUTF-8を設定してください。LANG環境変数には任意の値を設定してください。

pdsetupコマンドで設定した文字コードがchinese-gb18030の場合,PDLANG環境変数に,CHINESE-GB18030を設定してください。LANG環境変数には任意の値を設定してください。

上記以外の場合

pdsetupコマンドで指定した文字コード種別に合わせて,LANG環境変数を設定してください。OSがサポートしていない文字コードを使用する場合は,PDLANG環境変数を設定してください。LANG及びPDLANGの設定値については,マニュアル「HiRDB Version 9 UAP開発ガイド」を参照してください。

-oオプションで指定するファイル及びディレクトリ

pdconstck実行ユーザに対してアクセス権限を与えてください。

なお,-oオプションを省略した場合は,表「pdconstckがファイルを出力するディレクトリ」に示すディレクトリにファイルを作成すると解釈されるため,同様にアクセス権限を与えてください。

表13‒3 pdconstckがファイルを出力するディレクトリ

-oオプションの指定

システム定義のpd_tmp_directoryオペランドの指定

あり

なし

環境変数TMPDIRの指定

あり

なし

あり

-oオプションに指定したディレクトリ

なし

pd_tmp_directoryに指定したディレクトリ

TMPDIRに指定したディレクトリ

/tmpディレクトリ

注※ コマンド実行環境の環境変数の指定