주:

Oracle Data Pump를 사용하여 Oracle Database@Google Cloud로 데이터 마이그레이션

소개

Oracle Database@Google Cloud는 Google Cloud 환경에서 Oracle Database 워크로드를 실행하는 Oracle Cloud Database 서비스입니다. Oracle Exadata Database Service 및 Oracle Autonomous Database와 같은 Oracle 최고의 데이터베이스 서비스를 기반으로 구축되어 Oracle Database 23ai AI Vector Search 및 Google Vertex AI와 같은 기능을 통해 애플리케이션을 신속하게 개발하고 현대화할 수 있습니다.

네이티브 통합을 통해 최소한의 대기 시간으로 Oracle Cloud Infrastructure(OCI) Exadata 하드웨어에서 실행되는 Google Cloud 데이터 센터에 Oracle 데이터베이스 서비스를 배포할 수 있습니다. 워크로드는 Google Cloud에 상주하며, 두 서비스 모두에서 사용되는 Exadata 시스템은 Google Cloud 데이터 센터에 배포됩니다. 성능 및 모니터링 도구, 개발자 도구, 분석 등을 포함한 Oracle 및 Google Cloud를 최대한 활용하십시오.

Oracle Data Pump는 사용자 관리형 Oracle 데이터베이스와 Oracle Autonomous Database 간에 매우 빠른 대량 데이터 및 메타데이터 이동을 제공합니다.

Oracle Data Pump Import를 사용하면 OCI Object Storage에 있는 Oracle Data Pump 파일에서 데이터를 임포트할 수 있습니다. 데이터를 Google Cloud Storage 버킷에 저장하고 Oracle Data Pump를 사용하여 데이터를 Oracle Autonomous Database로 로드할 수 있습니다.

이 사용지침서에서는 Oracle Data Pump Import를 사용하여 Oracle Database@Google Cloud로 샘플 애플리케이션 스키마를 이전하는 단계를 안내합니다.

목표

데이터베이스 관리자 또는 유저로 사용:

필요 조건

작업 1: 사용자 계정에 대한 액세스 키 생성

  1. Google Cloud Console에 로그인하고 클라우드 스토리지로 이동하여 설정을 누릅니다.

    클라우드 스토리지 설정

  2. 설정 페이지에서 상호 운용성을 누릅니다. 사용자 계정의 키 액세스에서 키 생성을 누릅니다.

    클라우드 스토리지 설정

    클라우드 스토리지 설정

    액세스 키비밀을 기록해 둡니다.

작업 2: Google Cloud Storage 버킷에 덤프 파일 업로드

이 작업에서는 Oracle Database@Google Cloud로 이전할 스키마에 대한 데이터베이스 익스포트 덤프 파일을 Google Cloud Storage 버킷으로 업로드합니다. 이 시점에 덤프 파일이 없고 마이그레이션을 테스트 중인 경우 HR.dmp에서 덤프 파일을 다운로드할 수 있습니다.

  1. Google Cloud Console로 이동하여 클라우드 스토리지, 버킷으로 이동하고 생성을 눌러 Google Cloud Storage 버킷을 생성합니다. 이 예에서는 버킷 이름을 gcpdatapump로 지정합니다.

  2. gcpdatapump 버킷을 누르고 덤프 파일을 업로드합니다.

작업 3: 대상 Oracle Autonomous Database에서 사용자 인증서 설정

이제 액세스 키와 비밀이 있습니다. Google Cloud Storage에서 읽고 데이터를 가져 오도록 대상 데이터베이스를 설정하십시오.

