사후 업그레이드 단계
여러 업그레이드 시나리오의 업그레이드 후 작업에 대해 알아봅니다.
Oracle GoldenGate 데이터 복제 설정을 시작하기 전에 완료해야 하는 업그레이드 후 단계가 여러 개 있습니다. 태스크는 다음과 같습니다.
-
Heartbeat 테이블 업그레이드
-
(Oracle GoldenGate for PostgreSQL에만 해당) PostgreSQL 추출 업그레이드.
하트비트 테이블 업그레이드
업그레이드를 완료한 후 이전에 생성된 소스 및 대상 데이터베이스에 대해 UPGRADE HEARTBEATTABLE 명령을 실행하여 테이블 및 지연 뷰에 대한 추가 열을 추가합니다. 해당 추가 열은 Extract 재시작 위치를 추적하는 데 사용됩니다. 자세한 내용은 UPGRADE HEARTBEATTABLE`를 참조하십시오.
Oracle GoldenGate for PostgreSQL용 업그레이드 추출
PostgreSQL의 Oracle GoldenGate CDC Capture 지원은 PostgreSQL 데이터베이스에서 복제 슬롯을 사용하여 WAL에서 변경 레코드를 읽는 데 사용됩니다. 각 CDC Extract에 사용되는 복제 슬롯 이름은 Oracle GoldenGate 설치 경로에 따라 달라집니다.
기존 Oracle GoldenGate 환경에서 동일한 Extract를 사용하여 업그레이드 후에도 새 Oracle GoldenGate 환경에서 변경 레코드를 계속 캡처할 수 있습니다. 단, Extract가 업그레이드 시점까지 변경 레코드 캡처를 완료하지는 않았습니다. 그러나 새 Oracle GoldenGate 설치 디렉토리가 업그레이드에 사용된 경우 이 작업을 수행할 수 없습니다. 이렇게 하려면 기존 Oracle GoldenGate 설치 디렉토리를 사용해야 합니다.
이전 Oracle GoldenGate 버전을 업그레이드하거나 Oracle GoldenGate Classic Architecture에서 마이크로서비스 아키텍처로 마이그레이션하려면 다음 단계를 사용합니다.
주: 다음 단계에서는 추출 이름 extn을 예로 사용합니다.
-
이전 환경에서 Oracle GoldenGate CDC Extract에서 사용 중인 복제 슬롯 이름을 가져옵니다. 이전 복제 슬롯 이름은 Extract 보고서 파일에서 또는
INFO EXTRACT명령을 실행하여 가져올 수 있습니다.이전 Oracle GoldenGate 환경의 추출 보고서 파일에서. 다음은 추출 보고서 파일의 예제 코드 조각입니다.
2024-01-09 11:49:38 INFO OGG-25376 Oracle GoldenGate capture 'EXTN' running with replication slot 'ext1_5d87a7db5e810943', slot type 'logical', plugin name as 'test_decoding' attached with database 'postgres' with slot restart LSN as '6/3CBFE2B8', flush LSN as '6/3CBFE2F0' and its current TXID as '7899713'.Extract 보고서 파일의 복제 슬롯 이름을 확인합니다. 이 예에서는
extn_5d87a7db5e810943입니다.다음 예와 같이 이전 Oracle GoldenGate 환경에서 GGSCI 또는 관리 클라이언트에서
INFO EXTRACT명령을 실행할 수도 있습니다.GGSCI (phoenix96567 as postgres@pg12) 10> info extract extn출력:
Extract EXT1 Last Started 2024-01-09 11:49 Status RUNNING Checkpoint Lag 00:00:45 (updated 00:00:01 ago) Process ID 3640439 VAM Read Checkpoint 2024-01-09 11:48:52.575833 Replication Slot extn_5d87a7db5e810943 is active with PID 3640450 in database postgres Slot Restart LSN 6/3CBFE2B8 Slot Flush LSN 6/3CBFE2F0 Current Log Position 6/3CBFE2F0 -
최신 Oracle GoldenGate 환경에서 Oracle GoldenGate CDC Extract와 관련된 복제 슬롯 이름을 가져옵니다.
UNREGISTER EXTRACT명령을 실행하여 새 복제 슬롯 이름을 가져옵니다.unregister extract extn출력:
2024-01-09 11:43:37 INFO OGG-25354 The replication slot 'extn_6ec0db7cc27c812' for group 'EXTN' does not exist in database 'postgres'.오류 메시지에서 복제 슬롯 이름을 확인합니다. 이 예에서는
extn_6ec0db7cc27c812입니다. -
해당 소스 PostgreSQL 데이터베이스에서 다음 SQL 질의를 실행합니다(PSQL을 사용할 수 있음).
SELECT * FROM pg_copy_logical_replication_slot('*old-replication-slot*', '*new-replication-slot*');예:
SELECT * FROM pg_copy_logical_replication_slot('extn_5d87a7db5e810943', 'extn_6ec0db7cc27c812'); -
추출 체크포인트 파일, 추적 파일 및 기타 구성 파일을 이전 Oracle GoldenGate 환경에서 새 환경으로 복사해야 합니다.
-
new-replication-slot의 LSN 위치가old-replication-slot와 동일한지 확인하고 확인합니다. -
이전 Oracle GoldenGate 환경에서
UNREGISTER EXTRACT extract_name명령을 실행합니다. 예:UNREGISTER EXTRACT extn -
새 Oracle GoldenGate 환경에서 Extract를 시작하여 변경 레코드 캡처를 재개합니다.