Hitachi

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


2.108.1 pdsetupの形式と規則

〈この項の構成〉

(1) 機能

HiRDBシステムの一部がOSとともに開始又は終了するように,HiRDB運用ディレクトリ下のHiRDBシステムをOSに登録します。また,インストールされたHiRDBのロードモジュールを,指定したHiRDB運用ディレクトリに複写します。

(2) 実行者

スーパユーザが実行できます。

(3) 形式

(a) HiRDB/シングルサーバの場合

 /opt/HiRDB_S/bin/pdsetup
 
   〔{ -d 〔-f〕|〔-c 文字コード種別〕〔-v {recom|v0904}〕}〕
 
   HiRDB運用ディレクトリ

(b) HiRDB/パラレルサーバの場合

 /opt/HiRDB_P/bin/pdsetup
 
   〔{ -d 〔-f〕|〔-c 文字コード種別〕〔-v {recom|v0904}〕}〕
 
   HiRDB運用ディレクトリ

(4) オプション

(a) -d

HiRDB運用ディレクトリ下のHiRDBシステムをOSから削除する場合に指定します。登録する場合は,このオプションを省略してください。

-dオプションを指定した場合,次のメッセージが表示され,HiRDBの実行に必要なファイルを削除するかどうかを問い合わせます。

KFPS00036-Q Specify whether to delete files necessary for execution from specified HiRDB home directory ?
[y:Yes , n:No]

yを応答した場合,HiRDBの実行に必要なファイル及びディレクトリを削除します。その場合,次回pdsetupコマンドを実行したときに,実行に必要なファイルをインストールディレクトリからコピーします。

nを応答した場合は,ファイル及びディレクトリは削除しません。

次のような場合にはyを応答してください。

  • 現在運用しているHiRDBを,インストールしたHiRDBに入れ替える場合(HiRDBをバージョンアップする場合はpdstopコマンドで正常停止する必要があります)

  • HiRDB管理者のIDを変更する場合

  • HiRDB運用ディレクトリ下のファイル,ディレクトリのオーナー,又はファイルモードを誤って変更したり,削除してしまった場合

<規則>

  1. -dオプション指定時,テキストビジーなどの原因でOSからのHiRDB運用ディレクトリの削除に失敗することがあります。その場合は,削除に失敗したファイル及びディレクトリを,OSのrmコマンドで削除してください。

  2. -dオプションを指定してyを応答した場合,HiRDB運用ディレクトリ下にHiRDBが作成したファイルが大量にあると,コマンドの実行に時間が掛かることがあります。その場合,あらかじめOSのrmコマンドか,pdcspool -d 0で不要なファイルを削除しておいてください。

  3. HiRDB運用ディレクトリを削除する場合,Java仮想マシンを使用しているUAPを停止してください。停止しないでHiRDB運用ディレクトリを削除した場合,HiRDB運用ディレクトリが完全に削除されないことがあります。この場合,OSのrmコマンドで削除してください。

  4. HiRDBシステムをOSから削除すると,HiRDBシステム内にあるすべての共用メモリが解放されます。

(b) -f

-dオプションを指定したときだけ組み合わせて指定できます。HiRDB稼働中又は異常終了途中でも,強制的にHiRDBをOSから登録,削除します。このオプションを指定した場合,処理中のHiRDBは即時中断されます。また,HiRDBディレクトリ下のロードモジュールは削除しません。

なお,このオプションは,pdstop -fコマンドが受け付けられないときだけ指定してください。通常は,pdstopコマンドでHiRDBを停止した後,pdsetup -dコマンドを実行してください。-fオプションを指定した場合,HiRDBのプロセスの幾つかが残ることがあります。その場合は,OSのpsコマンドで残ったプロセスを調査し,killコマンドで消してください。そうしないと,次回のpdsetup実行時,HiRDBを起動できなくなることがあります。

(c) -c 文字コード種別

   〜《Linux以外の場合:sjis》

   〜《Linuxの場合:ujis》

HiRDBシステムで使用する各国文字データの文字コード種別を指定します。

sjis:シフトJIS漢字コード

chinese:EUC中国語漢字コード

chinese-gb18030:中国語漢字コード(GB18030)

ujis:EUC日本語漢字コード

utf-8:Unicode(UTF-8)

ISO/IEC 10646の規格では,1文字当たり1〜4バイトの範囲に文字が割り当てられ,5,6バイトの範囲は将来の規格のために予約されています。HiRDBでは1文字当たり1〜6バイトの範囲まで使用できますが,文字が割り当てられていない5,6バイトの範囲を使用する場合,将来発生するおそれのある問題については保証できません。

utf-8_ivs:Unicode(IVS対応UTF-8)

ISO/IEC 10646では,文字が割り当てられているのは1文字1〜4,7及び8バイトの範囲です。5,6,9及び10バイトの範囲は将来の規格のために予約されており,文字が割り当てられていません。したがって,文字が割り当てられていない1文字5,6,9及び10バイトの範囲を使用した場合は,将来発生するかもしれない問題について保証できません。

