Symfoware(R) Server RDBユーザーズガイド 応用プログラム開発編 - FUJITSU -
目次 索引 前ページ次ページ

付録F 環境変数

応用プログラムの翻訳・結合編集時および実行時の動作環境のチューニングは、環境変数で指定できます。

■応用プログラムの翻訳・結合編集時に指定する環境変数

■応用プログラムの実行時に指定する環境変数

この他に、応用プログラムの動作環境ファイルの実行パラメタに関する環境変数もあります。応用プログラムの動作環境のチューニングは、主に動作環境ファイルで行いますが、一部の環境については、環境変数で指定することもできます。環境変数に指定するパラメタはrdbuptコマンドでも有効になります。

◆動作環境のチューニングの優先順

環境変数による指定と動作環境ファイルによる指定が重複する場合は、環境変数による指定が優先されます。

◆環境変数と動作環境ファイルの実行パラメタの対

表:応用プログラム実行時に指定する環境変数と動作環境ファイルの実行パラメタの対応に、環境変数と動作環境ファイルの実行パラメタの対応を示します。

[表:応用プログラム実行時に指定する環境変数と動作環境ファイルの実行パラメタの対応]

環境変数名

動作環境ファイルの実行パラメタ

RDBCHARSET

CHAR_SET

RDBCOREPATH (注1)

COREFILE_PATH

RDBCSNAME

CLUSTER_SERVICE_NAME

RDBDIVTRC

DIV_TRACE_FILE

RDBDSI

INCLUSION_DSI

RDBDSO

DSO_LOCK

RDBLOCK

ISOLATION_WAIT

RDBLSQL

SQL_LEVEL

RDBMSG

MSG_PRINT

RDBNCHAR

NCHAR_CODE

RDBOBJTB

DEFAULT_OBJECT_TABLE_SIZE

RDBODBIX

DEFAULT_INDEX_SIZE

RDBODBTB

DEFAULT_TABLE_SIZE

RDBODBTY

DEFAULT_DSI_TYPE

RDBPSCAN

PARALLEL_SCAN

RDBRCVL

RCV_MODE

RDBRLOCK

R_LOCK

RDBRTRC

ROUTINE_SNAP

RDBSIGINF(注2)

SIGNAL_INF

RDBSETCALLBACK

SET_CALLBACK

RDBSMEM

SORT_MEM_SIZE

RDBSYDSI

DSI_EXPAND_POINT

RDBTRAN

TRAN_SPEC

RDBTRC

SQL_SNAP

RDBWMEM

WORK_MEM_SIZE

RDBWPATH

WORK_PATH

注1) Windows使用時のみ指定できます。

注2) UNIX系使用時のみ指定できます。

 

各環境変数の指定形式と意味は、以下のとおりです。

■LANG

◆【指定形式】

[Solaris OEの場合]

LANG = {ja | C} 、 LANG = {japanese | C} または LANG = {ja_JP.PCK | C}

[Linuxの場合]

LANG = {ja_JP.eucJP | ja_JP.UTF-8 | C}

◆【環境変数の意味】

UNIX系システムにおいて、メッセージを表示するときの言語を指定します。

◆【パラメタの意味】

ja、japanese、japan、japanese.eucまたはja_JP.eucJP:
システムの文字コード系がEUC環境の場合、日本語のメッセージを表示します。
ja_JP.SJISまたはja_JP.PCK:
システムの文字コード系がシフトJIS環境の場合、日本語のメッセージを表示します。
ja_JP.UTF-8:
システムの文字コード系がUNICODE環境の場合、日本語のメッセージを表示します。
C:
英語のメッセージを表示します。

RDBCHARSET

◆【指定形式】

RDBCHARSET = {EUC|SJIS|UTF8}

◆【環境変数の意味】

応用プログラムのホスト変数内文字列で使用するデータの文字コードを指定します。

応用プログラムをC言語で記述している場合で、かつ実行時のシステムのコード系がEUCの場合は、EUC、UTF8またはSJISを指定します。省略値は“EUC”です。実行時のシステムのコード系がシフトJISの場合は、EUC、UTF8またはSJISを指定します。省略値は“SJIS”です。実行時のシステムのコード系がUNICODEの場合は、EUC、UTF8またはSJISを指定します。省略値は“UTF8”です。

