데이터 임포트를 위한 Autonomous Data Warehouse 준비

데이터 형식을 지정하고 분석에 사용할 수 있도록 하려면 Oracle Autonomous Data Warehouse로 로드해야 합니다.

전용 서브넷의 데이터베이스 가상 시스템에 액세스하려면 SQL*Plus를 사용하여 데이터베이스에 직접 액세스하거나 SSH(보안 셸) 를 사용하여 가상 시스템에 액세스할 수 있습니다.

Oracle Autonomous Data Warehouse 인스턴스 프로비전

Oracle Cloud Infrastructure 서비스 콘솔에서 Oracle Autonomous Data Warehouse 인스턴스를 프로비전합니다.

  1. Oracle Cloud Infrastructure 서비스 콘솔에 사인인합니다.
  2. Autonomous Data Warehouse 메뉴를 누르고 Autonomous Database 생성 을 선택합니다.
  3. [Autonomous Database 생성 ] 페이지에서 해당 구획을 선택합니다.
  4. 데이터 웨어하우스의 표시 이름을 입력합니다.
  5. 데이터베이스 이름 을 입력합니다.
  6. 작업 로드 유형에 대해 데이터 웨어하우스 를 누릅니다.
  7. 동시 사용자 및 질의 수, 데이터 볼륨 등을 기준으로 작업 로드에 적합한 CPU 코어 수 및 저장 영역(테라바이트) 을 지정합니다. 예를 들어, 작은 데이터 샘플(1Mb 파일) 경우 CPU 코어 수 2tb와 1tb의 스토리지를 지정합니다.
  8. 작업 로드의 변경사항에 따라 자동으로 CPU 코어 수 및 저장 영역 값의 크기를 조정하려면 자동 스케일링 을 누릅니다.
  9. 관리자 계정의 비밀번호를 지정합니다.
  10. 네트워크 액세스 유형을 지정합니다:
    • 어디에서나 보안 액세스 허용: ACL(액세스 제어 목록) 로 보안하는 공용 끝점을 사용하여 데이터베이스에 액세스합니다. 전용 끝점을 통해서만 액세스를 허용하려는 경우 이 옵션을 선택하지 마십시오.
    • 가상 클라우드 네트워크: 이 옵션은 지정된 VCN 내에서 데이터베이스에 대한 전용 끝점을 생성합니다.
      • 가상 클라우드 네트워크: 데이터베이스를 실행할 VCN를 선택합니다. 구획 변경 을 눌러 다른 구획의 VCN을 선택합니다.
      • 서브넷: 데이터베이스에 연결할 서브넷을 선택합니다. 구획 변경 을 눌러 다른 구획의 서브넷을 선택합니다.
      • 호스트 이름 접두어: 선택적으로 데이터베이스에 대한 호스트 이름 접두어를 지정하고 DNS 이름을 데이터베이스 인스턴스와 연관시킵니다.
      • 네트워크 보안 그룹: 데이터베이스에 대해 NSG(네트워크 보안 그룹) 를 하나 이상 지정합니다. NSG는 데이터베이스에 수신 및 송신 보안 규칙 집합을 적용할 수 있는 가상 방화벽으로 작동합니다.
  11. 기존 온프레미스 라이센스를 사용하려면 Bring Your Own License 를 누르고, 데이터 웨어하우스에 대한 라이센스를 프로비전하려면 라이센스 포함 을 누릅니다.

전자 지갑 인증서 얻기

통합 서비스는 클라이언트 인증서가 포함된 전자 지갑을 사용하여 Oracle Autonomous Data Warehouse 에 액세스할 수 있습니다. 전자 지갑을 생성하려면 Oracle Autonomous Data Warehouse 에 대한 관리자 계정이 있어야 합니다.

  1. Oracle Autonomous Data Warehouse 용 서비스 콘솔로 이동합니다.
  2. 관리를 누릅니다.
  3. 관리 페이지에서 클라이언트 인증서 다운로드 를 누릅니다.
  4. [클라이언트 인증서 ] 대화상자에서 전자 지갑 비밀번호를 입력하고 비밀번호를 확인합니다.
  5. 다운로드 를 눌러 클라이언트 보안 인증서 zip 파일을 저장합니다.

    인증되지 않은 데이터베이스 액세스를 방지하려면 이 파일을 보호해야 합니다.

Oracle SQL*Plus을 사용하여 데이터 웨어하우스에 접속 준비

SQL*Plus는 로컬 워크스테이션에서 Oracle 데이터베이스에 접속하고 이 데이터베이스를 질의하는 데 사용되는 명령행 인터페이스입니다.

