일회성 마이그레이션을 위해 소스 Oracle 데이터베이스 구성

이 페이지에서는 Database Migration Service를 사용하여 일회성 마이그레이션을 위해 Oracle 소스 데이터베이스를 구성하는 방법을 설명합니다. Database Migration Service를 사용하여 소스 Oracle 데이터베이스에서 데이터를 가져오려면 데이터베이스에 연결하고 스키마 및 코드 객체에 액세스하는 데 사용될 사용자 계정에 적절한 권한을 부여해야 합니다.

기본적으로 Database Migration Service는 DBA_VIEWS를 통해 모든 객체 정의에 액세스하려고 시도합니다. DBA_VIEWS에 대한 액세스 권한은 SELECT ANY DICTIONARY 권한으로 부여됩니다. 마이그레이션 사용자 계정에서 DBA 뷰에 액세스할 수 없는 경우 Database Migration Service는 ALL_VIEWS으로 대체됩니다. 이 접근 방식을 사용하면 요구사항에 가장 적합한 보안 모델을 정의할 때 최대한의 유연성을 확보할 수 있습니다.

정확한 구성 단계는 소스 데이터베이스의 섹션을 참고하세요.

Oracle 데이터베이스를 위한 Amazon RDS 구성

일회성 마이그레이션을 위해 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 데이터베이스 구성

일회성 마이그레이션을 위해 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) 구성

데이터베이스 마이그레이션 서비스는 단일 컨테이너 데이터베이스 (CDB)에 하나 이상의 플러그인 가능한 데이터베이스 (PDB)가 포함된 Oracle 멀티 테넌트 아키텍처를 지원합니다. 각 플러그형 데이터베이스는 고유한 ID와 이름이 있는 독립 실행형 데이터베이스이며 독립적으로 관리될 수 있습니다.

Oracle 플러그인 가능 데이터베이스를 Database Migration Service와 함께 사용할 수 있도록 구성하려면 다음 단계를 수행합니다.

  1. 일반 사용자를 만듭니다.

    CDB$ROOT 컨테이너와 PDB(pluggable database)에서는 일반 사용자의 ID가 같습니다. 일반 사용자는 루트와 권한이 있는 플러그인 가능한 데이터베이스에 연결하고 내부에서 작업을 수행할 수 있습니다. 일반 사용자 이름은 C## 또는 c##으로 시작해야 합니다.

  2. 데이터베이스 연결에 사용할 일반 사용자에게 적절한 권한을 부여합니다. CDB$ROOT 컨테이너와 PDB(pluggable database) 수준에서는 서로 다른 권한이 필요합니다.

    각 명령어에서 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;
    • PDB(pluggable database)에 연결하고 다음 명령어를 실행합니다.
      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;