サーバ実行中に、サーバ・オプションを上書きします。
sa_server_option( opt, val )
opt サーバ・オプション名を指定する CHAR(128) パラメータ。
val サーバ・オプションの新しい値を指定する CHAR(128) パラメータ。
データベース管理者はこのプロシージャを使用して、データベース・サーバを再起動せずにデータベース・サーバ・オプションの一部を一時的に上書きできます。
このプロシージャを使用して変更されるオプション値は、サーバが停止するとデフォルト値にリセットされます。サーバが起動するたびにオプション値を変更する場合は、データベース・サーバの起動時に対応するデータベース・サーバ・オプションがあればそれを指定できます (これらのオプションは次の表で一番右のカラムにリストされています)。
次のオプション設定を変更できます。
オプション名 | 値の範囲 | デフォルト | サーバ・オプション |
---|---|---|---|
CacheSizingStatistics | YES、NO | NO | cs サーバ・オプション |
CollectStatistics | YES、NO | YES | -k サーバ・オプション |
ConnsDisabled | YES、NO | NO | |
ConnsDisabledForDB | YES、NO | NO | |
ConsoleLogFile | filename | -o サーバ・オプション | |
ConsoleLogMaxSize | バイト単位でのファイル・サイズ | -on サーバ・オプション | |
DatabaseCleaner | ON、OFF | ON | |
DebuggingInformation | YES、NO | NO | -z サーバ・オプション |
IdleTimeout | 整数 (分) | 240 | -ti サーバ・オプション |
LivenessTimeout | 整数 (秒) | 120 | -tl サーバ・オプション |
MessageCategoryLimit | INTEGER | 400 | |
OptionWatchAction | MESSAGE、ERROR | MESSAGE | オプション設定のモニタリング |
OptionWatchList | カンマで区切られたデータベース・オプションのリスト | オプション設定のモニタリング | |
ProcedureProfiling | YES、NO、RESET、CLEAR | NO | |
ProfileFilterConn | connection-id | ||
ProfileFilterUser | user-id | ||
QuittingTime | 有効な日付と時刻 | -tq サーバ・オプション | |
RememberLastPlan | YES、NO | NO | -zp サーバ・オプション |
RememberLastStatement | YES、NO | NO | -zl サーバ・オプション |
RequestFilterConn | connection-id, -1 | ||
RequestFilterDB | database-id, -1 | ||
RequestLogFile | filename | -zo サーバ・オプション | |
RequestLogging |
SQL、HOSTVARS、PLAN、PROCEDURES、TRIGGERS、OTHER、BLOCKS、REPLACE、ALL、YES、NONE、NO |
NONE | -zr サーバ・オプション |
RequestLogMaxSize | バイト単位でのファイル・サイズ | -zs サーバ・オプション | |
RequestLogNumFiles | 整数 | -zn サーバ・オプション | |
RequestTiming | YES、NO | NO | -zt オプション |
SecureFeatures | feature-list | -sf サーバ・オプション | |
WebClientLogFile | filename | -zoc サーバ・オプション | |
WebClientLogging | ON、OFF | OFF |
CacheSizingStatistics YES に設定した場合、キャッシュ・サイズが変更されるたびに、データベース・サーバ・メッセージ・ウィンドウにキャッシュ情報を表示します。cs サーバ・オプションを参照してください。
CollectStatistics YES に設定すると、データベース・サーバはパフォーマンス・モニタの統計情報を収集します。-k サーバ・オプションを参照してください。
ConnsDisabled YES に設定すると、データベース・サーバ上のデータベースに対する他の接続は許可されません。
ConsoleLogFile データベース・サーバ・メッセージ・ログ情報の記録に使用されるファイル名。空の文字列を指定すると、ファイルへのロギングが停止します。これは SQL 文字列なので、パスの円記号は 2 つ重ねます。-o サーバ・オプションを参照してください。
ConsoleLogMaxSize データベース・サーバ・メッセージ・ログ情報の記録に使用されるファイルの最大サイズ (バイト単位)。データベース・サーバ・メッセージ・ログ・ファイルが、このプロパティまたは -on サーバ・オプションで指定されたサイズに達すると、ファイルが拡張子 .old の付いた名前に変更されます (既存のファイルが存在する場合は、同じ名前で置換されます)。その後、データベース・サーバ・メッセージ・ログ・ファイルが再開されます。-on サーバ・オプションを参照してください。
DatabaseCleaner このオプションの設定は、iAnywhere テクニカル・サポートの指示があった場合を除いて、変更しないでください。sa_clean_database システム・プロシージャを参照してください。
DebuggingInformation 診断メッセージなどのメッセージをトラブルシューティングのために表示します。メッセージは、データベース・サーバ・メッセージ・ウィンドウに表示されます。-z サーバ・オプションを参照してください。
IdleTimeout minutes で指定された時間の間、要求を送信しなかった TCP/IP 接続を切断します。こうすることで、アクティブではない接続がロックを無制限に維持することが回避されます。-ti サーバ・オプションを参照してください。
LivenessTimeout 接続が維持されていることを確認するため、クライアント/サーバの TCP/IP ネットワークを介して、定期的に活性パケットが送信されます。ネットワーク・サーバが、活性パケットを検出することなく、LivenessTimeout 時間にわたって実行されると、通信は切断されます。-tl サーバ・オプションを参照してください。
MessageCategoryLimit sa_server_messages システム・プロシージャを使用して取り出すことのできるメッセージの最小数を、重大度レベルごとおよびカテゴリごとに設定します。sa_server_messages システム・プロシージャを参照してください。
OptionWatchAction リストにオプションを設定しようとしたときにデータベース・サーバが実行するアクションを指定します。サポートされる値は MESSAGE と ERROR です。OptionWatchAction が MESSAGE に設定されており、OptionWatchList によって指定されるオプションが設定されている場合は、データベース・サーバ・メッセージ・ウィンドウにメッセージが表示され、設定されているオプションがオプション・ウォッチ・リストに入っていることが示されます。
OptionWatchAction が ERROR に設定されている場合は、オプション・ウォッチ・リストにオプションが入っているためにオプションを設定できないことを示すエラーが返されます。
このプロパティの現在の設定は、次のクエリを実行して表示できます。
SELECT DB_PROPERTY( 'OptionWatchAction' ); |
OptionWatchList 設定したときに通知の対象としたり、データベース・サーバでエラーを返したりするデータベース・オプションのリストを、カンマで区切って指定します。この文字列の長さは 128 バイトに制限されています。デフォルトでは、空の文字列です。たとえば、次のコマンドは、ウォッチするオプションのリストに automatic_timestamp、float_as_double、および tsql_hex_constant の各オプションを追加します。
CALL dbo.sa_server_option( 'OptionWatchList','automatic_timestamp, float_as_double,tsql_hex_constant' ) |
このプロパティの現在の設定は、次のクエリを実行して表示できます。
SELECT DB_PROPERTY( 'OptionWatchList' ); |
ProcedureProfiling ストアド・プロシージャ、関数、イベント、トリガについてのプロシージャ・プロファイリングを制御します。プロシージャ・プロファイリングは、ストアド・プロシージャ、関数、イベント、トリガの実行所要時間を示します。Sybase Central の [データベースのプロパティ] ウィンドウでも、プロシージャ・プロファイリング・オプションを設定できます。
RESET YES または NO の設定は変更しないで、プロファイリング・カウンタを 0 に戻します。
CLEAR プロファイリング・カウンタを 0 に戻し、プロシージャ・プロファイリングを無効にします。
プロファイリングを有効にすると、システム・プロシージャ sa_procedure_profile_summary と sa_procedure_profile を使用して、データベースからプロファイリング情報を取り出すことができます。システム・プロシージャを使用したプロシージャ・プロファイリングを参照してください。
ProfileFilterConn 他の接続がデータベースを使用する処理を阻害することなく、特定の接続 ID に関するプロファイル情報を取得するように、データベース・サーバに指示します。接続フィルタが有効な場合、SELECT PROPERTY( 'ProfileFilterConn' )
の戻り値は監視されている接続の接続 ID です。ID が指定されていない場合、または接続フィルタが無効な場合、戻り値は -1 です。
ProfileFilterUser データベース・サーバに、特定のユーザ ID のプロファイリング情報を取得するよう指示します。
QuittingTime データベース・サーバに、指定された時間にサーバを停止するよう指示します。-tq サーバ・オプションを参照してください。
RememberLastPlan 接続で最後に実行された長いテキスト・プランをキャプチャするように、クエリのデータベース・サーバに指示します。この設定は、-zp サーバ・オプションによって制御されます。-zp サーバ・オプションを参照してください。
RememberLastPlan が ON の場合は、LastPlanText 接続プロパティの値を問い合わせることで、この接続で最後に実行されたクエリの計画のテキスト表現を取得できます。
SELECT CONNECTION_PROPERTY( 'LastPlanText' ); |
RememberLastStatement データベース・サーバに、サーバ上で実行されている各データベースに関して最後に作成された SQL 文を取得するように指示します。ストアド・プロシージャ・コールの場合、プロシージャ内の文ではなく、最も外側のプロシージャ・コールのみが表示されます。
RememberLastStatement が ON の場合は、LastStatement 接続プロパティの値を問い合わせることで、接続に関する LastStatement の現在の値を取得できます。
SELECT CONNECTION_PROPERTY( 'LastStatement' ); |
クライアントでの文のキャッシュが有効であり、キャッシュされた文が再使用されているとき、このプロパティは空の文字列を返します。
詳細については、データベース・サーバ・プロパティと-zl サーバ・オプションを参照してください。
RememberLastStatement が ON の場合、次の文は指定された接続に対して最後に準備された文を返します。
SELECT CONNECTION_PROPERTY( 'LastStatement', connection-id ); |
sa_conn_activity システム・プロシージャは、すべての接続に対して同じ情報を返します。
-zl が指定されている場合、または RememberLastStatement サーバ設定がオンになっている場合、ユーザはだれでも sa_conn_activity システム・プロシージャを呼び出すか、LastStatement 接続プロパティの値を取得することにより、他のユーザが最後に準備した SQL 文を見つけることができます。このオプションは注意して使用し、不要な場合はオフにしてください。
RequestFilterConn 要求ログ情報をフィルタして、特定の接続の情報のみ記録されるようにします。これによって、多くのアクティブな接続または複数のデータベースのあるデータ・サーバを監視するときに、要求ログ・ファイルのサイズを削減できます。次の文を実行して、接続 ID を取得できます。
CALL sa_conn_info( ); |
接続 ID を取得した後でロギングする特定の接続を指定するには、次の文を実行します。
CALL sa_server_option( 'RequestFilterConn', connection-id ); |
フィルタは、明示的にリセットされるか、データベース・サーバが停止するまで有効なままになります。フィルタをリセットするには、次の文を使用します。
CALL sa_server_option( 'RequestFilterConn', -1 ); |
RequestFilterDB 要求ログ情報をフィルタして、特定のデータベースの情報のみ記録されるようにします。これによって、複数のデータベースのあるサーバを監視するときに、要求ログ・ファイルのサイズを削減できます。目的のデータベースに接続しているときに次の文を実行して、データベース ID を取得できます。
SELECT CONNECTION_PROPERTY( 'DBNumber' ); |
特定のデータベースについての情報のみロギングすることを指定するには、次の文を実行します。
CALL sa_server_option( 'RequestFilterDB', database-id ); |
フィルタは、明示的にリセットされるか、データベース・サーバが停止するまで有効なままになります。フィルタをリセットするには、次の文を使用します。
CALL sa_server_option( 'RequestFilterDB', -1 ); |
RequestLogFile 要求情報の記録に使用されるファイルの名前。空の文字列を指定すると、要求ログ・ファイルへのロギングが停止します。要求のロギングが有効でも、要求のログ・ファイルを指定しなかった場合、または空の文字列に設定されている場合、サーバは要求をデータベース・サーバ・メッセージ・ウィンドウにロギングします。SQL 文字列と同じように、パスの円記号は 2 つ重ねます。-zo サーバ・オプションを参照してください。
RequestLogging これは、データベース・サーバ・オプション -zr と -zo とともにトラブルシューティングで使用されます。次の値をプラス記号 (+) またはカンマで区切って組み合わせた値です。
PLAN 実行プランのロギングを有効にします (短期)。プロシージャの実行プランは、プロシージャ (PROCEDURES) のロギングが有効な場合にも記録されます。
HOSTVARS ホスト変数の値のロギングを有効にします。HOSTVARS を指定した場合、SQL にリストされている情報もロギングされます。
PROCEDURES プロシージャ内から実行されている文のロギングを有効にします。
TRIGGERS トリガ内から実行されている文のロギングを有効にします。
OTHER SQL に含まれないその他の要求タイプのロギングを有効にします (FETCH や PREFETCH など)。ただし、OTHER を指定して SQL を指定しない場合、SQL+OTHER を指定した場合と同じです。OTHRE を含めると、ログ・ファイルが急速に拡大し、サーバのパフォーマンス低下につながることがあります。
BLOCKS 別の接続で接続がブロックされたときと、接続のブロックが解除されたときに表示する詳細のロギングを有効にします。
REPLACE ロギングの開始時に、既存の要求ログは同じ名前を持つ新規の (空の) ログで置換されます。それ以外の場合、既存の要求ログが開き、新規エントリがファイルの末尾に追加されます。
ALL すべてのサポート情報をロギングします。これは、SQL+PLAN+HOSTVARS+PROCEDURES+TRIGGERS+OTHER+BLOCKS を指定した場合と同じです。この設定では、ログ・ファイルが急速に拡大し、サーバのパフォーマンス低下につながることがあります。
NO または NONE 要求ログに対するロギングを無効にします。
このプロパティの現在の設定は、次のクエリを実行して表示できます。
SELECT PROPERTY( 'RequestLogging' ); |
詳細については、-zr サーバ・オプションとデータベース・サーバ・プロパティを参照してください。
RequestLogMaxSize 要求ログ情報の記録に使用されるファイルのバイト単位での最大サイズ0 を指定した場合は、要求ロギング・ファイルの最大サイズは適用されず、名前は変更されません。これはデフォルト値です。
要求ログ・ファイルが、sa_server_option システム・プロシージャまたは -zs サーバ・オプションで指定されたサイズに達すると、ファイルが拡張子 .old の付いた名前に変更されます (既存のファイルが存在する場合は、同じ名前で置換されます)。要求ログ・ファイルが再起動します。-zs サーバ・オプションを参照してください。
RequestLogNumFiles 保持する要求ログ・ファイルのコピーの数
要求ロギングが長時間にわたって有効になっていると、要求ログ・ファイルが大きくなることがあります。-zn オプションを使用すると、保持する要求ログ・ファイルのコピー数を指定できます。-zn サーバ・オプションを参照してください。
RequestTiming データベースに、各接続のタイミング情報を保守するように指示します。この機能はデフォルトでオフになっています。オンにすると、データベース・サーバは各接続の累積タイマを保守します。このタイマは、接続が確立した状態でのサーバ・ステータスごとの時間を示すものです。sa_performance_diagnostics システム・プロシージャを使用して、このタイミング情報の概要を取得できます。または、次の接続プロパティを調べて、各値を取得できます。
接続プロパティを参照してください。
RequestTiming サーバ・プロパティがオンであると、追加のカウンタを保守するため、要求ごとに多少のオーバーヘッドがかかります。-zt オプションとsa_performance_diagnostics システム・プロシージャを参照してください。
SecureFeatures すでに動作しているデータベース・サーバの保護機能を有効または無効にできます。feature-list は、カンマで区切られた機能名または機能セットのリストです。保護機能のリストに追加すると、機能が動作することが保証 (防止) されます。保護機能のリストから項目を削除するには、保護機能名の前にマイナス記号 (-) を指定します。有効なfeature-list 値のリストについては、-sf サーバ・オプションを参照してください。
機能を有効または無効にするために行った変更は、接続で直ちに有効になります。この設定は、sa_server_option システム・プロシージャを実行する接続に影響を与えません。変更を確認するには、切断してから再接続する必要があります。
sa_server_option システム・プロシージャを使用して、機能を有効または無効にするには、データベース・サーバの起動時に -sk オプションを使用してキーを指定してから、secure_feature_key データベース・オプションの値を
-sk で指定したキーに設定します (たとえば、SET TEMPORARY OPTION secure_feature_key = 'j978kls12'
など)。secure_feature_key データベース・オプションを -sk 値に設定すると、保護機能の設定を変更できます。-sk サーバ・オプションとsecure_feature_key [データベース]を参照してください。
たとえば、2 つの機能を無効にして 3 番目を有効にするには、次の構文を使用します。
CALL sa_server_option('SecureFeatures', 'CONSOLE_LOG,WEBCLIENT_LOG,-REQUEST_LOG' ); |
この文を実行すると、CONSOLE_LOG と WEBCLIENT_LOG が保護機能のリストに追加され、REQUEST_LOG がリストから削除されます。
WebClientLogFile Web サービス・クライアント・ログ・ファイルの名前。Web サービス・クライアント・ログ・ファイルは、-zoc サーバ・オプションや WebClientLogFile プロパティを使用して、ファイル名を設定またはリセットするたびにトランケートされます。これは文字列であるため、パスの円記号は 2 つ重ねます。-zoc サーバ・オプションを参照してください。
WebClientLogging このオプションは、Web サービス・クライアントのロギングを有効または無効にします。ログに記録される情報には、HTTP の要求と応答のデータが含まれています。ON を指定すると Web サービス・クライアント・ログ・ファイルへのロギングが開始され、OFF を指定するとファイルへのロギングが中止されます。-zoc サーバ・オプションを参照してください。
アプリケーション・プロファイリングまたは要求ロギングに関連する次のオプションには、DBA 権限または PROFILE 権限が必要です。
この他のすべてのオプションには DBA 権限が必要です。
なし
次の文は、データベース・サーバへの新しい接続を禁止します。
CALL sa_server_option( 'ConnsDisabled', 'YES' ); |
次の文は、現在のデータベースへの新しい接続を禁止します。
CALL sa_server_option( 'ConnsDisabledForDB', 'YES' ); |
次の文は、すべての SQL 文、プロシージャの呼び出し、プラン、イベントのブロックとブロック解除のロギングを有効にし、新規要求ログの開始を指定します。
CALL dbo.sa_server_option( 'RequestLogging', 'SQL+PROCEDURES+BLOCKS+PLAN+REPLACE' ); |
Copyright © 2009, iAnywhere Solutions, Inc. - SQL Anywhere 11.0.1 |