기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
를 사용하여 Oracle PeopleSoft 데이터베이스를 AWS로 마이그레이션 AWS DMS
작성자: sampath kathirvel(AWS)
환경: 프로덕션 | 소스: Oracle PeopleSoft | 대상: Amazon RDS for Oracle |
R 타입: 리플랫포밍 | 워크로드: Oracle | 기술: 마이그레이션, 데이터베이스 |
AWS 서비스: AWS DMS, Amazon RDS |
요약
Oracle PeopleSoft
Oracle 데이터베이스를 Amazon 로 마이그레이션하면 RDSAmazon Web Services(AWS)가 백업 작업과 고가용성을 처리하여 PeopleSoft 애플리케이션과 기능을 유지하는 데 집중할 수 있습니다. 마이그레이션 프로세스 중에 고려해야 할 주요 요인의 전체 목록은 AWS 사전 지침의 Oracle 데이터베이스 마이그레이션 전략을 참조하세요.
이 패턴은 Oracle Data Pump with Database AWS Migration Service(AWS DMS)
Oracle과 같은 중요한 ERP 애플리케이션을 마이그레이션할 때는 가동 중지 시간을 PeopleSoft최소화하는 것이 중요합니다. AWS DMS 는 전체 로드와 지속적인 복제를 모두 지원하여 가동 중지 시간을 최소화합니다. 는 소스 데이터베이스에서 대상 데이터베이스로. AWS DMS 또한 는 마이그레이션에 대한 실시간 모니터링 및 로깅을 제공하므로 가동 중지 시간을 초래할 수 있는 문제를 식별하고 해결하는 데 도움이 될 수 있습니다.
를 사용하여 변경 사항을 복제AWSDMS할 때는 데이터베이스 로그에서 변경 사항을 읽기 AWS DMS 위한 시작점으로 시간 또는 시스템 변경 번호(SCN)를 지정해야 합니다. 가 이러한 변경 사항에 액세스할 수 있도록 지정된 시간 동안 서버에서 이러한 로그에 AWS DMS 액세스할 수 있도록 유지하는 것이 중요합니다.
사전 조건 및 제한 사항
사전 조건
AWS 클라우드 환경에서 Amazon RDS for Oracle 데이터베이스를 대상 데이터베이스로 프로비저닝했습니다.
온프레미스 또는 클라우드의 Amazon Elastic Compute Cloud(Amazon EC2)에서 실행되는 Oracle PeopleSoft 데이터베이스입니다AWS.
참고: 이 패턴은 온프레미스에서 로 마이그레이션하도록 설계AWS되었지만 Amazon EC2 인스턴스에서 Oracle Database를 사용하여 테스트되었습니다. 온프레미스에서 마이그레이션하려면 적절한 네트워크 연결을 구성해야 합니다.
스키마 세부 정보. Oracle용 AmazonRDS으로 Oracle PeopleSoft 애플리케이션을 마이그레이션할 때는 마이그레이션할 Oracle 데이터베이스 스키마(예:
SYSADM
)를 식별해야 합니다. 마이그레이션 프로세스를 시작하기 전에 스키마에 대한 다음과 같은 세부 정보를 수집합니다.크기
객체 유형당 객체 수
잘못된 객체 수
이 정보는 마이그레이션 프로세스에 도움이 됩니다.
제한 사항
이 시나리오는 데이터베이스에서만 PeopleSoft DEMO 테스트되었습니다. 대규모 데이터 세트로는 테스트되지 않았습니다.
아키텍처
다음 다이어그램은 Oracle 데이터베이스를 소스 데이터베이스로 실행하는 인스턴스와 Amazon RDS for Oracle 데이터베이스를 대상 데이터베이스로 실행하는 인스턴스를 보여줍니다. 데이터는 Oracle Data Pump를 사용하여 소스 Oracle 데이터베이스에서 대상 Amazon RDS for Oracle 데이터베이스로 내보내고 가져오며 AWS 를 사용하여 CDC 변경 사항에 대해 복제됩니다DMS.
초기 단계에서는 Oracle Data Pump를 사용하여 소스 데이터베이스에서 데이터를 추출한 다음 Amazon RDS for Oracle 데이터베이스 대상으로 전송합니다.
데이터는 소스 데이터베이스에서 AWS 의 소스 엔드포인트로 전송됩니다DMS.
소스 엔드포인트에서 데이터는 AWS DMS 복제 작업이 수행되는 복제 인스턴스로 전송됩니다.
복제 작업이 완료되면 데이터는 AWS 의 대상 엔드포인트로 전송됩니다DMS.
대상 엔드포인트에서 데이터가 Amazon RDS for Oracle 데이터베이스 인스턴스로 전송됩니다.
도구
AWS 서비스
AWS Database Migration Service(AWS DMS)를 사용하면 데이터 스토어를 AWS 클라우드로 마이그레이션하거나 클라우드와 온프레미스 설정의 조합 간에 마이그레이션할 수 있습니다.
Amazon Relational Database Service(Amazon RDS) for Oracle은 AWS 클라우드에서 Oracle 관계형 데이터베이스를 설정, 운영 및 확장하는 데 도움이 됩니다.
기타 서비스
Oracle Data Pump
를 사용하면 한 데이터베이스에서 다른 데이터베이스로 데이터와 메타데이터를 빠른 속도로 이동할 수 있습니다.
모범 사례
마이그레이션 LOBs
소스 데이터베이스에 대상 데이터베이스로 마이그레이션해야 하는 큰 바이너리 객체(LOBs)가 포함된 경우 는 다음 옵션을 AWS DMS 제공합니다.
전체 LOB 모드 - 크기에 관계없이 소스LOBs에서 대상 데이터베이스로 모든 를 AWS DMS 마이그레이션합니다. 마이그레이션이 더 느리지만 데이터가 잘리지 않는다는 장점이 있습니다. 성능을 높이기 위해 새 복제 인스턴스에 별도의 작업을 생성하여 몇 메가바이트보다 LOBs 큰 테이블을 마이그레이션할 수 있습니다.
제한 LOB 모드 - 가 리소스를 미리 할당하고 LOBs 를 대량AWSDMS으로 적용할 수 있도록 LOB 열 데이터의 최대 크기를 지정합니다. LOB 열의 크기가 태스크에 지정된 크기를 초과하는 경우 는 데이터를 AWS DMS 잘라내고 AWS DMS 로그 파일에 경고를 보냅니다. LOB 데이터 크기가 제한 LOB 크기 내에 있는 경우 제한 LOB 모드를 사용하여 성능을 개선할 수 있습니다.
인라인 LOB 모드 - 데이터를 잘라내거나 작은 와 큰 를 모두 복제하여 작업 성능을 늦출 필요 LOBs 없이 마이그레이션할 수 있습니다LOBs. 먼저 InlineLobMaxSize 파라미터 값을 지정합니다. 파라미터 값은 전체 LOB 모드가 true로 설정된 경우에만 사용할 수 있습니다. AWS DMS 작업이 작은 LOBs 인라인을 전송하므로 효율성이 향상됩니다. 그런 다음 는 소스 테이블에서 조회를 LOBs 수행하여 대형 를 AWS DMS 마이그레이션합니다. 그러나 인라인 LOB 모드는 전체 로드 단계에서만 작동합니다.
시퀀스 값 생성
를 사용한 데이터 캡처 변경 프로세스 중에는 AWS DMS증분 시퀀스 번호가 소스 데이터베이스에서 복제되지 않습니다. 시퀀스 값의 불일치를 방지하려면 모든 시퀀스에 대해 소스에서 가장 최근 시퀀스 값을 생성하고 대상 Amazon RDS for Oracle 데이터베이스에 적용해야 합니다.
보안 인증 정보 관리
AWS 리소스를 보호하려면 AWS Identity and Access Management() 모범 사례를 따르는 것이 좋습니다IAM.
에픽
작업 | 설명 | 필요한 기술 |
---|---|---|
템플릿을 다운로드합니다. | DMS_instance.yaml | 클라우드 관리자, DBA |
스택 생성을 시작합니다. |
| 클라우드 관리자, DBA |
파라미터를 지정합니다. |
| 클라우드 관리자, DBA |
스택을 생성합니다. |
프로비저닝은 약 5~10분 내에 완료될 것입니다. AWS CloudFormation 스택 페이지에 CREATE_COMPLETE가 표시되면 완료됩니다. | 클라우드 관리자, DBA |
엔드포인트를 설정합니다. |
| 클라우드 관리자, DBA |
연결을 테스트합니다. | 원본 및 대상 엔드포인트의 상태가 활성으로 표시되면 연결을 테스트합니다. 각 엔드포인트(소스 및 대상)에 대해 테스트 실행을 선택하여 상태가 성공으로 표시되는지 확인합니다. | 클라우드 관리자, DBA |
작업 | 설명 | 필요한 기술 |
---|---|---|
를 생성합니다SCN. | 원본 데이터베이스가 활성 상태이고 EnterpriseOne 애플리케이션에서 사용 중인 경우 Oracle Data Pump를 사용하여 데이터 내보내기를 시작하세요. 먼저 Oracle Data Pump로 내보내는 동안과 AWS 에서 변경 데이터 캡처의 시작점으로 소스 데이터베이스에서 데이터 일관성을 위해 시스템 변경 번호(SCN)를 생성해야 합니다DMS. 소스 데이터베이스SCN에서 전류를 생성하려면 다음 SQL 문을 입력합니다.
데이터를 내보낼 때 사용하고 AWS DMS 복제 작업을 생성할 때 SCN 사용할 를 저장합니다. | DBA |
파라미터 파일을 생성합니다. | 스키마를 내보내기 위한 매개변수 파일을 만들려면 다음 코드를 사용할 수 있습니다.
참고: 요구 사항에 따라 다음 명령을 사용하여 나만의
| DBA |
스키마를 내보냅니다. | 내보내기를 수행하려면 다음과 같이
| DBA |
작업 | 설명 | 필요한 기술 |
---|---|---|
덤프 파일을 대상 인스턴스로 전송합니다. | 를 사용하여 파일을 전송하려면 소스 데이터베이스에서 Amazon RDS for Oracle 인스턴스로 데이터베이스 링크를 생성 또는 Data Pump 파일을 Amazon Simple Storage Service(Amazon S3) 대상 DB 인스턴스에서 Amazon RDS 마스터 사용자에
| DBA |
데이터베이스 링크를 테스트합니다. | 데이터베이스 링크를 테스트하여 sqlplus를 사용하여 Amazon RDS for Oracle 대상 데이터베이스에 연결할 수 있는지 확인합니다.
| DBA |
덤프 파일을 대상 데이터베이스로 전송합니다. | 덤프 파일을 Amazon RDS for Oracle 데이터베이스로 복사하려면 기본
다음 스크립트는 라는 데이터베이스 링크를 사용하여 소스 인스턴스
| DBA |
대상 데이터베이스에 있는 덤프 파일을 나열합니다. | PL/SQL 절차가 완료되면 다음 코드를 사용하여 Amazon RDS for Oracle 데이터베이스에 데이터 덤프 파일을 나열할 수 있습니다.
| DBA |
대상 데이터베이스에서 가져오기를 시작합니다. | 가져오기 프로세스를 시작하기 전에 데이터 덤프 파일을 사용하여 대상 Amazon RDS for Oracle 데이터베이스에 역할, 스키마 및 테이블스페이스를 설정합니다. 가져오기를 수행하려면 Amazon RDS 마스터 사용자 계정으로 대상 데이터베이스에 액세스하고 Amazon RDS for Oracle Database 가 포함된 가져오기를 시작하려면 다음 코드를 사용합니다.
가져오기에 성공하려면 가져오기 로그 파일에 오류가 있는지 확인하고 객체 수, 행 수, 잘못된 객체 등의 세부 정보를 검토하십시오. 잘못된 객체가 있는 경우 해당 객체를 다시 컴파일하십시오. 또한 소스 데이터베이스 객체와 대상 데이터베이스 객체를 비교하여 일치하는지 확인하십시오. | DBA |
작업 | 설명 | 필요한 기술 |
---|---|---|
복제 작업을 생성합니다. | 다음 단계를 사용하여 AWS DMS 복제 작업을 생성합니다.
태스크를 생성한 후 CDC 시작 모드에서 SCN 제공한 에서 Amazon RDS for Oracle 데이터베이스 인스턴스CDC로 마이그레이션됩니다. CloudWatch 로그를 검토하여 확인할 수도 있습니다. | 클라우드 관리자, DBA |
작업 | 설명 | 필요한 기술 |
---|---|---|
데이터 전송을 검증합니다. | AWS DMS 작업이 시작된 후 작업 페이지의 테이블 통계 탭을 확인하여 데이터에 대한 변경 사항을 확인할 수 있습니다. 콘솔의 데이터베이스 마이그레이션 작업 페이지에서 진행 중인 복제 상태를 모니터링할 수 있습니다. 자세한 내용은 AWS DMS 데이터 검증을 참조하세요. | 클라우드 관리자, DBA |
작업 | 설명 | 필요한 기술 |
---|---|---|
복제를 중지합니다. | 복제 절차를 중단하고 원본 애플리케이션 서비스를 중지합니다. | 클라우드 관리자, DBA |
PeopleSoft 중간 계층을 시작합니다. | 에서 대상 PeopleSoft 중간 계층 애플리케이션을 시작하고 최근에 마이그레이션된 Amazon RDS for Oracle 데이터베이스로 AWS전달합니다. 애플리케이션에 액세스할 때 이제 Amazon RDS for Oracle 데이터베이스와 모든 앱 연결이 설정되었음을 알 수 있습니다. | DBA, PeopleSoft 관리자 |
소스 데이터베이스를 끕니다. | 더 이상 연결되어 있지 않은지 확인한 후 원본 데이터베이스를 끌 수 있습니다. | DBA |
관련 리소스
추가 정보
Amazon S3를 사용하여 파일 전송하기
파일을 Amazon S3로 전송하려면 AWS CLI 또는 Amazon S3 콘솔을 사용할 수 있습니다. Amazon S3로 파일을 전송한 후 Amazon RDS for Oracle 인스턴스를 사용하여 Amazon S3에서 Data Pump 파일을 가져올 수 있습니다.
Amazon S3 통합을 대체 방법으로 사용하여 덤프 파일을 전송하기로 선택한 경우 다음 단계를 수행합니다.
S3 버킷을 생성합니다.
Oracle Data Pump를 사용하여 원본 데이터베이스에서 데이터를 내보냅니다.
S3 버킷에 Data Pump 파일을 업로드합니다.
S3 버킷에서 대상 Amazon RDS for Oracle 데이터베이스로 Data Pump 파일을 다운로드합니다.
데이터 펌프 파일을 사용하여 가져오기를 수행합니다.
참고: S3와 RDS 인스턴스 간에 대용량 데이터 파일을 전송하려면 Amazon S3 Transfer Acceleration 기능을 사용하는 것이 좋습니다.
추가 로깅 활성화
진행 중인 복제를 위해 원본 데이터베이스에서 보충 로깅
SQL> ALTER DATABASE ADD SUPPLEMENTAL LOG DATA (ALL) COLUMNS; SQL> ALTER DATABASE ADD SUPPLEMENTAL LOG DATA (PRIMARY KEY) COLUMNS; SQL> ALTER DATABASE ADD SUPPLEMENTAL LOG DATA (UNIQUE) COLUMNS; SQL> ALTER DATABASE ADD SUPPLEMENTAL LOG DATA (FOREIGN KEY) COLUMNS; SQL> ALTER DATABASE ADD SUPPLEMENTAL LOG DATA (PRIMARY KEY) COLUMNS SQL> ALTER DATABASE ADD SUPPLEMENTAL LOG DATA (UNIQUE) COLUMNS;