lang-c:単一バイト文字コード

<規則>

  1. このオプション指定した場合,HiRDB運用ディレクトリとインストールディレクトリが異なり,既にHiRDB運用ディレクトリにlibがあるときには,-cオプションの指定は無効になり,前回の文字コードが引き継がれます。

  2. 文字コードの設定を変更したい場合,pdsetup -dで一度OSからHiRDB運用ディレクトリを削除してから,再度pdsetup -cを実行してください。なお,-cオプションと-dオプションは同時に指定できません。指定した場合には,-cオプションが無視されます。

  3. HiRDB/パラレルサーバの場合,すべてのサーバで同一の文字コード種別を指定してください。

(d) -v {recom|v0904}

HiRDBではバージョンごとにシステム定義オペランドの省略値を変更しています。このオプションにオペランド省略時動作を指定します。

recom:推奨モード

v0904:0904互換モード

<規則>

  1. このオプションを省略した場合は,KFPS00073-Qメッセージが表示されます。メッセージに従ってオペランド省略時動作を選択してください。

  2. 次のすべての条件を満たす場合は,前回のオペランド省略時動作が引き継がれ,KFPS00073-Qメッセージは表示されません。

    • このオプションを省略している

    • HiRDB運用ディレクトリとインストールディレクトリが異なる

    • 前回のpdsetup -d コマンド実行時のKFPS00036-Qメッセージにn応答した

  3. オペランド省略時動作は,HiRDBシステム内のすべてのユニットで同じ値を指定してください。

(5) コマンド引数

(a) HiRDB運用ディレクトリ 〜<パス名>

HiRDBを組み込むHiRDB運用ディレクトリを指定します。マルチHiRDBシステム作成時には,HiRDBシステムごとにこのコマンドを実行し,そこでHiRDB運用ディレクトリを指定します。

なお,シンボリックリンクしたHiRDB運用ディレクトリは指定しないでください。

(6) 規則

  1. pdsetupコマンドは,HiRDBが停止中のときだけ実行できます。

  2. pdsetupコマンドは,各サーバマシンで実行してください。

(7) 注意事項

  1. pdsetupコマンドのリターンコードを次に示します。

    0:正常終了

    1:権限エラー,ファイル作成失敗,排他確保失敗など。

  2. /etc/inittabに関する注意事項を次に示します。

    プラットフォーム

    注意事項

    HP-UX,AIX

    • pdsetupコマンドを実行すると,pdsetupコマンドで指定したHiRDB運用ディレクトリを含む文字列を,登録時は/etc/inittabの最終行に追加し,削除時は/etc/inittabから削除します。そのため,OSから削除した後に再登録すると,登録順序が変わるおそれがあります。登録順序が変わった場合は,OS起動時のプロセス起動順序も変わるため,注意してください。

    • pdsetupコマンドの実行中は,エディタなどで/etc/inittabを編集しないでください。また,同じマシン内で複数のHiRDBに対するpdsetupコマンドやOpenTP1のdcsetupコマンドを同時に実行しないでください。これらを実行すると,/etc/inittabの内容が破壊されることがあります。内容が破壊された場合,$PDDIR/conf/Inittab下にinittabX(Xは1〜3の通番)という名称のバックアップ用のファイルが退避されているので,次の手順で回復してください。

    1. スーパユーザでログインします。

    2. $PDDIR/conf/Inittab下から復旧したいファイルを/etc/inittabにコピーします。

    3. /etc/init qを実行します。

    Linux(Linux 6)

    • pdsetupコマンドの結果は,/etc/init/以下にHiRDB運用ディレクトリ名/bin/pddの文字列を含むファイルがあるかどうかで確認できます。

    Linux(Linux 7以降)

    • pdsetupコマンドの結果は,/usr/lib/systemd/system/以下にHiRDB運用ディレクトリ名/bin/pddの文字列を含むファイルがあるかどうかで確認できます。

  3. バージョン07-03以降のHiRDBの場合,Java実行環境(JRE)が同梱されないため,pdsetupコマンド実行時にHiRDB運用ディレクトリ下にjreディレクトリが作成されません。そのため,Javaストアドルーチンを使用する場合は,JREを入手する必要があります。

  4. HiRDBの文字コードを変更する場合,変更後にデータベース初期設定ユティリティを実行してデータベースを作り直す必要があります。ただし,次のケースについては作り直しの必要はありません。

    • IVS非対応UTF-8からIVS対応UTF-8へ変更

    • IVS対応UTF-8からIVS非対応UTF-8へ変更

    なお,上記変更時は,ALTER ROUTINE ALLを実行し,関数,手続き,及びトリガのSQLオブジェクトを再作成してください。引数がすべて定数のスカラ関数を指定している関数,手続き,及びトリガの場合,SQLオブジェクトの再作成を行わないと,期待している結果を得られないことがあります。

    また,システム共通定義のpd_substr_lengthオペランドの値も見直してください。pd_substr_lengthオペランドについては,マニュアル「HiRDB Version 9 システム定義」を参照してください。