UNIX系システムにおいて、応用プログラムをCOBOLで記述している場合は、どれを指定しても、実行時のシステムのコード系により以下のようになります。

Windows Me、Windows 2000、Windows XPおよびWindows Server 2003において、応用プログラムをCOBOLで記述している場合は、文字コードはコンパイル時のオプションに依存します。

RDBCHARSETは、Symfoware Server Enterprise Extended Edition、Symfoware Server Enterprise EditionおよびSymfoware Server Standard Editionで使用できます。

◆【パラメタの意味】

EUC:
ホスト変数内文字列のデータのコード系がEUCの場合に指定します。
SJIS:
ホスト変数内文字列のデータのコード系がシフトJISの場合に指定します。
UTF8:
ホスト変数内文字列のデータのコード系がUNICODEの場合に指定します。

RDBCOREPATH(Windowsでのみ使用可能)

◆【指定形式】

RDBCOREPATH = 絶対パス名

◆【環境変数の意味】

応用プログラムまたはRDBコマンドで異常が発生した場合のダンプ出力先ディレクトを指定します。省略した場合は、カレントディレクトリに出力します。

RDBCSNAME

◆【指定形式】

RDBCSNAME = クラスタサービス名

◆【環境変数の意味】

PRIMECLUSTERまたはSafeCLUSTERと連携する場合、応用プログラムが登録されている、クラスタシステム上のクラスタサービスを指定します。

◆【パラメタの意味】

クラスタサービス名:
PRIMECLUSTERまたはSafeCLUSTERと連携する場合、クラスタシステムに登録されているクラスタサービス名を記述します。

RDBDIVTRC

◆【指定形式】

RDBDIVTRC = ({YES | NO})

◆【環境変数の意味】

複数の応用プログラムが動作する場合、出力ファイル名(SQL_SNAP機能やROUTINE_SNAP機能によって出力されるファイル、および、アクセスプラン情報やSQL性能情報を取得するファイル)の後ろに、プロセスIDなどの情報を付加して個別のトレース情報を出力すか否かを指定します。省略した場合は、NOが指定されたとみなします。

◆【パラメタの意味】

YES:
出力ファイル名の後に以下の情報を付加して個別のトレース情報を取得します。

出力ファイル名をsqlsnap.lstとし、ログイン名がtest、プロセスIDが288、セション開始時間が2000年6月16日12時34分56秒であるとした場合、以下のファイルに情報が出力されます。

sqlsnap_test_288_20000616123456.lst

NO:
個別のトレース情報を取得しません。

image

応用プログラムがマルチスレッド環境で動作する場合は、RDBDIVTRCの指定に関係なく、自動的に以下の情報を出力ファイル名の後に付加して、個別のトレース情報を出力します。

RDBDSI

◆【指定形式】

RDBDSI = データベース名.DSI名[,データベース名.DSI名・・・]

◆【環境変数の意味】

応用プログラムで、DSIを限定したい表のDSI名を指定します。

応用プログラムでは、限定されたDSIを含む表に対しては、そのDSIだけがデータ操作の範囲となります。また、本実行パラメタの指定により、応用プログラム中での探索条件の記述が省略できます。なお、応用プログラムでDSIを限定していない表に対しては、データ操作をすることができます。

RDBDSO

◆【指定形式】

RDBDSO = DSO名[/[P][{占有モード}]][,DSO名[/[P][{占有モード}]]・・・]

◆【環境変数の意味】

応用プログラムで使用するDSOおよびその占有の単、占有モーを指定します。RDBDSOが指定された場合、SET TRANSACTIONは指定できません。

また、環境変数RDBRLOCK=YESを指定することはできません。

◆【パラメタの意味】

DSO名:
応用プログラムで使用するDSO名を以下の形式で指定します。

データベース名.DSO名

P:
DSOの占有の単位をページとします。省略した場合は、占有の単位はDSIとなります。
占有モード:
占有のモードとして以下のいずれかを指定します。省略した場合は、EXが指定されたとみなします。
- EX:
非共有モードの排他を行います。
- SH:
共有モードの排他を行います。

RDBLOCK

◆【指定形式】

RDBLOCK = DYNAM[,{WAIT | REJECT}]

