1 回限りの移行用にソース Oracle データベースを構成する

このページでは、Database Migration Service を使用して 1 回限りの移行を行うために、移行元 Oracle データベースを構成する方法について説明します。Database Migration Service を使用して移行元 Oracle データベースからデータを pull する前に、データベースに接続してスキーマ オブジェクトとコード オブジェクトにアクセスするために使用するユーザー アカウントに適切な権限を付与する必要があります。

デフォルトでは、Database Migration Service はすべてのオブジェクト 定義に DBA_VIEWSを介してアクセスしようとします。DBA_VIEWS へのアクセスは、SELECT ANY DICTIONARY 権限で許可されます。移行ユーザー アカウントが DBA ビューにアクセスできない場合、 Database Migration Service は ALL_VIEWS にフォールバックします。 このアプローチにより、要件に最適なセキュリティ モデルを定義する際に最大限の柔軟性が得られます。

正確な構成手順については、移行元データベースのセクションをご覧ください。

Amazon RDS for Oracle データベースの構成

1 回限りの移行用に Amazon RDS 移行元データベースを構成するには、Database Migration Service で使用するユーザー アカウントに適切な権限を付与します。

各コマンドで、USER_NAME を移行に使用するユーザー アカウントの名前に置き換えます。これらのコマンドを実行すると、検証に必要な V$DATABASE から読み取る権限が付与されます。

GRANT CONNECT TO USER_NAME;
GRANT CREATE SESSION TO USER_NAME;
GRANT SELECT ANY TABLE TO USER_NAME;
GRANT SELECT ANY DICTIONARY TO USER_NAME;
exec rdsadmin.rdsadmin_util.grant_sys_object('V_$DATABASE','USER_NAME','SELECT');

Oracle データベースの構成

1 回限りの移行用に Oracle 移行元データベースを構成するには、Database Migration Service で使用するユーザー アカウントに適切な権限を付与します。

各コマンドで、USER_NAME を移行に使用するユーザー アカウントの名前に置き換えます。これらのコマンドを実行すると、検証に必要な V$DATABASE から読み取る権限が付与されます。

GRANT CONNECT TO USER_NAME;
GRANT CREATE SESSION TO USER_NAME;
GRANT SELECT ANY TABLE TO USER_NAME;
GRANT SELECT ANY DICTIONARY TO USER_NAME;
GRANT SELECT ON SYS.V_$DATABASE TO USER_NAME;

Oracle プラグイン対応データベース(PDB)の構成

Database Migration Service は、単一の コンテナ データベース(CDB)に 1 つ以上の プラグイン対応データベース(PDB)が含まれている Oracle マルチテナント アーキテクチャをサポートしています。各プラグイン対応データベースは一意の ID と名前を持つ自己完結型のデータベースであり、個別に管理できます。

Oracle プラグイン対応データベースを構成して Database Migration Service で使用できるようにするには、次の手順を行います。

  1. 共通ユーザーを作成します。

    共通ユーザーは、CDB$ROOT コンテナ とプラグイン対応データベースで同じ ID を持ちます。共通ユーザーは、ルートに接続し、ルート内、および権限があるプラグイン対応データベース内で操作できます。共通ユーザー名はC## または c##. で始まる必要があります。

  2. データベースへの接続に使用される共通ユーザーに、適切な権限を付与します。 `CDB$ROOT` コンテナレベルとプラグイン対応データベース レベルでは、異なる権限が必要です。CDB$ROOT

    各コマンドで、USER_NAME を移行に使用するユーザー アカウントの名前に置き換えます。これらのコマンドを実行すると、検証に必要な V$DATABASE から読み取る権限が付与されます。

    • CDB$ROOT コンテナに接続し、次のコマンドを実行します。
      GRANT CREATE SESSION TO USER_NAME;
      GRANT SET CONTAINER TO USER_NAME;
      GRANT SELECT ON SYS.V_$DATABASE TO USER_NAME;
      GRANT EXECUTE_CATALOG_ROLE TO USER_NAME;
    • プラグイン対応データベースに接続し、次のコマンドを実行します。
      GRANT CREATE SESSION TO USER_NAME;
      GRANT SET CONTAINER TO USER_NAME;
      GRANT SELECT ANY TABLE TO USER_NAME;
      GRANT SELECT ANY DICTIONARY TO USER_NAME;
      GRANT SELECT ON SYS.V_$DATABASE TO USER_NAME;