目次

Search

  1. はじめに
  2. 一括取り込みデータベース

一括取り込みデータベース

一括取り込みデータベース

Oracleターゲット

Oracleターゲット

次のリストは、Oracleターゲットを準備および使用する際の考慮事項を示しています。

ターゲットの準備

  • 一括取り込みデータベース
    では、データをOracleターゲットデータベースにロードするために、ユーザーに特定の権限が必要です。オンプレミスOracleターゲットの場合、Oracleターゲットに接続する一括取り込みデータベースユーザー(
    cmid_user
    )に、次のユーザー特権を付与します。
    GRANT CREATE SESSION TO
    cmid_user
    ; GRANT SELECT ON "PUBLIC".V$DATABASE TO
    cmid_user
    ; GRANT SELECT ON "PUBLIC".V$CONTAINERS TO
    cmid_user
    ; GRANT SELECT ON DBA_USERS TO
    cmid_user
    ; GRANT SELECT ON DBA_TABLES TO
    cmid_user
    ; GRANT SELECT ON DBA_OBJECT_TABLES TO
    cmid_user
    ; GRANT SELECT ON DBA_INDEXES TO
    cmid_user
    ; GRANT SELECT ON DBA_OBJECTS TO
    cmid_user
    ; GRANT CREATE TABLE <
    schema.table
    > TO
    cmid_user
    ; <--Unless you grant on ANY TABLE GRANT SELECT ON ALL_CONSTRAINTS TO
    cmid_user
    ; GRANT SELECT ON ALL_OBJECTS TO
    cmid_user
    ; GRANT SELECT ON SYS.TAB$ TO
    cmid_user
    ; GRANT SELECT ON SYS.RECYCLEBIN$ TO
    cmid_user
    ; GRANT SELECT ON SYS.COL$ TO
    cmid_user
    ; <-- If cmid_user is the owner of the target schema GRANT SELECT ON SYS.CCOL$ TO <
    cmid_user
    >; GRANT SELECT ON SYS.CDEF$ TO
    cmid_user
    ; GRANT SELECT ON SYS.OBJ$ TO
    cmid_user
    ; GRANT SELECT ON SYS.COLTYPE$ TO
    cmid_user
    ; GRANT SELECT ON SYS.ATTRCOL$ TO
    cmid_user
    ; GRANT SELECT ON SYS.IDNSEQ$ TO
    cmid_user
    ; GRANT SELECT ON SYS.ATTRCOL$ TO
    cmid_user
    ; GRANT SELECT ON SYS.IDNSEQ$ TO
    cmid_user
    ; GRANT SELECT ON SYS.IND$ TO
    cmid_user
    ; -- Grant the following if cmid_user is NOT the owner of the target schema. If you prefer, you -- can grant to individual target tables and indexes instead of to ANY TABLE or ANY INDEX. GRANT ALTER SESSION TO
    cmid_user
    ; GRANT RESOURCE TO
    cmid_user
    ; GRANT SELECT ANY TABLE TO
    cmid_user
    ; GRANT SELECT ANY DICTIONARY TO <cmid_user>; GRANT ALTER ANY TABLE TO
    cmid_user
    ; GRANT CREATE ANY TABLE TO
    cmid_user
    ; GRANT DROP ANY TABLE TO
    cmid_user
    ; GRANT INSERT ANY TABLE TO
    cmid_user
    ; GRANT UPDATE ANY TABLE TO
    cmid_user
    ; GRANT DELETE ANY TABLE TO
    cmid_user
    ; GRANT CREATE ANY INDEX TO
    cmid_user
    ; GRANT ALTER ANY INDEX TO
    cmid_user
    ; GRANT DROP ANY INDEX TO
    cmid_user
    ;
  • Amazon RDS for Oracleターゲットの場合、RDSにマスタユーザーとしてログインし、Oracleターゲットに接続する一括取り込みデータベースユーザー(
    cmid_user
    )に次のユーザー特権を付与します。
    GRANT CREATE SESSION TO
    cmid_user
    ; GRANT SELECT on "PUBLIC".V$DATABASE TO
    cmid_user
    ; GRANT SELECT on DBA_USERS TO
    cmid_user
    ; GRANT SELECT on DBA_TABLES TO
    cmid_user
    ; GRANT SELECT on DBA_INDEXES TO
    cmid_user
    ; GRANT CREATE TABLE <
    schema.table
    > TO
    cmid_user
    ; GRANT SELECT on SYS.TAB$ TO
    cmid_user
    ; GRANT SELECT on SYS.COL$ TO
    cmid_user
    ; GRANT SELECT on SYS.OBJ$ TO
    cmid_user
    ; GRANT SELECT on SYS.IND$ TO
    cmid_user
    ; -- Grant the following if cmid_user is NOT the owner of the target schema. If you prefer, you -- can grant to individual target tables and indexes instead of to ANY TABLE or INDEX. GRANT ALTER SESSION TO cmid_user; GRANT RESOURCE TO cmid_user; GRANT SELECT ANY TABLE TO cmid_user; GRANT SELECT ANY DICTIONARY TO <cmid_user>; GRANT ALTER ANY TABLE TO cmid_user; GRANT CREATE ANY TABLE TO cmid_user; GRANT DROP ANY TABLE TO cmid_user; GRANT INSERT ANY TABLE TO cmid_user; GRANT UPDATE ANY TABLE TO cmid_user; GRANT DELETE ANY TABLE TO cmid_user; GRANT CREATE ANY INDEX TO cmid_user; GRANT ALTER ANY INDEX TO cmid_user; GRANT DROP ANY INDEX TO cmid_user;
    また、次のAmazon RDSプロシージャを実行して、追加のSELECT権限を
    cmid_user
    に付与します。
    begin rdsadmin.rdsadmin_util.grant_sys_object( p_obj_name => 'V_$CONTAINERS', p_grantee => '
    cmid_user
    ', p_privilege => 'SELECT'); end; / begin rdsadmin.rdsadmin_util.grant_sys_object( p_obj_name => 'DBA_OBJECT_TABLES', p_grantee => '
    cmid_user
    ', p_privilege => 'SELECT'); end; / begin rdsadmin.rdsadmin_util.grant_sys_object( p_obj_name => 'DBA_OBJECTS', p_grantee => '
    cmid_user
    ', p_privilege => 'SELECT'); end; / begin rdsadmin.rdsadmin_util.grant_sys_object( p_obj_name => 'ALL_CONSTRAINTS', p_grantee => '
    cmid_user
    ', p_privilege => 'SELECT'); end; / begin rdsadmin.rdsadmin_util.grant_sys_object( p_obj_name => 'ALL_OBJECTS', p_grantee => '
    cmid_user
    ', p_privilege => 'SELECT'); end; / begin rdsadmin.rdsadmin_util.grant_sys_object( p_obj_name => 'RECYCLEBIN$', p_grantee => '
    cmid_user
    ', p_privilege => 'SELECT'); end; / begin rdsadmin.rdsadmin_util.grant_sys_object( p_obj_name => 'CCOL$', p_grantee => '
    cmid_user
    ', p_privilege => 'SELECT', p_grant_option => false); end; / begin rdsadmin.rdsadmin_util.grant_sys_object( p_obj_name => 'CDEF$', p_grantee => '
    cmid_user
    ', p_privilege => 'SELECT', p_grant_option => false); end; / begin rdsadmin.rdsadmin_util.grant_sys_object( p_obj_name => 'COLTYPE$', p_grantee => '
    cmid_user
    ', p_privilege => 'SELECT', p_grant_option => false); end; / begin rdsadmin.rdsadmin_util.grant_sys_object( p_obj_name => 'ATTRCOL$', p_grantee => '
    cmid_user
    ', p_privilege => 'SELECT', p_grant_option => false); end; / begin rdsadmin.rdsadmin_util.grant_sys_object( p_obj_name => 'IDNSEQ$', p_grantee => '
    cmid_user
    ', p_privilege => 'SELECT', p_grant_option => false); end; /

使用に関する考慮事項:

  • デフォルトでは、パフォーマンスを最適化するために、
    一括取り込みデータベース
    ではOracleターゲットテーブルのロギングが無効になっています。データベース取り込みタスクウィザードの
    [ターゲット]
    ページでwriterOracleNoLoggingカスタムプロパティをfalseに設定すると、ロギングを有効にできます。
  • Oracle Database Ingestion接続プロパティでSSLの使用が有効になっている場合、Oracleターゲットを持つデータベース取り込み初期ロードジョブは失敗します。