◆【環境変数の意味】

あるトランザクションで資源にアクセスしようとしたとき、別のトランザクションがその資源を占有していた場合に、資源の占有が解除されるまで待つか否かを指定します。省略した場合は、WAITが指定されたとみなします。

◆【パラメタの意味】

DYNAM:
この環境変数を指定する場合には必ず指定します。
WAIT:
資源の占有が解除されるまで待ちます。
REJECT:
エラーとして応用プログラムに復帰します。

RDBLSQL

◆【指定形式】

RDBLSQL = ({SQL88 | SQL92 | SQL95 | SQL96 | SQL2000})

◆【環境変数の意味】

応用プログラムの予約語のレベを設定します。環境変数の指定を省略した場合は、SQL2000が指定されたとみなします。

予約語のレベルを設定することで、キーワードの範囲を変更できます。

ファンクションルーチンおよびロールを利用する場合は、SQL2000が指定されていなければなりません。

プロシジャルーチンで、条件宣言、ハンドラ宣言、SIGNAL文およびRESIGNAL文を利用する場合は、SQL2000が指定されていなければなりません。これらを利用しないプロシジャルーチンの場合は、SQL95、SQL96またはSQL2000のいずれかを指定します。

トリガ、行識別子または並列指定を利用する場合は、SQL96またはSQL2000を指定します。

◆【パラメタの意味】

SQL88:
予約語のレベルをSQL88とします。
SQL92:
予約語のレベルをSQL92とします。
SQL95:
予約語のレベルをSQL95とします。
SQL96:
予約語のレベルをSQL96とします。
SQL2000:
予約語のレベルをSQL2000とします。

各予約語のレベルにおけるキーワードについては、“SQLリファレンスガイド”を参照してください。

RDBMSG

◆【指定形式】

RDBMSG = E

◆【環境変数の意味】

SQL文実行時に、エラーメッセーを標準エラー出力に出力するか否かを指定します。エラーメッセージを出力する場合は、Eを指定します。エラーメッセージを標準エラー出力に出力しない場合は、この環境変数を指定しません。

RDBNCHAR

◆【指定形式】

RDBNCHAR = {EUC|COBOL_EUC|UTF8|UCS2|UCS2B|SJIS}

◆【環境変数の意味】

応用プログラムのホスト変数内日本語文字列で使用するデータの文字コードを指定します。

この実行パラメタは、ホスト変数の属性が日本語文字列型である場合のみ有効です。

応用プログラムをC言語で記述している場合の、RDBCHARSETとRDBNCHARの関係を以下に示します。

実行時のシステムのコード系

RDBCHARSET (ホスト変数内文字列のデータのコード指定)

RDBNCHAR (ホスト変数内日本語文字列のデータのコード指定)

EUC

EUC(デフォルト)

EUC(デフォルト)

COBOL_EUC

UTF8

UTF8(デフォルト)

UCS2

UCS2B

SJIS

SJIS(デフォルト)

シフトJIS

EUC

EUC(デフォルト)

COBOL_EUC

UTF8

UTF8(デフォルト)

UCS2

UCS2B

SJIS(デフォルト)

SJIS(デフォルト)

日本語文字の使用方法については、“日本語文字の使用方法”を参照してください。

UNIX系システムにおいて、応用プログラムをCOBOLで記述している場合は、どれを指定しても、実行時のシステムのコード系により以下のようになります。

Windows Me、Windows 2000、Windows XPおよびWindows Server 2003において、応用プログラムをCOBOLで記述している場合は、文字コードはコンパイル時のオプションに依存します。

RDBNCHARは、Symfoware Server Enterprise Extended Edition、Symfoware Server Enterprise EditionおよびSymfoware Server Standard Editionで使用できます。

◆【パラメタの意味】

EUC:
ホスト変数内日本語文字列のデータのコードがEUCの場合に指定します。
COBOL_EUC:
ホスト変数内日本語文字列のデータのコードがCOBOL_EUCの場合に指定します 。
UTF8:
ホスト変数内日本語文字列のデータのコードがUTF8の場合に指定します。
UCS2:
ホスト変数内日本語文字列のデータのコードがUCS2の場合に指定します。
UCS2B:
ホスト変数内日本語文字列のデータのコードがUCS2のバイトスワップ形式の場合に指定します。
SJIS:
ホスト変数内日本語文字列のデータのコードがシフトJISの場合に指定します。

