初期化パラメータ
データベースをプロビジョニングすると、Autonomous Databaseによってデータベース初期化パラメータが自動的に構成されます。 サービスの使用を開始するために初期化パラメータを設定する必要はありません。 ただし、必要に応じていくつかのパラメータを変更することができます。
変更可能な初期化パラメータ
次の表に、ALTER SESSION
でのみ変更可能な初期化パラメータを示します。
ALTER SESSIONでのみ変更可能 | 詳細情報 |
---|---|
CONSTRAINTS |
|
CONTAINER |
|
CURRENT_SCHEMA |
|
CURSOR_INVALIDATION |
CURSOR_INVALIDATION |
DEFAULT_COLLATION |
|
DEFAULT_CREDENTIAL |
|
EDITION |
|
ISOLATION_LEVEL |
|
JSON_BEHAVIOR |
このパラメータは、Oracle Database 23aiでのみ適用できます。 詳細については、JSON_BEHAVIORを参照してください。 |
JSON_EXPRESSION_CHECK |
JSON_EXPRESSION_CHECK |
OPTIMIZER_SESSION_TYPE |
|
OPTIMIZER_USE_INVISIBLE_INDEXES |
|
READ_ONLY |
|
SQL_TRACE |
詳細は、「Autonomous DatabaseでのSQLトレースの実行」を参照してください |
|
|
SQL_TRANSPILER |
このパラメータは、Oracle Database 23aiでのみ適用できます。 詳細については、SQL_TRANSPILERを参照してください。 |
STATISTICS_LEVEL |
STATISTICS_LEVEL |
TIME_ZONE |
|
XML_PARAMS |
このパラメータは、Oracle Database 23aiでのみ適用できます。 詳細については、XML_PARAMSを参照してください。 |
次の表に、ALTER SYSTEM
でのみ変更可能な初期化パラメータを示します。
ALTER SYSTEMでのみ変更可能 | 詳細情報 |
---|---|
BLANK_TRIMMING |
BLANK_TRIMMING |
FIXED_DATE |
FIXED_DATE |
JOB_QUEUE_PROCESSES |
JOB_QUEUE_PROCESSES |
LOCKDOWN_ERRORS |
詳細は、LOCKDOWN_ERRORSを参照してください |
MAX_IDLE_BLOCKER_TIME |
MAX_IDLE_BLOCKER_TIME 値が5より大きい場合、パラメータは5に設定されたかのように動作 |
MAX_IDLE_TIME |
MAX_IDLE_TIME デフォルトでは、 |
SESSION_EXIT_ON_PACKAGE_STATE_ERROR
|
次の表に、ALTER SESSION
またはALTER SYSTEM
で変更可能な初期化パラメータを示します。
ALTER SESSIONまたはALTER SYSTEMで変更可能 | 詳細情報 |
---|---|
APPROX_FOR_AGGREGATION |
APPROX_FOR_AGGREGATION |
APPROX_FOR_COUNT_DISTINCT |
APPROX_FOR_COUNT_DISTINCT |
APPROX_FOR_PERCENTILE |
APPROX_FOR_PERCENTILE |
CLIENT_PREFETCH_ROWS |
CLIENT_PREFETCH_ROWSを参照してください |
CONTAINER_DATA |
CONTAINER_DATA |
CURSOR_SHARING |
CURSOR_SHARING |
DDL_LOCK_TIMEOUT |
DDL_LOCK_TIMEOUT |
GROUP_BY_POSITION |
|
GROUP_BY_POSITION_ENABLED |
このパラメータは、Oracle Database 23aiでのみ適用できます。 詳細は、GROUP_BY_POSITION_ENABLEDを参照してください |
HEAT_MAP |
HEAT_MAP |
IGNORE_SESSION_SET_PARAM_ERRORS |
IGNORE_SESSION_SET_PARAM_ERRORS |
LDAP_DIRECTORY_ACCESS |
LDAP_DIRECTORY_ACCESS |
LOAD_WITHOUT_COMPILE |
|
MAX_STRING_SIZE
|
詳細は、「データ型」を参照してください |
NLS_CALENDAR
|
NLS_CALENDAR |
NLS_COMP |
NLS_COMP |
NLS_CURRENCY
|
NLS_CURRENCY |
NLS_DATE_FORMAT |
NLS_DATE_FORMAT |
NLS_DATE_LANGUAGE
|
NLS_DATE_LANGUAGE |
NLS_DUAL_CURRENCY
|
NLS_DUAL_CURRENCY |
NLS_ISO_CURRENCY
|
NLS_ISO_CURRENCY |
NLS_LANGUAGE
|
NLS_LANGUAGE |
NLS_LENGTH_SEMANTICS |
NLS_LENGTH_SEMANTICS |
NLS_NCHAR_CONV_EXCP
|
NLS_NCHAR_CONV_EXCP |
NLS_NUMERIC_CHARACTERS
|
NLS_NUMERIC_CHARACTERS |
NLS_SORT |
NLS_SORT |
NLS_TERRITORY |
NLS_TERRITORY |
NLS_TIME_FORMAT |
|
NLS_TIME_TZ_FORMAT
|
|
NLS_TIMESTAMP_FORMAT |
NLS_TIMESTAMP_FORMAT |
NLS_TIMESTAMP_TZ_FORMAT |
NLS_TIMESTAMP_TZ_FORMAT |
OPTIMIZER_CAPTURE_SQL_QUARANTINE
|
OPTIMIZER_CAPTURE_SQL_QUARANTINE |
OPTIMIZER_IGNORE_HINTS
|
|
OPTIMIZER_IGNORE_PARALLEL_HINTS |
|
OPTIMIZER_MODE |
OPTIMIZER_MODE |
OPTIMIZER_REAL_TIME_STATISTICS
|
OPTIMIZER_REAL_TIME_STATISTICS |
OPTIMIZER_USE_SQL_QUARANTINE |
OPTIMIZER_USE_SQL_QUARANTINE |
PLSCOPE_SETTINGS |
PLSCOPE_SETTINGS |
PLSQL_CCFLAGS |
PLSQL_CCFLAGS |
PLSQL_DEBUG |
PLSQL_DEBUG |
PLSQL_IMPLICIT_CONVERSION_BOOL |
このパラメータは、Oracle Database 23aiでのみ適用できます。 PLSQL_IMPLICIT_CONVERSION_BOOLを参照してください |
PLSQL_OPTIMIZE_LEVEL |
PLSQL_OPTIMIZE_LEVEL |
PLSQL_WARNINGS |
PLSQL_WARNINGS |
QUERY_REWRITE_INTEGRITY |
QUERY_REWRITE_INTEGRITY |
RECYCLEBIN
|
RECYCLEBIN |
REMOTE_DEPENDENCIES_MODE |
REMOTE_DEPENDENCIES_MODE |
RESULT_CACHE_INTEGRITY |
RESULT_CACHE_INTEGRITYを参照してください |
RESULT_CACHE_MODE |
RESULT_CACHE_MODEを参照してください |
SKIP_UNUSABLE_INEDEXES |
|
SQL_HISTORY_ENABLED |
このパラメータは、Oracle Database 23ai以降で使用できます。 詳細については、SQL_HISTORY_ENABLEDを参照してください。 |
SYSDATE_AT_DBTIMEZONE |
「SYSDATE_AT_DBTIMEZONE Autonomous DatabaseでのSYSDATEのタイム・ゾーンの選択」を参照してください |
XML_CLIENT_SIDE_DECODING |
XML_CLIENT_SIDE_DECODINGを参照してください |
初期化パラメータの詳細は、「Oracle Databaseリファレンス」を参照してください。
- SESSION_EXIT_ON_PACKAGE_STATE_ERROR
SESSION_EXIT_ON_PACKAGE_STATE_ERROR
は、セッションで実行されているステートフルPL/SQLパッケージの特別な処理を有効または無効にします。 - Autonomous DatabaseでのSYSDATEのSYSDATE_AT_DBTIMEZONEタイム・ゾーンの選択
SYSDATE_AT_DBTIMEZONE
は、SYSDATE
およびSYSTIMESTAMP
へのコールで返される日時値のセッションでの特別な処理を有効にします。 - CLIENT_PREFETCH_ROWS
CLIENT_PREFETCH_ROWS
パラメータを設定すると、クライアントが問合せ結果セットの行のフェッチ中に必要なラウンドトリップの数を減らすことができます。 - JOB_QUEUE_PROCESSES
JOB_QUEUE_PROCESSES
パラメータを設定して、Oracle Scheduler (DBMS_SCHEDULER
)ジョブを実行するために作成できるジョブ・ワーカーの最大数を指定します。 - LOCKDOWN_ERRORS
LOCKDOWN_ERRORS
パラメータを設定して、Autonomous Databaseロックダウン・プロファイル・エラーが発生するか無視するかを制御します。 - RESULT_CACHE_INTEGRITY
RESULT_CACHE_INTEGRITY
パラメータを設定して、結果キャッシュで、結果キャッシュの候補として非確定的な構成要素を使用する問合せを考慮するかどうかを指定します。 - RESULT_CACHE_MODE
RESULT_CACHE_MODE
パラメータを設定して、結果セットを結果キャッシュに格納できる問合せを指定します。 結果キャッシュ演算子が指定されている問合せ計画のみが、結果キャッシュに対する読取りまたは書込みを試行します。
SESSION_EXIT_ON_PACKAGE_STATE_ERROR
SESSION_EXIT_ON_PACKAGE_STATE_ERROR
は、セッションで実行されているステートフルPL/SQLパッケージの特別な処理を有効または無効にします。
プロパティ | 説明 |
---|---|
パラメータ・タイプ | Boolean |
デフォルト値 | FALSE |
変更可能 | ALTER SYSTEM |
値の範囲 | TRUE | FALSE |
SESSION_EXIT_ON_PACKAGE_STATE_ERROR
は、セッションで実行されているステートフルPL/SQLパッケージの処理を指定します。 Oracle提供オブジェクトの計画メンテナンス中など、そのようなパッケージが変更されると、パッケージのアクティブなインスタンス化があるセッションでは、パッケージを実行しようとすると次のエラーが発生します:
ORA-4068 existing state of package has been discarded
ただし、ORA-4068
エラーを受け取るアプリケーション・コードは、再試行ロジックでこのエラーを処理するよう装備されていない可能性があります。
SESSION_EXIT_ON_PACKAGE_STATE_ERROR
をTRUE
に設定すると、このケースの処理が異なります。 SESSION_EXIT_ON_PACKAGE_STATE_ERROR
がTRUE
の場合、パッケージの状態が破棄されたときにORA-4068
エラーを呼び出すのではなく、セッションはすぐに終了します。 これは、多くのアプリケーションが自動的かつ透過的に接続を再確立することでセッションの終了を処理できるので有益です。
親トピック: 初期化パラメータ
SYSDATE_AT_DBTIMEZONE Autonomous DatabaseでのSYSDATEのタイム・ゾーンの選択
SYSDATE_AT_DBTIMEZONE
は、SYSDATE
およびSYSTIMESTAMP
へのコールで返される日時値のセッションでの特別な処理を有効にします。
SYSDATE_AT_DBTIMEZONE
の値に応じて、デフォルトのAutonomous Databaseタイム・ゾーン、調整済ユニバーサル・タイム(UTC)、またはデータベースに設定したタイム・ゾーンに基づく日時が表示されます。
プロパティ | 説明 |
---|---|
パラメータ・タイプ | Boolean |
デフォルト値 | FALSE |
変更可能 | ALTER SESSION 、ALTER SYSTEM |
値の範囲 | TRUE | FALSE |
デフォルトAutonomous Databaseタイム・ゾーン
デフォルトのAutonomous Databaseタイム・ゾーンは、協定世界時(UTC)で、SYSDATE
およびSYSTIMESTAMP
へのデフォルト・コールはUTCで日時を返します。
データベースのタイムゾーンを変更するには、次の文を実行します。
この例では、データベースのタイムゾーンをUTC-5
に設定します。
ALTER DATABASE SET TIME_ZONE='-05:00';
この例では、米国東海岸のデータベース・タイムゾーンを設定: America/New_York
と時間は、DSTスイッチで自動的に調整されます:
ALTER DATABASE SET TIME_ZONE='America/New_York';
ノート:
変更を有効にするには、Autonomous Databaseインスタンスを再起動する必要があります。データベース・タイム・ゾーンを設定した後、デフォルトではSYSDATE
およびSYSTIMESTAMP
はUTCで日時を返し続けます(SYSDATE_AT_DBTIMEZONE
はデフォルトでFALSE
です)。 セッションでSYSDATE_AT_DBTIMEZONE
をTRUE
に設定すると、SYSDATE
およびSYSTIMESTAMP
はデータベースのタイム・ゾーンを返します。
ALTER DATABASE
でSET TIME_ZONE
句を使用する方法の詳細は、Oracle Database 19cの「データベース・タイム・ゾーンの設定」またはOracle Database 23aiを参照してください。
セッションでのSYSDATE_AT_DBTIMEZONEの使用
セッションでSYSDATE_AT_DBTIMEZONE
がFALSE
の場合、SYSDATE
およびSYSTIMESTAMP
をコールすると、デフォルトのAutonomous Databaseタイム・ゾーン(協定世界時(UTC))に基づいて値が返されます。
セッションでSYSDATE_AT_DBTIMEZONE
がTRUE
の場合、SYSDATE
またはSYSTIMESTAMP
へのコールは、データベースのタイムゾーンに基づいて日時を返します。
ノート:
SYSDATE_AT_DBTIMEZONE
をTRUE
に設定すると、アプリケーションSQLの演算子としてSYSDATE
およびSYSTIMESTAMP
のみが使用されます(問合せ、DMLおよびCTAS操作など)。 このパラメータを使用する場合は、クライアント/セッション・タイムゾーンがデータベースのタイムゾーンと一致することをお薦めします。
例
次の例では、SYSDATE_AT_DBTIMEZONE
パラメータ値に基づいて、2つの異なるタイム・ゾーンの日時を戻します:
SQL> SELECT DBTIMEZONE FROM DUAL;
DBTIMEZONE
_____________
-05:00
SQL> ALTER SESSION SET SYSDATE_AT_DBTIMEZONE=FALSE;
Session altered.
SQL> SELECT SYSTIMESTAMP FROM DUAL;
SYSTIMESTAMP
______________________________________
27-JAN-22 06.59.45.708082000 PM GMT
SQL> ALTER SESSION SET SYSDATE_AT_DBTIMEZONE=TRUE;
Session altered.
SQL> SELECT SYSTIMESTAMP FROM DUAL;
SYSTIMESTAMP
_________________________________________
27-JAN-22 02.14.47.578946000 PM -05:00
ノート:
データベース・アクションのSQLワークシートでSYSDATE
またはSYSTIMESTAMP
問合せを実行すると、返される日時の値はUTC (SYSDATE_AT_DBTIMEZONE
パラメータがTRUE
またはFALSE
に設定されている場合)になります。 データベース・アクションでの作業時にデータベースのタイム・ゾーンを取得するには、次のようにTO_CHAR()
を使用します:
SQL> SELECT TO_CHAR(SYSTIMESTAMP,'YYYY-MM-DD"T"HH24:MI:SS TZH":"TZM') FROM DUAL;
TO_CHAR(SYSTIMESTAMP,'YYYY-MM-DD"T"HH24:MI:SSTZH":"TZM')
___________________________________________________________
2022-01-27T14:15:00 -05:00
親トピック: 初期化パラメータ
CLIENT_PREFETCH_ROWS
CLIENT_PREFETCH_ROWS
パラメータを設定すると、クライアントが問合せ結果セットの行のフェッチ中に必要なラウンドトリップの数を減らすことができます。
CLIENT_PREFETCH_ROWS
は、クライアント・アプリケーションを変更せずに、Oracleクライアント・ドライバによってプリフェッチされる行数を指定します。 クライアント・ドライバは、問合せが正常に実行された後、およびデータベースに送信される後続のフェッチ・リクエストごとに、プリフェッチされた行をバッファリングします。
このパラメータは、Oracle Call Interface (OCI)を使用してデータベースに接続するクライアントにのみ適用されます。
このパラメータは、すべてのプラットフォームでOracle Instant Client/Oracle Database Client 19.17 (以降)および21.8 (以降)でのみ適用されます。
プロパティ | 説明 |
---|---|
パラメータ・タイプ | Integer |
構文 | CLIENT_PREFETCH_ROWS = integer |
デフォルト値 | 0 (クライアント側の設定のみが適用されます)
|
変更可能 | ALTER SYSTEM , ALTER SESSION |
値の範囲 | 0 からUB4MAXVAL (4294967295 )
|
基本 | いいえ |
CLIENT_PREFETCH_ROWS
パラメータは、ALTER SESSION
またはALTER SYSTEM
で設定できます。 ALTER SESSION
を使用してパラメータ値が変更されると、後続の結果セット・フェッチでその特定のセッションに対して新しい値が有効になります。 パラメータ値がALTER SYSTEM
を使用して変更された場合、新しい値は、ALTER SYSTEM
コマンドの後に作成された接続で実行される文に対して有効になります。
たとえば、CLIENT_PREFETCH_ROWS
が100に設定され、クライアント・アプリケーションが10行のフェッチを要求した場合、合計110行がクライアント・ドライバに返されます。 110行中の最初の10行がアプリケーションに渡され、クライアント・ドライバは残りの100行を内部的にバッファリングします。 クライアント・アプリケーションからの次の10行のフェッチで、各フェッチの反復ごとに10行ずつ、クライアント・ドライバによって内部的にバッファされる100行からフェッチできます。 このプロセスによって、データベースとの間で必要なネットワーク・ラウンドトリップの数が削減されます。 この例では、11回目のフェッチで、新しいネットワーク・ラウンドトリップが発生し、結果セットが使い果たされず、サイクルが繰り返されるかぎり、データベースは110行の次のバッチを返します。
CLIENT_PREFETCH_ROWS
の設定に関するノート:
-
CLIENT_PREFETCH_ROWS
がゼロ以外の値に設定されている場合、その値は、プリフェッチ行数のデフォルトのOCI_ATTR_PREFETCH_ROWS
値よりも優先されます。 -
OCI_ATTR_PREFETCH_ROWS
値がデフォルト以外の値に設定されている場合、プリフェッチ行数のCLIENT_PREFETCH_ROWS
値は無視されます。 -
OCIAttrSet()
でのCLIENT_PREFETCH_ROWS
の使用:OCI_ATTR_PREFETCH_ROWS
は、プリフェッチされる最上位の行数を設定します。 デフォルト値は1行です。 ただし、CLIENT_PREFETCH_ROWS
が設定されている場合、プリフェッチされる最上位の行数は、次の優先順位で決定されます:-
OCIAttrSet()
関数またはoraaccess.xml
を値'1'として使用してOCI_ATTR_PREFETCH_ROWS
属性を設定すると、データベース初期化パラメータCLIENT_PREFETCH_ROWS
値が優先され、プリフェッチされる最上位行数が決定されます。 -
OCIAttrSet()
関数またはoraaccess.xml
を値'x' (1以外)として使用してOCI_ATTR_PREFETCH_ROWS
属性を設定すると、'x'トップレベルの行数がプリフェッチされ、データベース初期化パラメータCLIENT_PREFETCH_ROWS
は無視されます。 -
OCIAttrSet()
またはoraaccess.xml
を使用してOCI_ATTR_PREFETCH_ROWS
値を設定しない場合、データベース初期化パラメータのCLIENT_PREFETCH_ROWS
値が優先され、プリフェッチされる最上位の行数が決定されます。
-
-
OCIAttrGet()
でのCLIENT_PREFETCH_ROWS
の使用:関数
OCIAttrGet()
は、OCI_ATTR_PREFETCH_ROWS
、oraaccess.xml
およびデータベース初期化パラメータCLIENT_PREFETCH_ROWS
から有効なプリフェッチ行の値セットを返します。OCI_ATTR_PREFETCH_MEMORY
値が設定されている場合、OCIAttrGet()
によって返される値は最後のプリフェッチ行値ではない可能性があり、OCI_ATTR_PREFETCH_MEMORY
属性で指定されたメモリー値によって許可される最大行数に制限できます。
関連項目:
-
結果のフェッチおよびプリフェッチ数の設定の詳細は、「Oracle Call Interface開発者ガイド」を参照してください。
親トピック: 初期化パラメータ
JOB_QUEUE_PROCESSES
JOB_QUEUE_PROCESSES
パラメータを設定して、Oracle Scheduler (DBMS_SCHEDULER
)ジョブを実行するために作成できるジョブ・ワーカーの最大数を指定します。
値を0に設定すると、Oracle以外のスケジューラ・ジョブが無効になります。
プロパティ | 説明 |
---|---|
パラメータ・タイプ | Integer |
構文 | JOB_QUEUE_PROCESSES = integer |
デフォルト値 |
デフォルト値は、「ECPU数」 (データベースでOCPUを使用している場合は「OCPUカウント」)および「ECPU自動スケーリング」 (データベースでOCPUを使用している場合は「OCPUの自動スケーリング」)の設定によって異なります。 詳細は次の表を参照してください。 |
変更可能 | ALTER SYSTEM |
値の範囲 |
最小値: 最大値は、次の表に示すように、「ECPU数」 (データベースでOCPUを使用している場合は「OCPUカウント」)および「ECPU自動スケーリング」 (データベースでOCPUを使用している場合は「OCPUの自動スケーリング」)の設定によって異なります。 |
JOB_QUEUE_PROCESSES
のデフォルト値と最大値は、使用するコンピュート・モデルによって異なります。 詳細については、「Autonomous Databaseのコンピュート・モデル」を参照してください。
コンピュート・モデル | 自動スケーリングが無効になっているデフォルトおよび最大値 | 自動スケーリングが有効なデフォルト値および最大値 |
---|---|---|
ECPU | 7.5 x ECPU数 | 22.5 x ECPU数 |
OCPU | 30 x OCPU数 | 90 x OCPU数 |
Oracle Schedulerジョブ・コーディネータおよびジョブ・ワーカーは、JOB_QUEUE_PROCESSES
パラメータによって制御されます。 Oracle Schedulerジョブ用に作成されるジョブ・ワーカーの数は、使用可能なリソース、リソース・マネージャ設定、現在実行中のジョブなどの複数のファクタに応じて、スケジューラにより自動チューニングされます。
JOB_QUEUE_PROCESSES
のデフォルト値では、アプリケーションのサービス品質とシステム・リソースの適切な使用の両立を図っています。 ただし、すべての環境にデフォルト値が適合するとはかぎりません。
JOB_QUEUE_PROCESSES
の値を0に設定すると、Oracle以外のスケジューラ・ジョブが無効になります。 JOB_QUEUE_PROCESSES
が0
に設定されている場合、Oracle提供ユーザーの内部ジョブは無効化されません(Oracle提供ユーザーが実行するサービス関連ジョブは引き続きスケジュールされます)。
Oracle提供ユーザーは、値がY
のORACLE_MAINTAINED
としてマークされたユーザーです。 Oracle提供以外のユーザーは、値がN
のORACLE_MAINTAINED
としてマークされたユーザーです。
詳細については、ALL_USERSを参照してください。
親トピック: 初期化パラメータ
LOCKDOWN_ERRORS
LOCKDOWN_ERRORS
パラメータを設定して、Autonomous Databaseロックダウン・プロファイル・エラーが発生するか無視するかを制御します。
Autonomous Databaseは、ロックダウン・プロファイルを使用して、特定のデータベース機能および機能を制限します。 デフォルトでは、Autonomous Databaseロックダウン・プロファイルによって制限されたSQLコマンドを実行しようとすると、データベースによってエラーが発生します。 LOCKDOWN_ERRORS
パラメータを使用すると、ロックダウン・プロファイル・エラーを抑制できます。 また、LOCKDOWN_ERRORS
が値IGNORE
に設定されている場合、エラーを無視すると、データベースのSQL文、ユーザーおよびコマンド・タイムスタンプに関する詳細が記録されます。
ノート:
このパラメータの値をIGNORE
に設定する前に、既存のスクリプトを慎重に評価してください。 値をIGNORE
に設定すると、使用する既存のスクリプトによってロックダウン・エラーが発生しなくなります。
DBA_LOCKDOWN_ERRORS
ビューを使用して、ロックダウン・プロファイル・エラーに関する情報を取得できます。 詳細については、「ロックダウン・エラー・ビュー」を参照してください。
プロパティ | 説明 |
---|---|
パラメータ・タイプ | String |
構文 | LOCKDOWN_ERRORS = IGNORE | RAISE |
デフォルト値 |
デフォルト値は |
変更可能 | ALTER SYSTEM |
有効値 |
|
親トピック: 初期化パラメータ
RESULT_CACHE_INTEGRITY
RESULT_CACHE_INTEGRITY
パラメータを設定して、結果キャッシュで、結果キャッシュの候補として非確定的な構成要素を使用する問合せを考慮するかどうかを指定します。
プロパティ | 説明 |
---|---|
パラメータ・タイプ | String |
構文 | RESULT_CACHE_INTEGRITY = { ENFORCED | TRUSTED } |
デフォルト値 |
Autonomous Databaseの場合、デフォルト値は次のとおりです: |
変更可能 | ALTER SYSTEM |
値
-
ENFORCED
:RESULT_CACHE_MODE
または指定されたヒントの設定に関係なく、確定的構成のみが結果キャッシュの対象となります。 たとえば、確定的として宣言されていないPL/SQL関数を使用する問合せは、キャッシュされません(関数が確定的として宣言されないかぎり、そのような関数を使用する問合せ結果はキャッシュされません)。 -
TRUSTED
: データベースは、RESULT_CACHE_MODE
および指定されたヒントの設定を考慮し、結果キャッシュの候補として、非確定的な可能性がある構造を使用した問合せを検討します。 たとえば、確定的として宣言されていないPL/SQL関数を使用した問合せはキャッシュできます。 ただし、非確定的であることがわかっている結果はキャッシュされません(たとえば、SYSDATE
またはSYSDATE
を含む構成)。
親トピック: 初期化パラメータ
RESULT_CACHE_MODE
RESULT_CACHE_MODE
パラメータを設定して、結果セットを結果キャッシュに格納できる問合せを指定します。 結果キャッシュ演算子が指定されている問合せ計画のみが、結果キャッシュに対する読取りまたは書込みを試行します。
プロパティ | 説明 |
---|---|
パラメータ・タイプ | String |
構文 | RESULT_CACHE_MODE = { MANUAL | MANUAL_TEMP | FORCE | FORCE_TEMP } |
デフォルト値 |
ワークロード・タイプがデータ・ウェアハウスに設定されているAutonomous Databaseの場合: ワークロード・タイプがトランザクション処理、JSONまたはAPEXの場合: |
変更可能 | ALTER SESSION 、ALTER SYSTEM |
詳細については、RESULT_CACHE_MODEを参照してください。
- SQL結果キャッシュ・ヒントの使用
アプリケーション・レベルで結果キャッシュ・ヒントを使用して、キャッシュ動作を制御します。 SQLの結果キャッシュ・ヒントは、結果キャッシュのモードおよび表注釈よりも優先されます。
親トピック: 初期化パラメータ
SQLの結果キャッシュ・ヒントの使用
キャッシュの動作を制御するには、アプリケーション・レベルで結果キャッシュ・ヒントを使用します。 SQLの結果キャッシュ・ヒントは、結果キャッシュのモードおよび表注釈よりも優先されます。
SQL結果キャッシュ・ヒントは次の方法で使用できます:
-
RESULT_CACHE
ヒントの使用 -
NO_RESULT_CACHE
ヒントの使用 -
ビューでの
RESULT_CACHE
ヒントの使用
RESULT_CACHE
ヒントの使用
結果キャッシュ・モードがMANUAL
の場合、/*+ RESULT_CACHE */
ヒントは、問合せブロックの結果をキャッシュに格納し、キャッシュされた結果を今後の実行で使用するようデータベースに指示します。
詳細については、「RESULT_CACHEヒントの使用」と「RESULT_CACHEヒント」を参照してください。
NO_RESULT_CACHE
ヒントの使用
/*+ NO_RESULT_CACHE */
ヒントは、サーバーまたはクライアントの結果キャッシュに結果をキャッシュしないようにデータベースに指示します。
詳細については、「NO_RESULT_CACHEヒントの使用」と「RESULT_CACHEヒント」を参照してください。
ビューでのRESULT_CACHE
ヒントの使用
RESULT_CACHE
ヒントは、ヒントが指定された問合せブロックにのみ適用されます。 ビューにのみヒントが指定されている場合は、その結果のみがキャッシュされます。
詳細については、「ビューでのRESULT_CACHEヒントの使用」と「RESULT_CACHEヒント」を参照してください。
親トピック: RESULT_CACHE_MODE