Oracle Autonomous Data Warehouse 에 접속하려면 다운로드한 인증서 전자 지갑의 위치를 지정하고 특정 환경 변수를 업데이트해야 합니다. 다음 예에서는 Linux 운영 체제의 SQL*Plus를 보여 줍니다.

  1. 아직 다운로드한 전자 지갑 인증서 파일을 압축 해제하지 않은 경우

    예를 들어, 다음과 같습니다.

    <base_folder>/adwus1/dbcred
    unzip Wallet_adwus1.zip
      Inflating: cwallet.sso
      Inflating: tnsnames.ora
      Inflating: tructstore.jks
      Inflating: ojdc.properties
      Inflating: sqlnet.ora
      Inflating: ewallet.pl2
      Inflating: keystore.jks
  2. sqlnet.ora 파일에 지정된 전자 지갑 위치를 다음 정보로 업데이트합니다. 여기서 <base_folder>은 사인인 사용자의 기본 폴더입니다.
    WALLET_LOCATION=(SOURCE=(METHOD=file)(METHOD_DATA=(DIRECTORY=",<base_folder>/adwus1/dbcred")))SSL_SERVER_DN_MATCH=yes

    변경 확인:

    cat sqlnet.ora WALLET_LOCATION=(SOURCE=(METHOD=file)(METHOD_DATA=(DIRECTORY=",<base_folder>/adwus1/dbcred")))SSL_SERVER_DN_MATCH=yes 
  3. 다음 환경 변수를 설정합니다. 여기서 <base_folder>는 사인인 사용자의 기본 폴더입니다.
    export LD_LIBRARY_PATH=/usr/lib/oracle/18.5/client64/lib:$LD_LIBRARY_PATH
    export PATH=/usr/lib/oracle/18.5/client64/bin:$PATH
    export TNS_ADMIN=<base_folder>/adwus1/dbcred 

SSH(보안 셸) 를 사용하여 데이터 웨어하우스에 접속을 준비합니다.

SSH(보안 셸) 를 사용하여 로컬 워크스테이션에서 Oracle 데이터베이스에 접속할 수 있습니다.

다음 단계는 Linux 운영 체제에서 SSH 사용을 보여줍니다.

  1. 다음을 입력합니다:
    ssh –L <local_port>:<adw_private_ip>:1522 -i  <path_to_private_key> opc@<bastion_public_ip>
  2. 아직 다운로드하지 않은 경우 다운로드한 전자 지갑 인증서 파일의 압축을 풉니다.

    예를 들어, 다음과 같습니다:

    <base_folder>/adwus1/dbcred
    unzip Wallet_adwus1.zip
      Inflating: cwallet.sso
      Inflating: tnsnames.ora
      Inflating: tructstore.jks
      Inflating: ojdc.properties
      Inflating: sqlnet.ora
      Inflating: ewallet.pl2
      Inflating: keystore.jks
  3. tnsnames.ora 파일에 지정된 호스트 IP 주소를 127.0.0.1로 편집합니다. 예를 들면 다음과 같습니다.
    (host=127.0.0.1)

대상 사용자 스키마 생성

Oracle Autonomous Data Warehouse 에서 데이터를 가져오고 분석하려면 사용자를 생성하고 액세스 권한을 부여해야 합니다.

  1. 관리 액세스 권한이 있는 사용자로 SQL*Plus를 사용하여 대상 데이터베이스에 접속합니다.
  2. 사용자 adwus2를 생성하고 사용자에게 필요한 권한을 부여합니다.
    drop user adwus2 cascade;
    create user adwus2 identified by ADWpass123_#;
    grant EXECUTE on UTL_HTTP to adwus2;
    grant EXECUTE on DBMS_CREDENTIAL to adwus2;
    grant EXECUTE on DBMS_RANDOM to adwus2;
    grant CREATE ANY TABLE, DROP ANY TABLE, INSERT ANY TABLE, SELECT ANY TABLE to adwus2;
    grant CREATE PUBLIC SYNONYM to adwus2;
    grant CREATE PROCEDURE to adwus2;
    grant ALTER SESSION to adwus2;
    grant CREATE SESSION to adwus2;
    grant SELECT on v\$instance to adwus2;
    grant SELECT on v\$session to adwus2;
    grant SELECT on v\$mystat to adwus2;
    grant SELECT on gv\$sql_monitor to adwus2;
    grant execute on dbms_sqltune to adwus2 ;
    grant read,write on directory DATA_PUMP_DIR to adwus2;
    grant dwrole to adwus2;
    grant pdb_dba to adwus2;
    grant select on sys.v_\$database to adwus2 ;
    grant select on sys.v_\$instance to adwus2 ;
    grant select on sys.v_\$sysstat to adwus2 ;
    grant select on sys.v_\$cell_config_info to adwus2 ;
    grant select on sys.v_\$cell_global to adwus2 ;
    grant select on sys.v_\$cell_ioreason to adwus2 ;
    grant select on sys.v_\$cell_db to adwus2 ;
    grant select on sys.v_\$cell_state to adwus2 ;
    alter user adwus2 quota unlimited on DATA;
    alter user adwus2 default tablespace DATA;