Quiet 데이터베이스에서 Oracle 핫 백업으로 복제 활성화
프로시저가 수행되는 동안 사용자 활동을 중지할 수 있는 경우 Oracle 핫 백업을 사용하여 타겟 Oracle 인스턴스를 설정하고 복제를 활성화하려면 이 프로시저를 사용합니다. 이 프로시저는 모든 복제 구성에 사용할 수 있습니다.
예비 고려 사항
계속하기 전에 다음 사항을 읽어 보십시오.
지원되는 데이터베이스
Oracle 소스 및 Oracle 타겟
지원되는 복제 전략
고가용성을 제외한 모든 것에 해당합니다. 이 프로시저는 백업이 수행되고 구성 파일이 활성화되는 동안 소스 데이터베이스를 Quiet 상태로 유지해야 하므로 고가용성 전략에는 적합하지 않습니다.
다음의 특정 제한 사항이 적용됩니다.
통합 복제(여러 소스를 하나의 타겟으로) |
통합 복제를 설정하려면 모든 소스 시스템에서 핫 백업을 사용할 수는 없습니다. 한 소스의 백업은 다른 소스의 백업에 의해 적용된 데이터보다 우선 적용됩니다. 소스 인스턴스 중 하나의 핫 백업을 사용하여 타겟 인스턴스를 설정한 다음, 다른 복사 방법을 사용하여 다른 소스 인스턴스의 객체를 적용할 수 있습니다. 가능한 방법은 다음과 같습니다.
|
요구 사항
- [Unix 및 Linux 시스템] oratab 파일의 ORACLE_SID 및 ORACLE_HOME이 핫 백업으로 설정할 인스턴스에 대해 올바른지 확인합니다. SID는 활성화할 구성 파일의 라우팅 맵에 사용된 것이어야 합니다.
- 이 프로시저를 시작하기 전에 요구 사항을 읽어 보십시오. 자세한 내용은 구성 활성화를 위한 요구 사항를 참조하십시오.
- 핫 백업 및 구성 활성화가 진행되는 동안 사용자는 프로덕션 데이터베이스에 대한 접근을 중지해야 합니다.
- SharePlex 데이터베이스 계정은 소스 데이터베이스에(만) 있어야 합니다. 이 계정은 일반적으로 SharePlex 설치 중에 생성됩니다. 자세한 내용은 SharePlex 설치 및 설정 안내서를 참조하십시오.
- 시작하기 전에 이 프로시저를 살펴보고 사용되는 명령에 대한 자세한 내용은 SharePlex 참조 안내서를 참조하십시오.
프로시저
참고: 단계화 복제를 사용하지 않는 경우 중간 시스템에 대한 모든 참조를 무시하십시오. 자세한 내용은 중간 시스템을 통한 복제 설정를 참조하십시오.
- 소스 시스템에서 Oracle 핫 백업을 완료합니다.
- 소스 시스템에서 소스 데이터베이스를 종료하고 제한 모드로 열어 소스 데이터베이스에 대한 사용자 접근을 중지합니다.
-
소스 시스템에서 리두 로그를 전환합니다.
온프레미스 데이터베이스:
svrmgr1> alter system switch logfile;
Amazon RDS 데이터베이스:
Amazon RDS 프로시저 rdsadmin.rdsadmin_util.switch_logfile을 실행합니다.
- 현재 로그의 시퀀스 번호를 기록해 둡니다.
- 모든 시스템에서 SharePlex product 디렉토리의 bin 하위 디렉토리에서 sp_cop 및 sp_ctrl을 시작합니다.
-
모든 시스템에서 sp_cop 및 sp_ctrl이 실행 중인지 확인합니다.
sp_ctrl> status
-
중간 시스템과 타겟 시스템에서 Post를 중지합니다. Post를 중지하면 데이터베이스가 복구될 때까지 복제된 데이터가 Post 큐에 누적됩니다.
sp_ctrl> stop post
-
소스 시스템에서 구성 파일을 활성화합니다.
sp_ctrl> activate config filename
-
소스 시스템에서 활성화 상태를 확인합니다.
참고: 이 명령은 활성화가 완료될 때까지 sp_ctrl에 대한 제어를 유지합니다.
- 활성화가 완료되면 사용자가 소스 데이터베이스에 대한 접근을 재개할 수 있도록 허용합니다.
- 중간 시스템과 타겟 시스템의 아카이브 로그를 나열합니다. 레코드를 작성한 로그 이후에 작성된 모든 로그를 삭제합니다.
- 중간 시스템과 타겟 시스템에서 기록한 로그 번호로 데이터베이스를 복구합니다. 전체 복구가 수행되어야 합니다.
- 중간 시스템과 타겟 시스템에서 데이터베이스를 엽니다.
-
중간 시스템과 타겟 시스템에서 타겟 인스턴스에 대한 데이터베이스 설정 유틸리티를 실행합니다. SharePlex 데이터베이스 사용자를 묻는 메시지가 나타나면 n을 입력하여 (백업에 복사된) 기존 사용자 및 비밀번호를 선택합니다.
Would you like to create a new SharePlex user [y].n
- 중간 시스템과 타겟 시스템에서 cleanup.sql 스크립트를 실행하여 SharePlex 내부 테이블을 자릅니다. 이 스크립트를 실행하기 위한 지침은 SharePlex 참조 안내서에 있습니다.
- 중간 시스템과 타겟 시스템에서 테이블의 트리거를 비활성화하거나 sp_add_trigger.sql 유틸리티 스크립트를 실행하여 트리거가 SharePlex 사용자를 무시하도록 합니다.
- 중간 시스템과 타겟 시스템에서 , 체크 제약 조건, DML을 수행하는 scheduled job을 비활성화합니다.
- [파티셔닝된 복제만 해당] 테이블에 대해 수직으로 파티셔닝된 복제 또는 수평으로 파티셔닝된 복제를 사용하는 경우 중간 시스템과 타겟 시스템의 해당 테이블에서 불필요한 컬럼과 행을 삭제합니다.
-
[중간 시스템만 해당] 중간 시스템에서 SP_OCT_REPLICATE_POSTER 매개변수를 1로 설정합니다. 설정하면 SharePlex가 해당 시스템에 게시된 변경 사항을 캡처하여 타겟 시스템에 복제하도록 지시합니다.
sp_ctrl> set param SP_OCT_REPLICATE_POSTER 1
-
중간 시스템에서 구성 파일을 활성화합니다.
sp_ctrl> activate config filename
-
중간 시스템에서 활성화 상태를 모니터링합니다.
참고: 이 명령은 활성화가 완료될 때까지 sp_ctrl에 대한 제어를 유지합니다.
-
활성화가 완료되면 중간 시스템과 타겟 시스템에서 Post 프로세스를 시작합니다. 이제 모든 인스턴스가 동기화되었으며 SharePlex는 동기화를 유지하기 위해 계속 복제됩니다.
sp_ctrl> start post
-
[선택 사항] 부분 백업인 경우 핫 백업 중에 복사되지 않은 테이블스페이스를 삭제합니다.
Oracle 전송 가능한 테이블스페이스로 복제 활성화
Oracle 전송 가능한 테이블스페이스 기능을 사용하여 타겟 Oracle 인스턴스를 설정하고 복제를 활성화하려면 이 프로시저를 사용합니다. 이 프로시저를 통해 다운타임을 최소화하면서 수많은 객체를 신속하게 동기화 및 재동기화할 수 있습니다. 메타데이터(데이터 사전)만 내보낸 다음, 데이터 파일을 복사할 수 있습니다. 또한 이 방법은 인덱스를 이동하므로 타겟 데이터베이스에서 인덱스를 다시 빌드할 필요가 없으며 한 번에 여러 테이블스페이스를 이동할 수 있습니다.
참고: 이 문서에서는 전송 가능한 테이블스페이스를 사용하는 방법에 대한 지침을 제공하지 않습니다. 이 프로시저는 데이터베이스 복사 방법을 확실히 이해하고 있는 사람이 수행해야 합니다.
예비 고려 사항
계속하기 전에 다음 사항을 읽어 보십시오.
지원되는 데이터베이스
Oracle 소스 및 Oracle 타겟
지원되는 복제 전략
모든 복제 전략입니다. 소스 데이터베이스를 잠시라도 Quiet 설정할 수 없는 경우 이 프로시저는 고가용성 전략에 적합하지 않을 수 있습니다.
요구 사항
사용된 명명 규칙
이 프로시저에서 "소스" 시스템은 다음 중 하나에 해당합니다.
- 단계화 복제를 포함한 단일 방향 복제 구성의 소스 시스템입니다.
- 통합 복제 구성의 모든 소스 시스템입니다.
- 피어-투-피어 복제 구성의 신뢰할 수 있는 소스 시스템입니다.
- 클러스터의 기본 노드(클러스터 VIP가 실행 중인 위치)입니다.
이 프로시저에서 "중간" 시스템은 SharePlex가 단계화 구성의 중간 시스템에 게시하고 중간 시스템에서 캡처하는 경우에만 이 프로시저에 속해야 합니다.
이 프로시저에서 "타겟" 시스템은 다음 중 하나에 해당합니다.
- 단계화 복제 및 통합 복제를 포함한 단일 방향 복제 구성의 타겟 시스템입니다.
- 피어-투-피어 복제 구성의 보조 시스템입니다.
- 타겟 클러스터의 기본 노드(클러스터 VIP가 실행 중인 위치)입니다.
이 프로시저에서 프로시저의 SharePlex 명령은 사용 중인 복제 전략에 적용되는 모든 sp_cop 인스턴스에 적용됩니다(예: 통합 복제의 타겟에 있는 모든 sp_cop 프로세스).
프로시저
-
소스 시스템에서 복사할 소스 테이블스페이스를 READ ONLY로 설정합니다.
svrmgr1> alter tablespace name read only;
-
소스 시스템에서 구성 파일을 활성화합니다.
sp_ctrl> activate config filename
- 소스 시스템에서 SharePlex product 디렉토리의 bin 하위 디렉토리에서 sp_cop 및 sp_ctrl을 시작합니다.
-
소스 시스템에서 sp_cop 및 sp_ctrl이 실행 중인지 확인합니다.
sp_ctrl> status
-
중간 시스템과 타겟 시스템에서 Post를 중지합니다. Post를 중지하면 데이터베이스가 복구될 때까지 복제된 데이터가 Post 큐에 누적됩니다.
sp_ctrl> stop post
- 소스 시스템에서 메타데이터를 export 파일로 내보냅니다.
- Export가 완료되면 데이터 파일을 소스 시스템의 다른 위치에 복사합니다. 이렇게 하면 파일을 타겟 시스템에 복사할 때 소스 데이터베이스에 미치는 영향이 최소화됩니다.
-
소스 테이블스페이스를 다시 읽기/쓰기 모드로 설정합니다.
svrmgr1> alter Tablespace name read write;
- 복사한 데이터파일과 테이블스페이스가 중간 데이터베이스나 타겟 데이터베이스에 있는 경우 복사된 파일이 적용되도록 삭제합니다.
- 소스 시스템의 새 위치에서 파일을 중간 시스템과 타겟 시스템으로 복사합니다.
- 중간 시스템과 타겟 시스템에서 Oracle 가져오기 유틸리티를 사용하여 메타데이터 및 테이블스페이스 정의를 가져옵니다.
- 중간 시스템과 타겟 시스템에서 테이블스페이스를 읽기/쓰기 모드로 설정합니다.
- 중간 시스템과 타겟 시스템에서 Oracle 데이터베이스를 엽니다.
-
중간 시스템과 타겟 시스템에서 테이블의 트리거를 비활성화하거나 sp_add_trigger.sql 유틸리티 스크립트를 실행하여 트리거가 SharePlex 사용자를 무시하도록 합니다.
- 중간 시스템과 타겟 시스템에서 , 체크 제약 조건, DML을 수행하는 scheduled job을 비활성화합니다.
- [파티셔닝된 복제만 해당] 테이블에 대해 수직으로 파티셔닝된 복제 또는 수평으로 파티셔닝된 복제를 사용하는 경우 중간 시스템과 타겟 시스템의 해당 테이블에서 불필요한 컬럼과 행을 삭제합니다.
-
[중간 시스템만 해당] SP_OCT_REPLICATE_POSTER 매개변수를 1로 설정합니다. 설정하면 SharePlex가 해당 시스템에 게시된 변경 사항을 캡처하여 타겟 시스템에 복제하도록 지시합니다.
sp_ctrl> set param SP_OCT_REPLICATE_POSTER 1
-
[중간 시스템만 해당] 구성 파일을 활성화합니다.
sp_ctrl> activate config filename
-
[고가용성] 타겟 시스템에서 Export 프로세스를 중지합니다.
sp_ctrl> stop export
-
[고가용성 및 피어-투-피어 복제] 타겟 시스템에서 구성을 활성화합니다.
sp_ctrl> activate config filename
-
중간 시스템과 타겟 시스템에서 Post를 시작합니다. 그러면 SharePlex가 소스 및 타겟 데이터의 동기화를 유지하면서 Post 큐에 수집된 SQL 문을 실행하기 시작합니다.
sp_ctrl> start post
- [피어-투-피어 복제] 사용자가 모든 시스템의 데이터베이스에 접근할 수 있도록 허용합니다.
콜드 복사/전송 방법으로 복제 활성화
이 프로시저를 사용하여 소스 및 타겟 데이터를 다음 유틸리티와 동기화합니다.
- Import/Export/데이터 펌프
- 테이프에서 저장/복원
- FTP
참고: 이 문서에서는 선택한 복사 방법을 수행하는 방법에 대한 지침을 제공하지 않습니다. 이 프로시저는 데이터베이스 복사 방법을 확실히 이해하고 있는 사람이 수행해야 합니다.
예비 고려 사항
계속하기 전에 다음 사항을 읽어 보십시오.
지원되는 데이터베이스
Oracle 소스 및 Oracle 타겟
지원되는 복제 전략
고가용성을 제외한 모든 것에 해당합니다. 이 프로시저는 구성 파일이 활성화되는 동안 소스 데이터베이스를 Quiet 상태로 유지해야 하므로 고가용성 전략에는 적합하지 않습니다.
요구 사항
- [Unix 및 Linux 시스템] oratab 파일의 ORACLE_SID 및 ORACLE_HOME이 핫 백업으로 설정할 인스턴스에 대해 올바른지 확인합니다. SID는 활성화할 구성 파일의 라우팅 맵에 사용된 것이어야 합니다.
- 이 프로시저를 시작하기 전에 요구 사항을 읽어 보십시오. 자세한 내용은 구성 활성화를 위한 요구 사항를 참조하십시오.
- 복사 및 구성 활성화가 진행되는 동안 사용자는 프로덕션 데이터베이스에 대한 접근을 중지해야 합니다.
- 타겟 인스턴스가 있어야 합니다.
- SharePlex 데이터베이스 계정이 소스 및 타겟 데이터베이스에만 있어야 합니다. 이 계정은 일반적으로 설치 중에 생성됩니다. 자세한 내용은 SharePlex 설치 및 설정 안내서를 참조하십시오.
- 시작하기 전에 이 프로시저를 살펴보고 사용되는 명령에 대한 자세한 내용은 SharePlex 참조 안내서를 참조하십시오.
사용된 명명 규칙
이 프로시저에서 "소스" 시스템은 다음 중 하나에 해당합니다.
- 단계화 복제를 포함한 단일 방향 복제 구성의 소스 시스템입니다.
- 통합 복제 구성의 모든 소스 시스템입니다.
- 피어-투-피어 복제 구성의 신뢰할 수 있는 소스 시스템입니다.
- 클러스터의 기본 노드(클러스터 VIP가 실행 중인 위치)입니다.
이 프로시저에서 "중간" 시스템은 SharePlex가 단계화 구성의 중간 시스템에 게시하고 중간 시스템에서 캡처하는 경우에만 이 프로시저에 속해야 합니다.
이 프로시저에서 "타겟" 시스템은 다음 중 하나에 해당합니다.
- 단계화 복제 및 통합 복제를 포함한 단일 방향 복제 구성의 타겟 시스템입니다.
- 피어-투-피어 복제 구성의 보조 시스템입니다.
- 타겟 클러스터의 기본 노드(클러스터 VIP가 실행 중인 위치)입니다.
이 프로시저에서 프로시저의 SharePlex 명령은 사용 중인 복제 전략에 적용되는 모든 sp_cop 인스턴스에 적용됩니다(예: 통합 복제의 타겟에 있는 모든 sp_cop 프로세스).
프로시저
-
소스 시스템에서 복제 구성에 있는 객체에 대한 사용자 접근을 중지합니다.
- 통합 복제를 배포하는 경우 모든 소스 시스템에 대한 접근을 한 번에 중지하고 동시에 복사본을 만들거나, 다음 지침을 사용하여 각 소스 시스템을 한 번에 하나씩 동기화할 수 있습니다.
- 피어-투-피어 복제를 배포하는 경우 신뢰할 수 있는 소스를 포함하여 피어 그룹의 모든 데이터베이스에 대한 접근을 중지합니다.
- 소스 시스템의 파일을 중간 시스템과 타겟 시스템으로 복사합니다.
- 소스 시스템에서 sp_cop 및 sp_ctrl을 시작합니다.
-
소스 시스템에서 구성 파일(통합 복제를 사용하는 경우 모든 파일)을 활성화합니다.
sp_ctrl> activate config filename
- 중간 시스템과 타겟 시스템에서 sp_cop 및 sp_ctrl을 시작합니다.
-
중간 시스템과 타겟 시스템에서 Post를 중지합니다. Post를 중지하면 타겟 데이터가 설정되기 전에 복제된 데이터가 Post 큐에 수집될 수 있습니다.
sp_ctrl> stop post
- 소스 시스템에서 사용자가 소스 데이터베이스에 대한 접근을 재개할 수 있도록 허용합니다.
-
소스 시스템에서 sp_cop, Capture 및 Read 프로세스가 실행 중인지 확인합니다.
sp_ctrl> status
- 중간 및 타겟 데이터베이스를 시작하고 마운트하지만 사용자 접근을 허용하지 않습니다.
- 중간 시스템과 타겟 시스템에서 데이터베이스에 복사본을 적용합니다.
-
중간 시스템과 타겟 시스템에서 테이블의 트리거를 비활성화하거나 sp_add_trigger.sql 유틸리티 스크립트를 실행하여 트리거가 SharePlex 사용자를 무시하도록 합니다.
- 중간 시스템과 타겟 시스템에서 , 체크 제약 조건, DML을 수행하는 scheduled job을 비활성화합니다.
- [파티셔닝된 복제만 해당] 테이블에 대해 수직으로 파티셔닝된 복제 또는 수평으로 파티셔닝된 복제를 사용하는 경우 중간 시스템과 타겟 시스템의 해당 테이블에서 불필요한 컬럼과 행을 삭제합니다.
-
[중간 시스템만 해당] SP_OCT_REPLICATE_POSTER 매개변수를 1로 설정합니다. 설정하면 SharePlex가 해당 시스템에 게시된 변경 사항을 캡처하여 타겟 시스템에 복제하도록 지시합니다.
sp_ctrl> set param SP_OCT_REPLICATE_POSTER 1
-
[중간 시스템만 해당] 구성 파일을 활성화합니다.
sp_ctrl> activate config filename
- [피어-투-피어] 타겟 시스템에서 구성 파일을 활성화합니다.
-
다음 위치에서 Post를 시작합니다.
- 중간 시스템
- 피어 그룹의 신뢰할 수 있는 소스 및 기타 모든 타겟
- 기타 모든 타겟
참고: SharePlex는 Post 큐에 누적된 SQL 문 실행을 시작합니다.
- [피어-투-피어] 피어 그룹의 타겟 시스템에서 사용자가 데이터베이스에 대한 접근을 재개하도록 허용합니다.
Oracle에서 Open Target으로의 복제 활성화
Oracle 소스 데이터베이스를 Open Target 데이터베이스와 동기화하려면 이 프로시저를 사용합니다. SharePlex는 Oracle 데이터 변경 사항을 복제하고 타겟이 복사본으로 설정될 때까지 이를 Post 큐에 유지합니다. 타겟이 준비되면 SharePlex 조정 기능을 실행하여 Post가 복사 후에 발생한 작업만 적용하고 복사 전에 소스에 커밋된 작업을 삭제하도록 합니다.
예비 고려 사항
계속하기 전에 다음 사항을 읽어 보십시오.
지원되는 데이터베이스
Oracle 소스 및 지원되는 모든 타겟
지원되는 복제 전략
전체
요구 사항
프로시저
- 소스 시스템과 타겟 시스템에서 SharePlex product 디렉토리의 bin 하위 디렉토리에서 sp_cop 및 sp_ctrl을 시작합니다.
-
소스 시스템과 타겟 시스템에서 SharePlex 프로세스가 실행 중인지 확인합니다.
sp_ctrl> status
-
타겟 시스템에서 Post 프로세스를 중지합니다. 이를 통해 타겟 데이터베이스가 인스턴스화되고 조정될 때까지 복제된 데이터가 Post 큐에 누적될 수 있습니다.
sp_ctrl> stop post
-
소스 시스템에서 구성을 활성화합니다.
sp_ctrl> activate config filename
-
소스 시스템에서 활성화 상태를 모니터링합니다.
참고: 이 명령은 활성화가 완료될 때까지 sp_ctrl에 대한 제어를 유지합니다.
- 활성화가 완료되면 스테이징 인스턴스에 대한 핫 백업을 시작합니다.
-
핫 백업이 완료되면 기본 소스 시스템의 로그 파일을 두 번 전환합니다.
온프레미스 데이터베이스:
svrmgr1> alter system switch logfile;
svrmgr1> alter system switch logfile;
Amazon RDS 데이터베이스:
Amazon RDS 프로시저 rdsadmin.rdsadmin_util.switch_logfile을 두 번 실행합니다.
- 로그 스위치로 생성된 아카이브 로그를 기본 인스턴스에서 스테이징 인스턴스로 복사합니다.
-
다음 중 하나를 수행합니다.
- 소스가 RAC인 경우 스테이징 서버에 복사된 마지막 아카이브 로그의 최신 SCN으로 스테이징 서버의 데이터베이스를 복구합니다.
-
소스가 RAC가 아닌 경우 스테이징 서버에 복사된 마지막 아카이브 로그의 시퀀스 번호로 복구한다.
참고: 다음 단계에서는 백업 지점 이후에 발생한 복제된 변경 사항을 적용합니다.
-
다음 중 하나를 수행합니다.
- 선택한 복사 방법을 사용하여 스테이징 서버에서 Open Target 데이터베이스로 Oracle 데이터 복사본을 만듭니다. 다음 단계로 진행하려면 먼저 복사가 완료될 때까지 기다립니다.
-
[선택 사항] 명명된 Post 큐를 사용 중이고 큐 이름이 확실하지 않은 경우에는 qstatus 명령을 실행하고 기록해 둡니다.
sp_ctrl> qstatus
- 타겟 시스템의 타겟 테이블에서 트리거를 비활성화합니다.
- 타겟 시스템에서 체크 제약 조건과 DML을 수행하는 scheduled job을 비활성화합니다.
-
타겟 시스템에서 sp_ctrl을 실행한 후 다음 reconcile 명령 중 하나를 실행합니다. 명명된 Post 큐를 사용하는 경우 각 큐에 대해 명령을 실행합니다.
-
소스가 RAC가 아닌 경우 이전에 기록한 로그의 로그 시퀀스 번호로 조정합니다.
sp_ctrl> reconcile queue queuename for datasource-datadest seq sequence_number
예: reconcile queue SysA for o.prod1-r.rep1 seq 1234
-
소스가 RAC인 경우 이전에 기록해 둔 SCN으로 조정합니다.
sp_ctrl> reconcile queue queuename for datasource-datadest scn scn_number
예: reconcile queue SysA for o.prod1-r.rep1 scn 0123456789
참고: 이 명령은 조정 프로세스가 완료될 때까지 sp_ctrl에 대한 제어를 유지합니다.
-
타겟 시스템에서 Post 프로세스를 시작합니다. 이제 두 인스턴스가 동기화되었으며 SharePlex는 동기화를 유지하기 위해 계속 복제됩니다.
sp_ctrl> start post