RDBOBJTB

◆【指定形式】

RDBOBJTB = ページ長,初期量[,拡張量,拡張契機]

◆【環境変数の意味】

動的SQLを使用して格納構造定義を簡略化した表を定義す場合、OBJECT構造の表のデータ格納域の割付け量、ページ長などを指定します。単位はキロバイトです。この環境変数を省略した場合は、以下の値が指定されたとみなします。

RDBOBJTB = 32,32768,32768,0

◆【パラメタの意味】

ページ長:
データ格納域のページ長を指定します。必ず32を指定します。
初期量:
データ格納域の初期量を2〜2097150の範囲で指定します。
拡張量:
データ格納域の拡張量を1〜2097150の範囲で指定します。省略した場合は、32768が指定されたとみなします。
拡張契機:
データ格納域の拡張を行うタイミングとして、表のDSIの空き容量を指定します。つまり、表のDSIの空き容量がここで指定した値になると、表のデータ格納域の拡張が行われます。省略した場合は、0が指定されたとみなします。

RDBODBIX

◆【指定形式】

RDBODBIX = ベース部ページ長,インデックス部ページ長,ベース部初期量,インデックス部初期量[,拡張量,拡張契機]

◆【環境変数の意味】

動的SQLを使用して格納構造定義を簡略化したインデックスを定義す場合、インデックスのベース部とインデックス部の割付け量、ページ長などを指定します。単位はキロバイトです。この環境変数を省略した場合は、以下の値が指定されたとみなします。

RDBODBIX = 2、2、168、32、32、0

◆【パラメタの意味】

ベース部ページ長:
ベース部のページ長を1、2、4、8、16、32の中から指定します。
インデックス部ページ長:
インデックス部のページ長を1、2、4、8、16、32の中から指定します。
ベース部初期量:
ベース部の初期量を2〜2097150の範囲で指定します。
インデックス部初期量:
インデックス部の初期量を2〜2097150の範囲で指定します。
拡張量:
ベース部の拡張量を1〜2097150の範囲で指定します。省略した場合は、32が指定されたとみなします。インデックス部の拡張量は、ベース部の5分の1の値となります。
拡張契機:
インデックスのベース部およびインデックス部の拡張を行うタイミングとして、DSIの空き容量を指定します。つまり、インデックスのDSIの空き容量がここで指定した値になると、インデックスのベース部とインデックス部の拡張が行われます。省略した場合は、0が指定されたとみなします。

RDBODBTB

◆【指定形式】

RDBODBTB = ページ長,初期量[,拡張量,拡張契機]

◆【環境変数の意味】

動的SQLを使用して格納構造定義を簡略化した表を定義す場合、表のデータ格納域の割付け量、ページ長などを指定します。単位はキロバイトです。この環境変数を省略した場合は、以下の値が指定されたとみなします。

RDBODBTB = 4,256,64,0

◆【パラメタの意味】

ページ長:
データ格納域のページ長を1、2、4、8、16、32の中から指定します。
初期量:
データ格納域の初期量を2〜2097150の範囲で指定します。
拡張量:
データ格納域の拡張量を1〜2097150の範囲で指定します。省略した場合は、64が指定されたとみなします。
拡張契機:
データ格納域の拡張を行うタイミングとして、表のDSIの空き容量を指定します。つまり、表のDSIの空き容量がここで指定した値になると、表のデータ格納域の拡張が行われます。省略した場合は、0が指定されたとみなします。

RDBODBTY

◆【指定形式】

RDBODBTY = {SEQUENTIAL | OBJECT}

◆【環境変数の意味】

格納構造定義を簡略化した表を定義す場合に、Symfoware/RDBが自動的に生成する表のDSOの格納構造を選択します。本パラメタにより格納構造の選ができるのは、表の形式が以下の条件をすべて満たしている場合のみです。

上記以外の場合は、表のDSOはSEQUENTIAL型となります。

◆【パラメタの意味】

SEQUENTIAL:
表のDSOとしてSEQUENTIAL格納構造のDSOを定義します。
OBJECT:
表のDSOとしてOBJECT格納構造のDSOを定義します。

