Docs Menu
Docs Home
/ /

Oracle에 대한 마이그레이션 사전 요구 사항 구성

Oracle 소스 데이터베이스 에서 데이터를 마이그레이션 경우 Relational Migrator 데이터베이스 필요한 구성 변경 사항을 자동으로 확인하고 이를 구현 위한 SQL 스크립트 생성합니다. 데이터베이스 관리자( DBA )에게 스크립트 검토 하고 데이터베이스 서버 에서 명령을 실행 합니다. 이 페이지에서는 필요한 구성 단계에 대해 자세히 설명합니다.

지원되는 Oracle 버전에 대한 자세한 내용은 지원되는 데이터베이스 및 버전을 참조하세요.

  • Oracle 12c 인스턴스에서 마이그레이션하는 경우 SYSDBA 역할로 명령을 실행해야 합니다.

  • Oracle 12c는 플러그형 데이터베이스 (PDB)의 개념을 도입했습니다. 일부 명령은 PDB에서 실행 수 있지만 ARCHIVELOG 활성화와 같은 명령은 컨테이너/master 데이터베이스 (CDB)에서 실행 해야 합니다. 각 아키텍처에 대한 자세한 내용은 컨테이너 데이터베이스 및 플러그형 데이터베이스 개요를 참조하세요.

  • 일부 명령은 데이터베이스 가 단일 테넌트인지 다중 테넌트인지에 따라 다릅니다. 멀티 테넌트 데이터베이스 에서는 권한에 접미사 CONTAINER=ALL가 포함되어야 합니다. 데이터베이스 가 멀티 테넌트인지 확인하려면 다음 SQL 쿼리 실행 .

    SELECT cdb AS is_multitenant FROM v$database;

스냅샷 작업을 위해 Oracle 인스턴스 구성하려면 다음을 수행합니다.

1

다음 코드는 Relational Migrator가 Oracle 인스턴스에 연결할 수 있도록 새 Oracle 서비스 계정을 생성합니다. 또는 기존 Oracle 서비스 계정을 사용하여 적절한 권한으로 Relational Migrator에 연결할 수 있습니다.

멀티 테넌트 컨테이너 데이터베이스에서 데이터를 마이그레이션 하려면 테이블스페이스와 일반 사용자를 생성합니다.

  1. 서비스 계정을 만듭니다:

    CREATE USER <user> IDENTIFIED BY "<password>";
  2. 서비스 계정이 마이그레이션 작업 의 테이블을 소유하고 있는지 확인합니다.

    필요한 권한은 서비스 계정이 마이그레이션 작업 에 사용된 테이블을 소유하고 있는지 여부에 따라 달라집니다. 테이블 소유권을 확인하려면 다음 쿼리 실행 .

    SELECT TABLE_NAME, OWNER
    FROM ALL_TABLES
    WHERE TABLE_NAME ='<table_name>'
    ORDER BY OWNER, TABLE_NAME;
  3. 서비스 계정에 권한을 부여합니다.

    중요

    멀티 테넌트 컨테이너 데이터베이스 일반 사용자로 마이그레이션하는 경우 권한을 부여할 때 CONTAINER=ALL 를 추가합니다. 예시 들면 다음과 같습니다.

    GRANT CREATE SESSION TO <user> CONTAINER=ALL;

    서비스 계정 테이블 소유자인 경우:

    GRANT CREATE SESSION TO <user>;
    GRANT SELECT ON V_$DATABASE TO <user>;

    서비스 계정이 테이블 소유자 가 아닌 경우:

    GRANT CREATE SESSION TO <user>;
    GRANT SELECT_CATALOG_ROLE TO <user>;
    GRANT SELECT ANY TABLE TO <user>;
    GRANT SELECT ON V_$DATABASE TO <user>;
    GRANT FLASHBACK ANY TABLE TO <user>;

돌아가기

Oracle

이 페이지의 내용