メインコンテンツまでスキップ

Oracleデータベースのユーザー要件

備考

ベータ版

この機能はベータ版です。ワークスペース管理者は、 プレビュー ページからこの機能へのアクセスを制御できます。Databricksのプレビューを管理するを参照してください。

このページでは、Databricks への取り込みに Oracle レプリケーションユーザーが必要とする特権の一覧を示します。

Databricks では、Databricks への取り込みにのみ使用されるデータベース ユーザーを作成することをお勧めします。セットアップ ツール (dbx_oracle_setup_util) は、GRANT_PERMISSIONS を呼び出すとシステム権限とオブジェクト権限を付与し、GRANT_SELECT_PERMISSIONS または GRANT_SELECT_ON_TABLE を呼び出すとテーブル SELECT を付与します。このリストは、参照および監査の目的で提供されています。

マルチテナント(CDB)データベースの場合、セットアップツールは CONTAINER=ALL を使用して各権限を付与し、ユーザーに CONTAINER_DATA=ALL を設定することで、すべてのコンテナにわたる変更データを読み取れるようにします。Amazon RDSの場合、このツールは rdsadmin.rdsadmin_util.grant_sys_object プロシージャを通じてオブジェクト権限を付与します。

システム権限​

権限

必要な理由

CREATE SESSION

データベースに接続します。

SELECT ANY TRANSACTION

LogMiner の読み取りを制限するために、保留中のトランザクション状態 (gv$transaction) を読み取ります。

SELECT ANY DICTIONARY

スキーマおよびメタデータの検出に使用されるデータディクショナリビューを読み取ります。

LOGMINING

ラン (DBMS_LOGMNR.START_LOGMNR) をランして、REDO LogsおよびアーカイブLogsを読み取ります。

権限

必要な理由

CREATE SESSION

データベースに接続します。

SELECT ANY TRANSACTION

LogMiner の読み取りを制限するために、保留中のトランザクション状態 (gv$transaction) を読み取ります。

SELECT ANY DICTIONARY

スキーマおよびメタデータの検出に使用されるデータディクショナリビューを読み取ります。

LOGMINING

ラン (DBMS_LOGMNR.START_LOGMNR) をランして、REDO LogsおよびアーカイブLogsを読み取ります。

データアクセス特権​

レプリケーションユーザーには、レプリケートするすべてのテーブルに対する SELECT が必要です。セットアップツールの GRANT_SELECT_PERMISSIONS プロシージャ (スキーマ内のすべてのテーブル) または GRANT_SELECT_ON_TABLE プロシージャ (特定のテーブル) を使用して付与してください。テーブルに対するSELECT権限の付与 を参照してください。

オブジェクト権限​

セットアップツールは、以下のオブジェクトに対して EXECUTE または SELECT を付与します。

オブジェクト

権限

DBMS_LOGMNR, DBMS_LOGMNR_D

EXECUTE

DBA_SEGMENTS

SELECT

RDSADMIN.RDS_CONFIGURATION

SELECT (RDSで必須)

以下の V_$ ビューと、それらに相当する GV_$:

  • V_$TRANSACTION
  • V_$DATABASE
  • V_$CONTAINERS
  • V_$PDBS
  • V_$SESSION
  • V_$INSTANCE
  • V_$LOGFILE
  • V_$LOG
  • V_$ARCHIVED_LOG
  • V_$LOGMNR_CONTENTS
  • V_$PARAMETER

SELECT

オブジェクト

権限

DBMS_LOGMNR, DBMS_LOGMNR_D

EXECUTE

DBA_SEGMENTS

SELECT

RDSADMIN.RDS_CONFIGURATION

SELECT (RDSで必須)

以下の V_$ ビューと、それらに相当する GV_$:

  • V_$TRANSACTION
  • V_$DATABASE
  • V_$CONTAINERS
  • V_$PDBS
  • V_$SESSION
  • V_$INSTANCE
  • V_$LOGFILE
  • V_$LOG
  • V_$ARCHIVED_LOG
  • V_$LOGMNR_CONTENTS
  • V_$PARAMETER

SELECT

SELECT ANY DICTIONARY に対する依存関係​

セットアップツールによってSELECT ANY DICTIONARYが許可され、レプリケーションユーザーはすべてのデータ辞書ビューおよび動的パフォーマンス(V$/GV$)ビューへの読み取りアクセス権を取得します。ランタイム時に、コネクタは、ツールが個別にSELECTを付与せず、以下を含むSELECT ANY DICTIONARYのみによってカバーされる複数のビューを読み取ります:

  • GV$DATABASE_INCARNATION
  • V$ENCRYPTION_WALLET
  • V$RMAN_CONFIGURATION
  • V$VERSION
  • V$LOGMNR_LOGS
  • CDB_* テーブル、カラム、およびその制約のビュー。

セキュリティ ポリシーによって SELECT ANY DICTIONARY の付与が禁止されている場合は、これらのビュー(および オブジェクト権限 テーブルのビュー)に対して SELECT を明示的に付与する必要があります。そうでない場合は、コネクタが依存するすべてのビューを読み取ることができるように、SELECT ANY DICTIONARY の付与を維持してください。

CDB 環境のコンテナアクセス​

マルチテナントデータベースの場合、ユーザーがすべてのコンテナ内のデータを読み取れるように、ツールは次のステートメントをランします。

SQL
ALTER USER <username> SET CONTAINER_DATA=ALL CONTAINER=CURRENT;

次のステップ​

Oracle 接続を作成します。