RDBPSCAN

◆【指定形式】

RDBPSCAN = {YES | NO}

◆【環境変数の意味】

アプリケーション単位またはコネクション単位に、データベースを並列に検索する(並列クエ)か否かを指定します。省略した場合は、NOが指定されたとみなします。

◆【パラメタの意味】

YES:
データベースを並列に検索します。この場合、そのアプリケーションの単一行SELECTおよびOPENを並列検索で実行できます。ただし、以下のいずれかの条件を満たす場合、並列検索は実行されず従来のアクセス手順でデータベースをアクセスします。
NO:
データベースを並列に検索しません。

RDBRCVL

◆【指定形式】

RDBRCVL = {RCV | NRCV}

◆【環境変数の意味】

応用プログラムのリカバリ水を指定します。環境変数の指定を省略した場合はRCVが指定されたとみなします。

◆【パラメタの意味】

RCV:
リカバリ機能を使用します。この場合、リカバリを適用しない(rdbrtrコマンで利用規定に-nを指定している)データベースをアクセスすることはできますが、ログは取得されません。
NRCV:
リカバリ機能を使用しません。この場合、リカバリを適用する(rdbrtrコマンドで利用規定に-nを指定していない)データベースを更新することはできません。

RDBRLOCK

◆【指定形式】

RDBRLOCK = {YES | NO}

◆【環境変数の意味】

占有の単を行とするかどうかを指定します。省略した場合は、NOが指定されたとみなします。

◆【パラメタの意味】

YES:
占有の単位を行とします。このパラメタを指定した場合、環境変数RDBDSOを指定することはできません。
NO:
占有の単位は、RDBDSOの指定に従います。このパラメタを指定し、かつRDBDSOが指定されていない場合は、Symfoware/RDBによって自動的に占有の単位が選択されます。詳細については、“排他制御”を参照してください。

image

RDBRLOCKを省略して、SET TRANSACTIONを省略またはSET TRANSACTION文の独立性水準にREPEATABLE READを指定した場合は、ISOLATION LEVEL SERIALIZABLEとなります。

RDBRLOCK = YESを指定して、SET TRANSACTION文を省略またはSET TRANSACTION文の独立性水準にSERIALIZABLEを指定した場合は、ISOLATION LEVEL REPEATABLE READとなります。

RDBRTRC

◆【指定形式】

RDBRTRC = 出力レベル,ファイル名

◆【環境変数の意味】

ROUTINE_SNAP機の出力レベルと、出力先ファイル名を指定します。環境変数の指定を省略した場合は、ROUTINE_SNAP機能を使用しないとみなします。

ROUTINE_SNAP機能は、SQL手続き文の実行情報をファイルに出力する機能です。ROUTINE_SNAP機能の詳細および使用方法については、“応用プログラムのデバッグ”を参照してください。

◆【パラメタの意味】

出力レベル:
出力する情報のレベルとして、1または2を指定します。省略した場合は、2が指定されたとみなします。出力レベルの指定と出力情報の対応については、“表:出力レベルの指定と出力情報の対応”を参照してください。
ファイル名:
SQL手続き文の実行情報の出力先のサーバ側のファイル名を、絶対パスで指定します。

複数の応用プログラムが動作する場合は、環境変数RDBDIVTRCの指定により、出力ファイル名の後にプロセスIDなどの情報を付加して、個別のトレース情報を出力します。

応用プログラムがマルチスレッド環境で動作する場合は、RDBDIVTRCの指定に関係なく、出力ファイル名の後にプロセスIDやセションIDなどの情報を自動的に付加して、個別のトレース情報を出力します。

RDBSIGINF

◆【指定形式】

RDBSIGINF = {YES | NO}

◆【環境変数の意味】

UNIX系システムにおいて、signal関を応用プログラムで利用するか否かを指定します。指定を省略した場合は、YESが指定されたものとみなします。

◆【パラメタの意味】

YES:
signal関数を応用プログラムで利用します。
NO:
signal関数を応用プログラムで利用しません。

RDBSETCALLBACK

◆【指定形式】

RDBSETCALLBACK = ライブラリ名

◆【環境変数の意味】

応用プログラムの起動時にコールバック関数を登録する場合、動的ライブラリ名を指定します。