여기서는 SQLcl를 사용하여 Google Cloud Storage 자격 증명을 설정하는 데 필요한 단계를 시연합니다.

  1. Download and install SQLcl on the Google Cloud Compute Engine VM instance from here: sqlcl-24.3.2.330.1718.zip.

  2. 다음 명령을 실행하여 파일의 압축을 풉니다.

    wget https://download.oracle.com/otn_software/java/sqldeveloper/sqlcl-24.3.2.330.1718.zip
    unzip sqlcl-24.3.2.330.1718.zip
    
  3. Google Cloud Console에서 Autonomous Database 페이지로 이동하여 프로비저닝된 자율운영 데이터베이스를 클릭합니다.

    클라우드 스토리지 설정

  4. Autonomous Database Details 페이지로 이동하여 CONNECTIONS를 누르고 TNS 이름접속 문자열을 기록해 둡니다.

    클라우드 스토리지 설정 클라우드 스토리지 설정

  5. sqlcl/bin 아래에 tnsnames.ora라는 파일을 생성하고 TNS_ADMIN 변수를 현재 작업 디렉토리로 설정합니다. 접속 문자열을 사용하거나 tnsnames 경로를 설정하여 Oracle Autonomous Database에 접속합니다.

    • tnsnames 경로를 설정하고 데이터베이스에 접속합니다.

      cd sqlcl/bin
      $ cat tnsnames.ora 
      adbgcp_high=(description= (retry_count=20)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=mahfgbhj.adb.us-ashburn-1.oraclecloud.com))(connect_data=(service_name=gd443790554e91c_adbgcp_high.adb.oraclecloud.com))(security=(ssl_server_dn_match=no)))
      $ 
      export TNS_ADMIN=`pwd`
      ./sqlcl admin@adbgcp_high
      

    또는

    • 접속 문자열을 사용하여 설정합니다.

      cd sqlcl/bin 
      ./sqlcl admin@"(description= (retry_count=20)(retry_delay=3)(address=(protocol=tcps)(port=1522)(host=mahfgbhj.adb.us-ashburn-1.oraclecloud.com))(connect_data=(service_name=gd443790554e91c_adbgcp_high.adb.oraclecloud.com))(security=(ssl_server_dn_match=no)))"
      
  6. 관리 사용자로 자율운영 데이터베이스에 접속한 후 다음 PL/SQL 프로시저를 실행하여 username액세스 키password비밀로 바꿉니다.

    set define off
    begin
    DBMS_CLOUD.CREATE_CREDENTIAL(
    credential_name => 'GOOGLE_CRED_NAME',
    username => 'Access_key',
    password => 'Secret'
    );
    END;
    /
    

    클라우드 스토리지 설정

    로그 메시지에서 PL/SQL 프로시저가 성공적으로 실행되었는지 확인합니다.

  7. 다음 질의를 실행하여 Google Cloud Storage에 대한 액세스를 테스트합니다.

    SELECT * FROM DBMS_CLOUD.LIST_OBJECTS('GOOGLE_CRED_NAME', 'https://gcpdatapump.storage.googleapis.com/');
    

    이 이미지는 위 단계를 수행한 결과를 보여줍니다.

작업 4: impdp 유틸리티를 사용하여 Google Cloud Storage 버킷에서 데이터 가져오기

동일한 SQLcl 창에서 다음 데이터 펌프 임포트 명령을 실행합니다.

datapump import -
-schemas HR -
-excludeexpr "IN ('PROCEDURE', 'PACKAGE')" -
-directory data_pump_dir -
-credential GOOGLE_CRED_NAME -
-remaptablespaces USERS=DATA -
-dumpuri https://gcpdatapump.storage.googleapis.com/HR.dmp -
-logfile testuser1.log

이 이미지는 위 단계를 수행한 결과를 보여줍니다.

이제 응용 프로그램 스키마가 성공적으로 임포트되었습니다.

다음 단계

이 솔루션을 구현하면 데이터베이스 리소스가 Google Cloud에 있는 반면 데이터베이스 관리 제어 영역은 OCI(Oracle Cloud Infrastructure)에 있는 두 클라우드 환경에 리소스를 배치합니다. 이를 통해 OCI가 관리 기능을 유지 관리하는 동안 Google Cloud 환경에 Oracle Database 제품을 배포할 수 있습니다.

Oracle Data Pump를 사용하여 온프레미스 또는 기타 클라우드 제공업체의 데이터를 Oracle Database@Google Cloud로 마이그레이션할 수 있습니다. Oracle Data Pump와 함께 Oracle Zero Downtime Migration을 사용하여 데이터를 Oracle Database@Google Cloud로 마이그레이션할 수도 있습니다.

감사의 글

추가 학습 자원

docs.oracle.com/learn에서 다른 실습을 탐색하거나 Oracle Learning YouTube 채널에서 더 많은 무료 학습 콘텐츠에 액세스하세요. 또한 Oracle Learning Explorer가 되려면 education.oracle.com/learning-explorer을 방문하십시오.

제품 설명서는 Oracle Help Center를 참조하십시오.