SOURCEISTABLE을 사용하여 초기 로드 추출 인스턴스화
SOURCEISTABLE 매개변수가 있는 초기 로드 Extract의 경우 이 절차를 사용합니다. 이 프로시저는 Oracle Data Pump 또는 정확한 Instantiation 방법을 사용한 Instantiation을 위한 것이 아닙니다. 이 절차에서는 초기 데이터가 로드되는 동안 소스 데이터베이스가 활성 상태를 유지할 수 있도록 정확한 위치 지정 대신 HANDLECOLLISIONS를 사용합니다.
예제에서는 Oracle 소스 및 대상, HR 스키마 및 다음 추적 이름을 사용합니다.
AA: 지속적인 변경 데이터에 대한 소스 추적입니다.BB: 지속적인 변경 데이터에 대한 대상 추적입니다.CC: 초기 로드 데이터의 소스 추적입니다.DD: 초기 로드 데이터에 대한 대상 추적입니다.
주: 예제 별칭, URL, 호스트, 포트, 스키마 이름 및 추적 이름을 환경의 값으로 바꿉니다.
1단계: 기본 TRANLOG Extract 생성 및 시작
소스 배치에 접속합니다. Oracle 소스의 경우 보완 로깅을 사용으로 설정하고, 통합된 기본 Extract를 생성 및 등록하고, 초기 로드를 시작하기 전에 시작하십시오. REGISTER EXTRACT에서 반환된 등록 SCN을 기록합니다. 이 값을 검색하기 위해서만 명령을 재실행하지 마십시오.
ADMINCLIENT: Source deployment
OGG (not connected) 1> CONNECT https://<source-admin-url> AS <deployment-user> PASSWORD "<deployment-password>"
OGG (https://<source-admin-url> source_deployment) > DBLOGIN USERIDALIAS <source-db-alias>
OGG (https://<source-admin-url> source_deployment as <source-db-alias>) > ADD SCHEMATRANDATA hr
전체 스키마 대신 선택한 테이블에 로깅이 필요한 경우 해당 테이블에 대해 ADD TRANDATA를 사용합니다. 예를 들면 다음과 같습니다.
ADD TRANDATA hr.*
기본 Extract를 생성 및 등록한 후 매개변수 파일을 생성합니다.
OGG (https://<source-admin-url> source_deployment as <source-db-alias>) > ADD EXTRACT extprim INTEGRATED TRANLOG BEGIN NOW
OGG (https://<source-admin-url> source_deployment as <source-db-alias>) > REGISTER EXTRACT extprim DATABASE
OGG (https://<source-admin-url> source_deployment as <source-db-alias>) > EDIT PARAMS extprim
기본 Extract 매개변수 파일(EXTPRIM):
EXTRACT extprim
USERIDALIAS <source-db-alias>
EXTTRAIL AA
TABLE hr.*;
로컬 소스 추적을 생성하고 기본 Extract를 시작합니다.
OGG (https://<source-admin-url> source_deployment as <source-db-alias>) > ADD EXTTRAIL AA EXTRACT extprim MEGABYTES 2000
OGG (https://<source-admin-url> source_deployment as <source-db-alias>) > START EXTRACT extprim
컨테이너 데이터베이스의 경우 적합한 세 부분으로 구성된 객체 이름 또는 적합한 SOURCECATALOG 문을 사용합니다. 다른 소스 데이터베이스 유형의 경우 데이터베이스별 등록, 로깅 및 시작 위치 구문을 사용합니다.
2단계: 초기 로드 Extract 생성 및 시작
초기 로드 Extract는 Extract 작업입니다. 소스 테이블을 읽고 로컬 초기 로드 추적 CC에 레코드를 씁니다. Oracle 특정 SQLPREDICATE "AS OF SCN" 절은 선택한 일관성 있는 지점에서 테이블 내용을 선택합니다.
초기 로드 Replicat를 시작하기 전에 기본 TRANLOG Extract가 시작될 때 열려 있던 모든 트랜잭션이 커밋되었는지 확인하십시오. 열린 상태로 남아 있는 트랜잭션은 초기 로드 Extract 또는 기본 TRANLOG Extract에 의해 캡처되지 않으며 손실될 수 있습니다.
초기 로드 Extract 및 해당 파라미터 파일을 생성합니다.
ADMINCLIENT: Source deployment
OGG (https://<source-admin-url> source_deployment as <source-db-alias>) > ADD EXTRACT extinit SOURCEISTABLE
OGG (https://<source-admin-url> source_deployment as <source-db-alias>) > EDIT PARAMS extinit
초기 로드 Extract 매개변수 파일(EXTINIT):
EXTRACT extinit
USERIDALIAS <source-db-alias>
EXTFILE CC MEGABYTES 2000 PURGE
TABLE hr.*, SQLPREDICATE "AS OF SCN <instantiation-scn>";
Oracle GoldenGate 26ai부터 초기 로드 Extract의 와일드카드 TABLE 문은 뷰를 분석하지 않습니다. 뷰를 포함하려면 다음과 같이 와일드카드 없이 별도로 지정합니다.
TABLE hr.employees_view;
초기 로드 Extract 시작 및 모니터:
OGG (https://<source-admin-url> source_deployment as <source-db-alias>) > START EXTRACT extinit
OGG (https://<source-admin-url> source_deployment as <source-db-alias>) > INFO EXTRACT extinit DETAIL
OGG (https://<source-admin-url> source_deployment as <source-db-alias>) > VIEW REPORT extinit
3단계: Distribution Service 경로 생성 및 시작
소스 배치에서 경로를 생성합니다. SOURCE URI는 소스 배포 서비스 및 로컬 추적을 식별합니다. TARGET URI는 대상 수신기 서비스 및 대상 추적을 식별합니다. 소스 및 대상 추적 이름은 해당 스트림에 대해 생성된 추적과 일치해야 합니다.
진행 중인 변경 데이터에 대한 경로를 생성합니다(AA - BB).
ADMINCLIENT: Source deployment
OGG (https://<source-admin-url> source_deployment) > ADD DISTPATH aabb SOURCE trail://<source-dist-host>:<source-dist-port>/services/v2/sources?trail=AA TARGET wss://<target-recv-host>:<target-recv-port>/services/v2/targets?trail=BB
OGG (https://<source-admin-url> source_deployment) > START DISTPATH aabb
OGG (https://<source-admin-url> source_deployment) > INFO DISTPATH aabb DETAIL
초기 로드 데이터의 경로를 생성합니다(CC - DD).
OGG (https://<source-admin-url> source_deployment) > ADD DISTPATH ccdd SOURCE trail://<source-dist-host>:<source-dist-port>/services/v2/sources?trail=CC TARGET wss://<target-recv-host>:<target-recv-port>/services/v2/targets?trail=DD
OGG (https://<source-admin-url> source_deployment) > START DISTPATH ccdd
OGG (https://<source-admin-url> source_deployment) > INFO DISTPATH ccdd DETAIL
경로 인증이 필요한 보안 대상의 경우 각 ADD DISTPATH 명령에 다음 절을 추가합니다.
AUTHENTICATION USERIDALIAS <target-path-alias> DOMAIN <target-path-domain>
별칭이 기본 도메인에 있는 경우 DOMAIN를 생략합니다. 소스 배치에서 대상 경로 인증에 대해 별칭 및 도메인을 구성해야 합니다.
ws 또는 wss 대신 레거시 ogg 프로토콜을 사용하는 경우 ADD DISTPATH 명령에 적합한 TARGETTYPE 옵션도 지정합니다.
4단계: 초기 로드 Replicat 생성 및 시작
대상 배치에 접속하고, 체크포인트 테이블을 생성하고, 대상 추적 DD을 읽는 비통합 초기 로드 Replicat를 추가합니다. Replicat는 초기 로드 추적이 도착하기 전에 시작할 수 있으며 배포 경로가 실행된 후 DD의 데이터를 기다립니다.
ADMINCLIENT: Target deployment
OGG (not connected) 1> CONNECT https://<target-admin-url> AS <deployment-user> PASSWORD "<deployment-password>"
OGG (https://<target-admin-url> target_deployment) > DBLOGIN USERIDALIAS <target-db-alias>
OGG (https://<target-admin-url> target_deployment as <target-db-alias>) > ADD CHECKPOINTTABLE ggadmin.ggcheckpoint
OGG (https://<target-admin-url> target_deployment as <target-db-alias>) > ADD REPLICAT repinit EXTTRAIL DD CHECKPOINTTABLE ggadmin.ggcheckpoint
OGG (https://<target-admin-url> target_deployment as <target-db-alias>) > EDIT PARAMS repinit
초기 로드 Replicat 매개변수 파일(REPINIT):
REPLICAT repinit
USERIDALIAS <target-db-alias>
MAP hr.*, TARGET hr.*;
초기 로드 Replicat 시작 및 모니터:
OGG (https://<target-admin-url> target_deployment as <target-db-alias>) > START REPLICAT repinit
OGG (https://<target-admin-url> target_deployment as <target-db-alias>) > INFO REPLICAT repinit DETAIL
5단계: 초기 로드를 완료하고 일회성 객체 제거
초기 로드 Extract가 입력 끝에 도달할 때까지 기다리십시오. CC - DD 경로가 모든 레코드를 DD에 전달하고 REPINIT가 적용했습니다. 다음 검사를 사용합니다.
ADMINCLIENT: Source deployment
OGG (https://<source-admin-url> source_deployment) > INFO EXTRACT extinit DETAIL
OGG (https://<source-admin-url> source_deployment) > INFO DISTPATH ccdd DETAIL
ADMINCLIENT: Target deployment
OGG (https://<target-admin-url> target_deployment as <target-db-alias>) > INFO REPLICAT repinit DETAIL
OGG (https://<target-admin-url> target_deployment as <target-db-alias>) > SEND REPLICAT repinit, LOGEND
초기 로드 결과를 검증한 후 일회성 경로 및 프로세스 객체만 제거합니다. 기본 Extract EXTPRIM 및 기본 경로 AABB를 유지합니다.
소스 배포에서 다음을 수행합니다.
STOP DISTPATH ccdd
DELETE DISTPATH ccdd
STOP EXTRACT extinit
DELETE EXTRACT extinit
대상 배치에서 REPINIT가 아직 실행 중인 경우 정지한 다음 삭제합니다.
STOP REPLICAT repinit
DELETE REPLICAT repinit
DELETE EXTRACT에는 Oracle에 적합한 소스 데이터베이스 로그인이 필요하고, DELETE REPLICAT에는 대상 데이터베이스 로그인이 필요합니다. 프로세스 그룹을 삭제해도 반드시 해당 매개변수 파일 또는 추적 파일이 삭제되는 것은 아닙니다. 배포의 지원되는 관리 작업을 통해 유지된 아티팩트를 관리하십시오.
6단계: HANDLECOLLISIONS로 기본 Replicat 생성 및 시작
대상에서 기본 Replicat를 만듭니다. 이 절차에서는 기본 Replicat가 초기 로드 데이터와 겹칠 수 있는 변경사항을 적용하는 동안 HANDLECOLLISIONS를 사용합니다.
HANDLECOLLISIONS 워크플로우의 경우 지원되는 경우 통합되지 않은 기본 Replicat를 사용하십시오. 통합된 Oracle Replicat에서 HANDLECOLLISIONS를 사용하지 마십시오. 통합된 Replicat가 필요할 때 정확한 인스턴스화 방법을 사용하십시오.
ADMINCLIENT: Target deployment
OGG (https://<target-admin-url> target_deployment) > DBLOGIN USERIDALIAS <target-db-alias>
OGG (https://<target-admin-url> target_deployment as <target-db-alias>) > ADD REPLICAT repprim EXTTRAIL BB CHECKPOINTTABLE ggadmin.ggcheckpoint
OGG (https://<target-admin-url> target_deployment as <target-db-alias>) > EDIT PARAMS repprim
기본 Replicat 매개변수 파일(REPPRIM):
REPLICAT repprim
USERIDALIAS <target-db-alias>
HANDLECOLLISIONS
MAP hr.*, TARGET hr.*;
기본 Replicat 시작 및 모니터링:
OGG (https://<target-admin-url> target_deployment as <target-db-alias>) > START REPLICAT repprim
OGG (https://<target-admin-url> target_deployment as <target-db-alias>) > INFO REPLICAT repprim DETAIL
OGG (https://<source-admin-url> source_deployment) > INFO DISTPATH aabb DETAIL
기본 Replicat가 초기 로드 중 대기열에 있는 변경사항을 포착하여 처리한 후 HANDLECOLLISIONS를 사용 안함으로 설정합니다.
OGG (https://<target-admin-url> target_deployment as <target-db-alias>) > SEND REPLICAT repprim, NOHANDLECOLLISIONS
SEND REPLICAT ... NOHANDLECOLLISIONS는 현재 실행에 대한 충돌 처리를 사용 안함으로 설정하지만 매개변수 파일에서 HANDLECOLLISIONS를 제거하지 않습니다. 다음에 다시 시작하기 전에 매개변수 파일에서 HANDLECOLLISIONS를 제거하거나 영향을 받는 MAP 문 앞에 NOHANDLECOLLISIONS를 추가합니다.