動的ライブラリ名が絶対パスでの指定でない場合は、以下のディレクトリにライブラリを格納する必要があります。

RDBSMEM

◆【指定形式】

RDBSMEM = メモリサイズ

◆【環境変数の意味】

ソート処理のために作業用ソート領としてサーバ側で使用するメモリの大きさを、64〜2097150の範囲で指定します。単位はキロバイトです。環境変数の指定を省略した場合は、2112が指定されたとみなします。この領域は、RDBプロセスのローカルメモリにセション単位に獲得されます。

RDBSYDSI

◆[UNIX系の場合]

【指定形式】

RDBSYDSI

【環境変数の意味】

応用プログラムによるデータ操作で、DSIに定義された拡張契(rdbalmdsiコマンで定義します)を無効とする場合に、この環境変数を指定します。パラメタはありません。

◆[Windows Me、Windows 2000、Windows XPおよびWindows Server 2003の場合]

【指定形式】

RDBSYDSI = {YES | NO}

【環境変数の意味】

応用プログラムによるデータ操作で、DSIに定義された拡張契(rdbalmdsiコマンで定義します)を無効とするか否かを指定します。環境変数の指定を省略した場合は、NOが指定されたとみなします。

【パラメタの意味】

YES:
DSIに定義された拡張契機を無効とする。
NO:
DSIに定義された拡張契機を有効とする。

RDBTRAN

◆【指定形式】

RDBTRAN = {SC | TC}

◆【環境変数の意味】

SQL文が実行中にエラーとなった場合のトランザクションの対処方を指定します。環境変数の指定を省略した場合は、SCが指定されたとみなします。

◆【パラメタの意味】

SC:
各プラットフォームのトランザクションの仕様に従います。
TC:
SQL文の実行がエラーとなった場合に、トランザクションをロールバックします。

RDBTRC

◆【指定形式】

RDBTRC = 出力レベル,ファイル名[,繰り返し幅]

◆【環境変数の意味】

SQL_SNAP機の出力レベルと、出力先ファイル名を指定します。環境変数の指定を省略した場合は、SQL_SNAP機能を使用しません。

SQL_SNAP機能は、応用プログラムが実行したSQL文の情報をファイルに出力する機能です。SQL_SNAP機能の詳細および使用方法については、“応用プログラムのデバッグ”を参照してください。

◆【パラメタの意味】

出力レベル:
出力する情報のレベルとして、1〜3のいずれかを指定します。ただし、レベル2とレベル3の出力情報は同じです。出力レベルの指定と出力情報の対応は、“表:出力レベルの指定と出力情報の対応”を参照してください。
ファイル名:
SQL_SNAP機能が出力するSQL文の実行情報の出力先ファイル名を指定します。ファイル名にディレクトリの指定がない場合は、カレントディレクトリが指定されたとみなします。

複数の応用プログラムが動作する場合は、環境変数RDBDIVTRCの指定により、出力ファイル名の後にプロセスIDなどの情報を付加して、個別のトレース情報を出力します。

応用プログラムがマルチスレッド環境で動作する場合は、RDBDIVTRCの指定に関係なく、出力ファイル名の後にプロセスIDやセションIDなどの情報を自動的に付加して、個別のトレース情報を出力します。

繰り返し幅:
出力する情報を、ファイルに繰り返し幅でサイクリックに出力する場合に指定します。繰り返し幅は、1〜32768の幅で指定します。出力する情報の単位は、1つのSQL文を1単位とします。省略した場合は、先頭からの情報をすべて出力します。

RDBWMEM

◆【指定形式】

RDBWMEM = メモリサイズ

◆【環境変数の意味】

作業用テーブとしてサーバ側で使用するメモリのサイズを64〜2097150の範囲で指定します。単位はキロバイトです。省略した場合は、64が指定されたとみなします。この領域は、RDBプロセスのローカルメモリにセション単位に獲得されます。

RDBWPATH

◆【指定形式】

RDBWPATH = パス名[[:パス名]・・・]

◆【環境変数の意味】

サーバ側で使用する作業用ソート領および作業用テーブとして、サーバ側での獲得先ディレクトリを指定します。


目次 索引 前ページ次ページ

All Rights Reserved, Copyright (C) 富士通株式会社 2003-2004