このページは機械翻訳したものです。

DBMS_PROXY_SQL

エラスティック・プール・リーダーの問合せオフロードを有効または無効にする手順について説明します。

DISABLE_READ_ONLY_OFFLOADプロシージャ

このプロシージャは、Autonomous Databaseエラスティック・プール・リーダーの問合せオフロードを無効にします。

構文

DBMS_PROXY_SQL.DISABLE_READ_ONLY_OFFLOAD;

EXEC DBMS_PROXY_SQL.DISABLE_READ_ONLY_OFFLOAD;

ENABLE_READ_ONLY_OFFLOADプロシージャ

このプロシージャは、Autonomous Databaseエラスティック・プール・リーダーの問合せオフロードを有効にします。

構文

DBMS_PROXY_SQL.ENABLE_READ_ONLY_OFFLOAD( 
      module_name       IN CLOB, 
      action_name       IN CLOB);

パラメータ

パラメータ 説明

module_name

モジュール名のリストをカンマ区切りリストとして指定します。リストには、問合せがオフロード対象とみなされるモジュールを指定します(セッションのモジュール名がリストの値と一致する場合)。

このパラメータのデフォルト値はNULLです。つまり、セッションのモジュール名は任意の値にでき、セッションはオフロードの対象とみなされます。

action_name

アクション名のリストをカンマ区切りリストとして指定します。リストでは、問合せがオフロードの対象とみなされるアクション名を指定します(セッションの処理名がリストの値と一致する場合)。

このパラメータのデフォルト値はNULLです。つまり、セッションのアクション名は任意の値にでき、セッションはオフロードの対象とみなされます。

使用上のノート

  • module_nameaction_nameの両方が指定されている場合、セッションのモジュール名はモジュール名のリストの値と一致する必要があり、そのアクション名はオフロード対象とみなされるセッションのアクション名のリストの値と一致する必要があります。

  • セッションに対して問合せオフロードが有効になっている場合、問合せがオフロードされるリフレッシュ可能クローンの名前を確認できます。たとえば:

    SELECT sys_context('userenv', 'con_name') from dual;

    問合せがリフレッシュ可能クローンにオフロードされていない場合、この問合せにはエラスティック・プール・リーダーの名前が表示されます。

  • ビューDBA_PROXY_SQL_ACTIONSおよびDBA_PROXY_SQL_MODULESには、問合せオフロード用に構成されたモジュールまたはアクションのリストが表示されます。問合せオフロードが有効になっていないセッションからこれらのビューを問い合せる必要があります。

    詳細は、DBA_PROXY_SQLビューを参照してください。

  • モジュール名またはアクション名で指定したセッションのリストから問合せをオフロードする場合、DBMS_APPLICATION_INFOで設定されたモジュール名およびアクション名では大文字と小文字が区別されます。DBMS_PROXY_SQL.ENABLE_READ_ONLY_OFFLOADは、この大/小文字を区別する動作に従います。たとえば、セッションに小文字のモジュール名または大/小文字のモジュール名が混在している場合、DBMS_PROXY_SQL.ENABLE_READ_ONLY_OFFLOADで問合せオフロードを有効にし、module_nameまたはaction_nameパラメータを含めると、大/小文字がパラメータ値と一致する必要があります。

    DBMS_APPLICATION_INFO.READ_MODULEを使用して、現在のセッションのモジュール名およびアクション名を確認できます:

    set serveroutput on;
    declare
      l_mod varchar2(50);
      l_act varchar2(50);
    BEGIN
    DBMS_APPLICATION_INFO.READ_MODULE(l_mod, l_act);
      DBMS_OUTPUT.PUT_LINE('l_mod: ' || l_mod);
      DBMS_OUTPUT.PUT_LINE('l_act: ' || l_act);
    END;
    /

サンプル

EXEC DBMS_PROXY_SQL.ENABLE_READ_ONLY_OFFLOAD;


DECLARE 
   mod_values clob := to_clob('["mod1", "mod2"]');
   act_values clob := to_clob('["act1", "act2"]');
BEGIN 
   DBMS_PROXY_SQL.ENABLE_READ_ONLY_OFFLOAD(
      module_name => mod_values,                                          
      action_name => act_values);
END;
/