소개
이제 AWS에 직접 연결할 수없는 온-프레미스 Oracle 뉴토끼 주소베이스를 RDS에 직접 연결했습니다
이 경우 데이터 파일을 RDS에 업로드하고 Oracle Data Pump를 뉴토끼 주소여 가져 오는 방법이 있지만 데이터 파일을 Amazon EC2에 업로드 한 후에는 PL/SQL UTL_FILE 패키지를 뉴토끼 주소여 RDS 디스크에 업로드하는 것이 포함되어있어 작업이 복잡해졌습니다
나는 AWS 서비스를 뉴토끼 주소할 수 있는지 여부를 조사하고 "Oracle 용 Amazon RDS는 이제 Amazon S3와의 통합을 통해 뉴토끼 주소 전송 및 수신 기능을 지원합니다"에서 RDS에서 S3에 저장된 파일을 직접 다운로드 할 수있는 함수가 구현되었음을 발견했습니다이 기능은 한 번에 구현 되었으므로이 기능을 뉴토끼 주소여 데이터를 마이그레이션하고 그렇게 할 단계를 도입하고 싶습니다
환경 정보
이번에 뉴토끼 주소 된 환경은 다음과 같습니다
마이그레이션 데이터는 지정된 스키마를 뉴토끼 주소여 데이터 펌프를 뉴토끼 주소여 사전 수출됩니다
또한 다음 환경이 이미 설정되어 있습니다
・ EC2 (작동 인스턴스)
OS : Windows 2012 R2
소프트웨어 : Oracle Database Client 12201
・ rds
DB 엔진 : Oracle Database Standard Edition Two
DB 엔진 버전 : Oracle 12201
선택적 그룹 : DB 엔진 버전을 위해 생성
보안 그룹 : 운영 인스턴스에서 sqlplus로 액세스 할 수 있습니다
일반 작업 흐름
작업하기 전에 일반적인 흐름을 설명하겠습니다
- S3 설정
뉴토끼 주소 파일을 배치하고 터미널 또는 이와 유사한 뉴토끼 주소 파일을 업로드 할 버킷을 만듭니다 - AWS ID 및 액세스 관리 (IAM) 구성
RDS에서 생성 된 버킷에 액세스하기 위해 IAM 정책 및 역할 설정을 구성합니다 - RDS 설정
생성 된 역할을 RDS에 할당하고 S3에서 파일을 다운로드 할 수 있습니다 (Amazon S3 Integration Function) - RDS에서 S3 뉴토끼 주소 파일 다운로드
Amazon S3 통합 기능을 뉴토끼 주소여 RDS에서 S3 데이터 파일을 다운로드합니다 - 수입 준비
RDS를 뉴토끼 주소여 대상 데이터베이스를 구성합니다 - 뉴토끼 주소 펌프로 뉴토끼 주소베이스로 가져 오기
RDS가있는 데이터 펌프를 뉴토끼 주소여 데이터 파일을 가져옵니다
절차 설정
S3 설정
마이그레이션 뉴토끼 주소를 저장하기 위해 S3 설정을 만들었습니다
・ S3에서 버킷 생성
・ 버킷에서 뉴토끼 주소 펌프로 내보낸 파일 만 업로드
iam 설정
정책 작성
RDS가 S3에 액세스하는 데 필요한 정책을 만듭니다
・ IAM 관리 화면에서 "정책"을 클릭하고 "정책 만들기"버튼을 클릭하십시오
・ "서비스"를 클릭하십시오
・ "S3"
・ "ACTION" - "액세스 레벨" - "목록"및 "ListBucket"을 선택하십시오
・ Open "Action" - "Access Level" - "로드"및 "getObject"
・ Open "Action" - "Access Level" - "쓰기"및 "putobject"
・ "자원"열고 "버킷"라인에서 "Arn 추가"를 클릭하십시오
・ "버킷 이름"으로 만든 버킷 이름을 입력하고 "추가"버튼을 클릭하십시오
・ "Object"row
・ "버킷 이름"으로 만든 버킷 이름을 입력하고 "객체 이름"에 아무것도 입력하지 마십시오 오른쪽 오른쪽의 확인란을 확인하고 "Add"
・ "정책 확인"을 클릭하십시오
・ 정책 이름을 입력하고 정책 작성
역할 창출
RDS가 S3에 액세스하는 데 할당하는 역할을 만듭니다
・ IAM 관리 화면에서 "역할"을 클릭하고 "역할 만들기"버튼을 클릭하십시오
・ "이 역할을 뉴토끼 주소려는 서비스 선택 서비스에서"RDS "를 클릭하십시오
・ ・ "뉴토끼 주소 사례 선택"이 화면 하단에 표시되므로 "RDS- 데이터베이스에 역할 추가"를 클릭 한 다음 "다음 단계 : 액세스 권한"버튼
・ 생성 된 정책을 선택하고 "다음 단계 : 태그"
・ (선택 사항) 태그를 추가하고 "다음 단계 : 확인"
・ 역할 이름을 입력하고 "역할 만들기"
RDS 설정
옵션 그룹 구성
RDS에서 S3 파일을 다운로드 할 수있는 기능을 활성화합니다
・ RDS 관리 화면에서 "옵션 그룹"을 클릭하고 뉴토끼 주소베이스에 할당 된 옵션 그룹의 확인란을 선택하고 "옵션 추가"를 클릭하십시오
・ s3_integration, "버전"은 "10", "지금 신청"은 "예"이고 "adply 옵션"이 클릭하고 "옵션 추가"를 클릭합니다
・ 데이터베이스 상태가 "변경"에서 "뉴토끼 주소 가능한"으로 변경되었는지 확인하십시오
IAM 역할 할당
IAM 역할을 RDS에 할당합니다
・ RDS 관리 화면에서 "뉴토끼 주소베이스"를 클릭하고 대상 뉴토끼 주소베이스를 클릭하십시오
・ 화면 하단에서 "IAM 역할 관리"에서 "functions"에서 "s3_integration"을 선택하고 "역할 추가"
・ "상태"가 "Pressed"에서 "Active"로 변경되었음을 확인합니다
・ 데이터베이스 상태가 "변경"에서 "뉴토끼 주소 가능한"으로 변경되었는지 확인하십시오
RDS에서 S3 뉴토끼 주소 파일 다운로드
・ 작동 인스턴스에서 명령 프롬프트를 시작하고 sqlplus를 뉴토끼 주소여 RDS에 연결
1 |
sqlplus 마스터 뉴토끼 주소자 이름/마스터 비밀번호@(설명=(주소=(프로토콜=TCP)(host=endpoint)(포트=1521))(Connect_Data=(SID=orcl))) |
・ 파일이 저장된 위치에있는 파일을 확인하십시오
1 |
선택 * From테이블 (rdsadmin.RDS_FILE_UTIL.ListDir(p_directory = 'data_pump_dir')); |
・ RDS에서 S3 뉴토끼 주소 파일 다운로드
1 |
selectrdsadmin.RDSADMIN_S3_TASKS.download_from_s3(p_bucket_name = '버킷 이름', p_directory_name = 'data_pump_dir') as task_idfromdual; |
명령에 오류가 없으면 작업 ID가 반환됩니다
1 2 3 |
task_id -------------------------------------------------------------------------------- 1559639797887-38 |
・ 실행 로그 확인
이전 단계에서 얻은 작업 ID를 뉴토끼 주소여 실행 로그 파일 이름을 지정하고 실행 로그를 표시합니다
1 |
select텍스트From테이블(rdsadmin.RDS_FILE_UTIL.read_text_file('bdump','DBTASK-15963977887-38LOG')); |
"작업 완료"가 표시되면 뉴토끼 주소 파일이 성공적으로 다운로드됩니다
1 2 3 4 |
S3개체 또는 개체버킷이름 버킷 이름 with키Export.DMPto thelo 양이온 /RDSDBDATA/DataPump. 2019-06-04 09:16:59.698 UTC [info ] the작업완성성공적으로. |
수입 준비
・ 스키마 생성
1 |
생성뉴토끼 주소자TS_USR식별by 비밀번호; |
・ 테이블 스페이스 생성
1 |
생성테이블 스페이스 테이블 스페이스 이름 datafilesize 1G autoextendon다음 100m maxsize무제한; |
・ 기본 테이블 스페이스 변경
1 |
Alter뉴토끼 주소자 뉴토끼 주소자 이름 기본값 테이블 스페이스 테이블 스페이스 이름 임시테이블 스페이스temp; |
・ 필요한 특권을 부여
1 2 3 4 |
grantConnect, 자원to 뉴토끼 주소자 이름; Alter뉴토끼 주소자 뉴토끼 주소자 이름 할당량무제한on뉴토끼 주소자; grant무제한테이블 스페이스to 뉴토끼 주소자 이름; grant읽기,쓰기on디렉토리data_pump_dirto 뉴토끼 주소자 이름; |
뉴토끼 주소 펌프로 뉴토끼 주소베이스로 가져 오기
・ 뉴토끼 주소 펌프 실행
실행 로그는 "importlog"로 지정되었습니다
1 2 3 4 5 6 7 8 9 10 |
선언 hdnl번호; 시작 hdnl := DBMS_DATAPUMP.Open(작동='가져 오기', job_mode='스키마', Remote_link=NULL, job_name=NULL, 버전='호환 가능한'); DBMS_DATAPUMP.add_file(핸들=hdnl, filename='Exportdmp', 디렉토리='data_pump_dir', filetype = DBMS_DATAPUMP.ku$_file_type_dump_file); DBMS_DATAPUMP.add_file(핸들=hdnl, filename='importlog', 디렉토리 = 'data_pump_dir', filetype = DBMS_DATAPUMP.ku$_file_type_log_file); DBMS_DATAPUMP.Metadata_Filter(hdnl,'schema_expr','in (''스키마 이름'')'); DBMS_DATAPUMP.start_job(hdnl); end; / |
・ 뉴토끼 주소 펌프 실행 로그 확인
1 |
select텍스트From테이블(rdsadmin.RDS_FILE_UTIL.read_text_file('data_pump_dir','importlog')); |
"성공적으로 완료된"이 표시되면 수입이 성공적입니다
1 2 3 4 |
텍스트 -------------------------------------------------------------------------------- Job 마스터 뉴토끼 주소자 이름."sys_import_schema_01" 성공적으로완성attueJun 4 18:23:3 3 2019 경과 0 00:03:54 |
・ 뉴토끼 주소 파일 및 실행 가능한 로그 파일
1 2 |
execUTL_FILE.Fremove('data_pump_dir','Exportdmp'); execUTL_FILE.Fremove('data_pump_dir','importlog'); |
결론
이번에는 적시에 새로운 기능을 뉴토끼 주소고 전환을 원활하게 만들 수있었습니다 클라우드 커뮤니티는 기술을 빠르게 발전시키고 있기 때문에 다시 한 번 최신 기술을 따라 잡는 것이 매우 중요하다고 생각했습니다
저자 프로필

- TDI 디지털 혁신 기술 부서
- 후쿠오카 현에 거주합니다 반도체 관련 응용 프로그램 개발 및 운영 관련 작업에서 근무한 후 현재 인프라 관련 기술 지원 작업을 담당하고 있습니다 가장 최근의 주제는 클라우드 엔지니어를 훈련하고 체력을 구축하는 것입니다
이 저자의 최신 기사
aws Cloud2019 년 7 월 10 일Amazon S3를 뉴토끼 주소여 Oracle 용 Amazon RDS 로의 데이터 마이그레이션
AWS Cloud2019 년 2 월 25 일Amazon Workmail을 뉴토끼 주소여 내 도메인에 대한 이메일 서비스를 구축하려고했습니다
AWS Cloud2018 년 9 월 14 일나는 뉴토끼 165 EFS를 시도했습니다