다음을 통해 공유


Oracle 게시 개요

적용 대상: SQL Server

Microsoft SQL Server 2005(9.x)부터 Oracle 버전 9i부터 복제 토폴로지에서 Oracle 게시자를 포함할 수 있습니다. 게시 서버는 Oracle 지원 하드웨어 및 운영 체제에 배포할 수 있습니다. 이 기능은 잘 설정된 SQL Server 스냅샷 복제 및 트랜잭션 복제의 토대 위에 구축되었으므로 비슷한 성능과 유용성을 제공합니다.

SQL Server는 트랜잭션 및 스냅샷 복제에 대해 다음과 같은 다른 유형의 시나리오를 지원합니다.

  • SQL Server에서 비 SQL Server 구독자에게 데이터 게시

  • Oracle과 오가는 데이터를 게시하는 데는 다음과 같은 제한 사항이 있습니다.

시나리오 2016 이하 2017 이상
Oracle에서 복제 Oracle 10g 이하만 지원 Oracle 10g 이하만 지원
Oracle에 복제 Oracle 12c까지 지원되지 않음

SQL Server가 아닌 구독자에 대한 다른 유형의 복제는 더 이상 사용되지 않습니다. Oracle 게시는 더 이상 사용되지 않습니다. 데이터를 이동하려면 변경 데이터 캡처 및 SSIS를 사용하여 솔루션을 만듭니다.

Oracle에 대한 스냅샷 복제

Oracle 스냅샷 게시는 SQL Server 스냅샷 게시와 유사한 방식으로 구현됩니다. Oracle 게시에 대해 스냅샷 에이전트가 실행되면 해당 에이전트는 Oracle 게시자에 연결한 다음 게시의 각 테이블을 처리합니다. 각 테이블을 처리할 때 에이전트는 테이블 행을 검색하고 스키마 스크립트를 만든 다음 게시의 스냅샷 공유에 저장됩니다. 스냅샷 에이전트가 실행될 때마다 전체 데이터 집합이 생성되므로 트랜잭션 복제의 경우처럼 Oracle 테이블에 변경 내용 추적 트리거가 추가되지 않습니다. 스냅샷 복제는 게시 시스템에 미치는 영향을 최소화하면서 데이터를 마이그레이션하는 편리한 방법을 제공합니다.

Oracle에 대한 트랜잭션 복제

Oracle 트랜잭션 게시는 SQL Server의 트랜잭션 게시 아키텍처를 사용하여 구현됩니다. 그러나 변경 내용은 Oracle 데이터베이스 및 로그 판독기 에이전트의 데이터베이스 트리거 조합을 사용하여 추적됩니다. Oracle 트랜잭션 게시물 구독자는 스냅샷 복제를 사용하여 자동으로 초기화됩니다. 이후 변경 내용은 로그 판독기 에이전트를 통해 수행될 때 추적되고 구독자에게 전달됩니다.

Oracle 게시물을 만들면 Oracle 데이터베이스 내에서 게시된 각 테이블에 대해 트리거 및 추적 테이블이 만들어집니다. 게시된 테이블에 대한 데이터가 변경되면 테이블의 데이터베이스 트리거가 실행되고 수정된 각 행의 복제 추적 테이블에 정보가 삽입됩니다. 그런 다음 SQL Server 배포자의 로그 판독기 에이전트는 추적 테이블에서 배포자의 배포 데이터베이스로 데이터 변경 정보를 이동합니다. 마지막으로, 표준 트랜잭션 복제에서와 같이 배포 에이전트 변경 내용을 배포자에서 구독자로 이동합니다.