다음을 통해 공유


Oracle 게시자에 대한 관리 고려 사항

적용 대상: SQL Server

Oracle 게시자를 구성하고 복제 변경 내용 추적 메커니즘을 설정한 후에도 Oracle 데이터베이스 시스템의 관리자는 표준 Oracle 데이터베이스 유틸리티를 사용하고 일반 시스템 관리 태스크를 수행할 수 있습니다. 그러나 특정 관리 태스크 수행 시 게시된 데이터에 미치는 영향을 알아두어야 합니다.

복제를 위해 게시된 열을 삭제하거나 수정하거나 복제 개체를 삭제하거나 수정하는 경우를 제외하고 이러한 고려 사항은 스냅샷 게시에 적용되지 않습니다.

데이터 가져오기 및 로드

트리거는 Oracle의 트랜잭션 게시에 대한 변경 내용 추적에 사용됩니다. 게시된 테이블의 변경 내용은 업데이트, 삽입 또는 삭제가 발생할 때 복제 트리거가 발생하는 경우에만 구독자에 복제할 수 있습니다. Oracle 유틸리티 Oracle Import 및 SQL*Loader에는 이러한 유틸리티를 사용하여 행이 복제된 테이블에 삽입될 때 트리거가 발생하는지 여부에 영향을 주는 옵션이 있습니다.

Oracle 가져오기

Oracle 가져오기를 사용하면 옵션 ignore를 'y' 또는 'n'으로 설정할 수 있습니다(기본값은 'n'). ignore가 'n'으로 설정되면 가져오기 중에 테이블이 삭제되고 다시 만들어집니다. 이렇게 하면 복제 트리거가 제거되고 복제가 비활성화됩니다. ignore 를 'y'로 설정하면 가져오기 작업에서 행을 기존 테이블로 로드하려고 하며 이로 인해 복제 트리거가 발생됩니다. 그러므로 가져오기 도구를 사용하여 복제된 테이블로 가져올 때는 ignore 를 'y'로 설정해야 합니다.

SQL*Loader

SQL*Loader에서는 direct 옵션을 'true' 또는 'false'로 설정할 수 있습니다(기본값은 'false'). direct 를 'false'로 설정하면 기존 INSERT 문을 사용하여 행이 삽입되고 이로 인해 복제 트리거가 발생됩니다. direct가 'true'로 설정되면 부하가 최적화되고 트리거가 발생하지 않습니다. 따라서 SQL*Loader 도구를 사용하여 복제된 테이블에 로드할 때 direct가 'false'로 설정되어 있는지 확인합니다.

게시된 개체 변경

다음 작업에는 특별한 고려 사항이 필요하지 않습니다.

  • 게시된 테이블에서 인덱스 다시 작성

  • 게시된 테이블에 사용자 트리거 추가

다음 동작을 수행하려면 게시된 테이블에서의 모든 활동을 중지해야 합니다.

  • 게시된 테이블 이동

다음 동작을 수행하려면 게시를 삭제하고 작업을 수행한 다음 게시를 다시 만들어야 합니다.

  • 게시된 테이블 자르기

  • 게시된 테이블 이름 변경

  • 게시된 테이블에 열 추가

  • 복제를 위해 게시된 열을 삭제 또는 수정

  • 기록되지 않은 작업 수행

복제 개체 삭제 또는 수정

게시자 수준의 추적 테이블, 트리거, 시퀀스 또는 저장 프로시저를 삭제하거나 수정할 경우 게시자를 삭제하고 다시 구성해야 합니다. 이러한 개체의 일부 목록은 Oracle 게시자에서 만든 개체를 참조하세요.

게시자를 삭제하고 다시 구성하는 방법에 대한 자세한 내용은 Oracle 게시자 문제 해결 항목에서 "게시자를 다시 구성해야 하는 변경 내용" 섹션을 참조하세요.