Symfoware(R) Server RDBユーザーズガイド 応用プログラム開発編 - FUJITSU - |
目次 索引 |
応用プログラムの翻訳・結合編集時および実行時の動作環境のチューニングは、環境変数で指定できます。
LANG(UNIX系の場合のみ)
RDBDB
SQLPC
SQLPCOB
INCDIR(UNIX系の場合のみ)
INCLUDE(Windowsの場合のみ)
LD_LIBRARY_PATH_64
LD_LIBRARY_PATH
RDBNAME
SQLRTENV
この他に、応用プログラムの動作環境ファイルの実行パラメタに関する環境変数もあります。応用プログラムの動作環境のチューニングは、主に動作環境ファイルで行いますが、一部の環境については、環境変数で指定することもできます。環境変数に指定するパラメタはrdbuptコマンドでも有効になります。
環境変数による指定と動作環境ファイルによる指定が重複する場合は、環境変数による指定が優先されます。
表:応用プログラム実行時に指定する環境変数と動作環境ファイルの実行パラメタの対応に、環境変数と動作環境ファイルの実行パラメタの対応を示します。
環境変数名 |
動作環境ファイルの実行パラメタ |
---|---|
CHAR_SET |
|
RDBCOREPATH (注1) |
COREFILE_PATH |
CLUSTER_SERVICE_NAME |
|
DIV_TRACE_FILE |
|
INCLUSION_DSI |
|
DSO_LOCK |
|
ISOLATION_WAIT |
|
SQL_LEVEL |
|
MSG_PRINT |
|
NCHAR_CODE |
|
DEFAULT_OBJECT_TABLE_SIZE |
|
DEFAULT_INDEX_SIZE |
|
DEFAULT_TABLE_SIZE |
|
DEFAULT_DSI_TYPE |
|
PARALLEL_SCAN |
|
RCV_MODE |
|
R_LOCK |
|
ROUTINE_SNAP |
|
RDBSIGINF(注2) |
SIGNAL_INF |
SET_CALLBACK |
|
SORT_MEM_SIZE |
|
DSI_EXPAND_POINT |
|
TRAN_SPEC |
|
SQL_SNAP |
|
WORK_MEM_SIZE |
|
WORK_PATH |
注1) Windows使用時のみ指定できます。
注2) UNIX系使用時のみ指定できます。
各環境変数の指定形式と意味は、以下のとおりです。
LANG = {ja | C} 、 LANG = {japanese | C} または LANG = {ja_JP.PCK | C}
LANG = {ja_JP.eucJP | ja_JP.UTF-8 | C}
UNIX系システムにおいて、メッセージを表示するときの言語種を指定します。
RDBCHARSET = {EUC|SJIS|UTF8}
応用プログラムのホスト変数内文字列で使用するデータの文字コード系を指定します。
応用プログラムをC言語で記述している場合で、かつ実行時のシステムのコード系がEUCの場合は、EUC、UTF8またはSJISを指定します。省略値は“EUC”です。実行時のシステムのコード系がシフトJISの場合は、EUC、UTF8またはSJISを指定します。省略値は“SJIS”です。実行時のシステムのコード系がUNICODEの場合は、EUC、UTF8またはSJISを指定します。省略値は“UTF8”です。
UNIX系システムにおいて、応用プログラムをCOBOLで記述している場合は、どれを指定しても、実行時のシステムのコード系により以下のようになります。
実行時のシステムのコード系がEUCの場合はEUC
実行時のシステムのコード系がシフトJISの場合はSJIS
実行時のシステムのコード系がUNICODEの場合はUTF8
Windows Me、Windows 2000、Windows XPおよびWindows Server 2003において、応用プログラムをCOBOLで記述している場合は、文字コードはコンパイル時のオプションに依存します。
RDBCHARSETは、Symfoware Server Enterprise Extended Edition、Symfoware Server Enterprise EditionおよびSymfoware Server Standard Editionで使用できます。
RDBCOREPATH = 絶対パス名
応用プログラムまたはRDBコマンドで異常が発生した場合のダンプ出力先ディレクトリを指定します。省略した場合は、カレントディレクトリに出力します。
RDBCSNAME = クラスタサービス名
PRIMECLUSTERまたはSafeCLUSTERと連携する場合、応用プログラムが登録されている、クラスタシステム上のクラスタサービス名を指定します。
RDBDIVTRC = ({YES | NO})
複数の応用プログラムが動作する場合、出力ファイル名(SQL_SNAP機能やROUTINE_SNAP機能によって出力されるファイル、および、アクセスプラン情報やSQL性能情報を取得するファイル)の後ろに、プロセスIDなどの情報を付加して個別のトレース情報を出力するか否かを指定します。省略した場合は、NOが指定されたとみなします。
ログイン名
プロセスID
セション開始時間
出力ファイル名をsqlsnap.lstとし、ログイン名がtest、プロセスIDが288、セション開始時間が2000年6月16日12時34分56秒であるとした場合、以下のファイルに情報が出力されます。
sqlsnap_test_288_20000616123456.lst
応用プログラムがマルチスレッド環境で動作する場合は、RDBDIVTRCの指定に関係なく、自動的に以下の情報を出力ファイル名の後に付加して、個別のトレース情報を出力します。
ログイン名
プロセスID
セションID
セション開始時間
RDBDSI = データベース名.DSI名[,データベース名.DSI名・・・]
応用プログラムで、DSIを限定したい表のDSI名を指定します。
応用プログラムでは、限定されたDSIを含む表に対しては、そのDSIだけがデータ操作の範囲となります。また、本実行パラメタの指定により、応用プログラム中での探索条件の記述が省略できます。なお、応用プログラムでDSIを限定していない表に対しては、データ操作をすることができます。
RDBDSO = DSO名[/[P][{占有モード}]][,DSO名[/[P][{占有モード}]]・・・]
応用プログラムで使用するDSOおよびその占有の単位、占有モードを指定します。RDBDSOが指定された場合、SET TRANSACTION文は指定できません。
また、環境変数RDBRLOCK=YESを指定することはできません。
データベース名.DSO名
RDBLOCK = DYNAM[,{WAIT | REJECT}]
あるトランザクションで資源にアクセスしようとしたとき、別のトランザクションがその資源を占有していた場合に、資源の占有が解除されるまで待つか否かを指定します。省略した場合は、WAITが指定されたとみなします。
RDBLSQL = ({SQL88 | SQL92 | SQL95 | SQL96 | SQL2000})
応用プログラムの予約語のレベルを設定します。環境変数の指定を省略した場合は、SQL2000が指定されたとみなします。
予約語のレベルを設定することで、キーワードの範囲を変更できます。
ファンクションルーチンおよびロールを利用する場合は、SQL2000が指定されていなければなりません。
プロシジャルーチンで、条件宣言、ハンドラ宣言、SIGNAL文およびRESIGNAL文を利用する場合は、SQL2000が指定されていなければなりません。これらを利用しないプロシジャルーチンの場合は、SQL95、SQL96またはSQL2000のいずれかを指定します。
トリガ、行識別子または並列指定を利用する場合は、SQL96またはSQL2000を指定します。
各予約語のレベルにおけるキーワードについては、“SQLリファレンスガイド”を参照してください。
RDBMSG = E
SQL文実行時に、エラーメッセージを標準エラー出力に出力するか否かを指定します。エラーメッセージを出力する場合は、Eを指定します。エラーメッセージを標準エラー出力に出力しない場合は、この環境変数を指定しません。
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で記述している場合は、どれを指定しても、実行時のシステムのコード系により以下のようになります。
実行時のシステムのコード系がEUCの場合はCOBOL_EUC
実行時のシステムのコード系がシフトJISの場合はSJIS
Windows Me、Windows 2000、Windows XPおよびWindows Server 2003において、応用プログラムをCOBOLで記述している場合は、文字コードはコンパイル時のオプションに依存します。
RDBNCHARは、Symfoware Server Enterprise Extended Edition、Symfoware Server Enterprise EditionおよびSymfoware Server Standard Editionで使用できます。
RDBOBJTB = ページ長,初期量[,拡張量,拡張契機]
動的SQLを使用して格納構造定義を簡略化した表を定義する場合、OBJECT構造の表のデータ格納域の割付け量、ページ長などを指定します。単位はキロバイトです。この環境変数を省略した場合は、以下の値が指定されたとみなします。
RDBOBJTB = 32,32768,32768,0
RDBODBIX = ベース部ページ長,インデックス部ページ長,ベース部初期量,インデックス部初期量[,拡張量,拡張契機]
動的SQLを使用して格納構造定義を簡略化したインデックスを定義する場合、インデックスのベース部とインデックス部の割付け量、ページ長などを指定します。単位はキロバイトです。この環境変数を省略した場合は、以下の値が指定されたとみなします。
RDBODBIX = 2、2、168、32、32、0
RDBODBTB = ページ長,初期量[,拡張量,拡張契機]
動的SQLを使用して格納構造定義を簡略化した表を定義する場合、表のデータ格納域の割付け量、ページ長などを指定します。単位はキロバイトです。この環境変数を省略した場合は、以下の値が指定されたとみなします。
RDBODBTB = 4,256,64,0
RDBODBTY = {SEQUENTIAL | OBJECT}
格納構造定義を簡略化した表を定義する場合に、Symfoware/RDBが自動的に生成する表のDSOの格納構造を選択します。本パラメタにより格納構造の選択ができるのは、表の形式が以下の条件をすべて満たしている場合のみです。
表の最後に1つだけ、BLOB型でサイズに32キロバイト以上を指定している場合
BLOB型以外の列は固定長属性の場合
BLOB型の列にNOT NULL制約を指定している場合
上記以外の場合は、表のDSOはSEQUENTIAL型となります。
RDBPSCAN = {YES | NO}
アプリケーション単位またはコネクション単位に、データベースを並列に検索する(並列クエリ)か否かを指定します。省略した場合は、NOが指定されたとみなします。
表がDSI分割されていない、または1つのDSIに対するアクセスの場合
クラスタキーを利用したデータベースアクセスが可能な場合
探索条件にROW_IDを指定した検索の場合
インデックスを利用したデータベースアクセスが可能な場合
RDBRCVL = {RCV | NRCV}
応用プログラムのリカバリ水準を指定します。環境変数の指定を省略した場合はRCVが指定されたとみなします。
RDBRLOCK = {YES | NO}
占有の単位を行とするかどうかを指定します。省略した場合は、NOが指定されたとみなします。
RDBRLOCKを省略して、SET TRANSACTION文を省略またはSET TRANSACTION文の独立性水準にREPEATABLE READを指定した場合は、ISOLATION LEVEL SERIALIZABLEとなります。RDBRLOCK = YESを指定して、SET TRANSACTION文を省略またはSET TRANSACTION文の独立性水準にSERIALIZABLEを指定した場合は、ISOLATION LEVEL REPEATABLE READとなります。
RDBRTRC = 出力レベル,ファイル名
ROUTINE_SNAP機能の出力レベルと、出力先ファイル名を指定します。環境変数の指定を省略した場合は、ROUTINE_SNAP機能を使用しないとみなします。
ROUTINE_SNAP機能は、SQL手続き文の実行情報をファイルに出力する機能です。ROUTINE_SNAP機能の詳細および使用方法については、“応用プログラムのデバッグ”を参照してください。
複数の応用プログラムが動作する場合は、環境変数RDBDIVTRCの指定により、出力ファイル名の後にプロセスIDなどの情報を付加して、個別のトレース情報を出力します。
応用プログラムがマルチスレッド環境で動作する場合は、RDBDIVTRCの指定に関係なく、出力ファイル名の後にプロセスIDやセションIDなどの情報を自動的に付加して、個別のトレース情報を出力します。
RDBSIGINF = {YES | NO}
UNIX系システムにおいて、signal関数を応用プログラムで利用するか否かを指定します。指定を省略した場合は、YESが指定されたものとみなします。
RDBSETCALLBACK = ライブラリ名
応用プログラムの起動時にコールバック関数を登録する場合、動的ライブラリ名を指定します。
動的ライブラリ名が絶対パスでの指定でない場合は、以下のディレクトリにライブラリを格納する必要があります。
UNIX系の場合は、環境変数LD_LIBRARY_PATHに指定したディレクトリ
Windowsの場合は、PATHに指定したディレクトリ
RDBSMEM = メモリサイズ
ソート処理のために作業用ソート領域としてサーバ側で使用するメモリの大きさを、64〜2097150の範囲で指定します。単位はキロバイトです。環境変数の指定を省略した場合は、2112が指定されたとみなします。この領域は、RDBプロセスのローカルメモリにセション単位に獲得されます。
RDBSYDSI
応用プログラムによるデータ操作で、DSIに定義された拡張契機(rdbalmdsiコマンドで定義します)を無効とする場合に、この環境変数を指定します。パラメタはありません。
RDBSYDSI = {YES | NO}
応用プログラムによるデータ操作で、DSIに定義された拡張契機(rdbalmdsiコマンドで定義します)を無効とするか否かを指定します。環境変数の指定を省略した場合は、NOが指定されたとみなします。
RDBTRAN = {SC | TC}
SQL文が実行中にエラーとなった場合のトランザクションの対処方法を指定します。環境変数の指定を省略した場合は、SCが指定されたとみなします。
RDBTRC = 出力レベル,ファイル名[,繰り返し幅]
SQL_SNAP機能の出力レベルと、出力先ファイル名を指定します。環境変数の指定を省略した場合は、SQL_SNAP機能を使用しません。
SQL_SNAP機能は、応用プログラムが実行したSQL文の情報をファイルに出力する機能です。SQL_SNAP機能の詳細および使用方法については、“応用プログラムのデバッグ”を参照してください。
複数の応用プログラムが動作する場合は、環境変数RDBDIVTRCの指定により、出力ファイル名の後にプロセスIDなどの情報を付加して、個別のトレース情報を出力します。
応用プログラムがマルチスレッド環境で動作する場合は、RDBDIVTRCの指定に関係なく、出力ファイル名の後にプロセスIDやセションIDなどの情報を自動的に付加して、個別のトレース情報を出力します。
RDBWMEM = メモリサイズ
作業用テーブルとしてサーバ側で使用するメモリのサイズを64〜2097150の範囲で指定します。単位はキロバイトです。省略した場合は、64が指定されたとみなします。この領域は、RDBプロセスのローカルメモリにセション単位に獲得されます。
RDBWPATH = パス名[[:パス名]・・・]
サーバ側で使用する作業用ソート領域および作業用テーブルとして、サーバ側での獲得先ディレクトリを指定します。
目次 索引 |