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 プロシージャを通じてオブジェクト権限を付与します。
システム権限
権限 | 必要な理由 |
|---|---|
| データベースに接続します。 |
| LogMiner の読み取りを制限するために、保留中のトランザクション状態 ( |
| スキーマおよびメタデータの検出に使用されるデータディクショナリビューを読み取ります。 |
| ラン ( |
データアクセス特権
レプリケーションユーザーには、レプリケートするすべてのテーブルに対する SELECT が必要です。セットアップツールの GRANT_SELECT_PERMISSIONS プロシージャ (スキーマ内のすべてのテーブル) または GRANT_SELECT_ON_TABLE プロシージャ (特定のテーブル) を使用して付与してください。テーブルに対するSELECT権限の付与 を参照してください。
オブジェクト権限
セットアップツールは、以下のオブジェクトに対して EXECUTE または SELECT を付与します。
オブジェクト | 権限 |
|---|---|
|
|
|
|
|
|
以下の
|
|
SELECT ANY DICTIONARY に対する依存関係
セットアップツールによってSELECT ANY DICTIONARYが許可され、レプリケーションユーザーはすべてのデータ辞書ビューおよび動的パフォーマンス(V$/GV$)ビューへの読み取りアクセス権を取得します。ランタイム時に、コネクタは、ツールが個別にSELECTを付与せず、以下を含むSELECT ANY DICTIONARYのみによってカバーされる複数のビューを読み取ります:
GV$DATABASE_INCARNATIONV$ENCRYPTION_WALLETV$RMAN_CONFIGURATIONV$VERSIONV$LOGMNR_LOGSCDB_*テーブル、カラム、およびその制約のビュー。
セキュリティ ポリシーによって SELECT ANY DICTIONARY の付与が禁止されている場合は、これらのビュー(および オブジェクト権限 テーブルのビュー)に対して SELECT を明示的に付与する必要があります。そうでない場合は、コネクタが依存するすべてのビューを読み取ることができるように、SELECT ANY DICTIONARY の付与を維持してください。
CDB 環境のコンテナアクセス
マルチテナントデータベースの場合、ユーザーがすべてのコンテナ内のデータを読み取れるように、ツールは次のステートメントをランします。
ALTER USER <username> SET CONTAINER_DATA=ALL CONTAINER=CURRENT;