이 항목에서는 SQL Server Management Studio 또는 Transact-SQL을 사용하여 SQL Server 2014의 Oracle 데이터베이스에서 게시를 만드는 방법을 설명합니다.
이 항목에서
시작하기 전 주의 사항:
Oracle 데이터베이스에서 게시를 만들려면 다음을 사용합니다.
시작하기 전에
필수 조건
- 게시를 만들기 전에 Microsoft SQL Server 배포자에 Oracle 소프트웨어를 설치해야 하며 Oracle 데이터베이스를 구성해야 합니다. 자세한 내용은 Oracle 게시자 구성을 참조하세요.
SQL Server Management Studio 사용
새 게시 마법사를 사용하여 Oracle 데이터베이스에서 스냅샷 또는 트랜잭션 게시를 만듭니다.
Oracle 데이터베이스에서 게시를 처음 만들 때는 SQL Server 배포자에서 Oracle 게시자를 식별해야 합니다(동일한 데이터베이스의 후속 게시에 대해서는 이 작업을 수행할 필요가 없음). 새 게시 마법사 또는 배포자 속성 - <배포>자 대화 상자에서 Oracle 게시자를 식별할 수 있습니다. 이 항목에서는 배포자 속성 - <배포자> 대화 상자를 보여 줍니다.
SQL Server 배포자에서 Oracle 게시자를 식별하려면
SQL Server Management Studio에서 Oracle 게시자가 배포자로 사용할 SQL Server 인스턴스에 연결한 다음 서버 노드를 확장합니다.
복제 폴더를 마우스 오른쪽 단추로 클릭한 다음 배포자 속성을 클릭합니다.
배포자 속성 - <배포자> 대화 상자의 게시자 페이지에서 추가를 클릭한 다음 Oracle 게시자 추가를 클릭합니다.
서버에 연결 대화 상자에서 옵션 단추를 클릭합니다.
로그인 탭에서 다음을 수행합니다.
Oracle 데이터베이스 인스턴스 이름을 입력하거나 서버 인스턴스 콤보 상자에서 자세히 찾아보기를 선택합니다.
Oracle 표준 인증(권장) 또는 Windows 인증을 선택합니다.
Windows 인증을 선택하는 경우: Windows 자격 증명을 사용하여 연결을 허용하도록 Oracle 서버를 구성해야 합니다(자세한 내용은 Oracle 설명서 참조). 복제 관리 사용자 스키마에 대해 지정한 것과 동일한 Microsoft Windows 계정으로 현재 로그인해야 합니다.
Oracle 표준 인증을 선택하는 경우 구성 중에 Oracle 게시자에서 만든 복제 관리 사용자 스키마의 로그인 및 암호를 입력합니다.
연결 속성 탭에서 게시자 유형의 게이트웨이 또는 완료를 선택합니다.
완료 옵션은 Oracle 게시에 지원되는 전체 기능 집합을 스냅샷 및 트랜잭션 게시에 제공하도록 설계되었습니다. 게이트웨이 옵션은 복제가 시스템 간의 게이트웨이 역할을 하는 경우 성능을 향상시키기 위한 특정 디자인 최적화를 제공합니다. 동일한 테이블을 여러 트랜잭션 게시에 게시하려는 경우 게이트웨이 옵션을 사용할 수 없습니다. 게이트웨이를 선택하는 경우 테이블은 최대 하나의 트랜잭션 게시와 여러 개의 스냅샷 게시에 나타날 수 있습니다.
연결을 클릭하여 Oracle 게시자와 연결을 만들고 복제용으로 구성합니다. 서버에 연결 대화 상자가 닫히면 배포자 속성 - <배포자> 대화 상자로 돌아갑니다.
비고
네트워크 구성에 문제가 있는 경우 이 시점에서 오류가 발생합니다. Oracle 데이터베이스에 연결하는 데 문제가 발생하는 경우 Oracle 게시자 문제 해결에서 "SQL Server 배포자가 Oracle 데이터베이스 인스턴스에 연결할 수 없습니다." 섹션을 참조하세요.
OK를 클릭합니다.
Oracle 데이터베이스에서 게시를 만들려면
Oracle 게시자가 배포자로 사용할 SQL Server 인스턴스에 연결한 다음 서버 노드를 확장합니다.
복제 폴더를 확장합니다.
로컬 게시 폴더를 마우스 오른쪽 단추로 클릭한 다음 새 Oracle 게시를 클릭합니다.
새 게시 마법사의 Oracle 게시자 페이지에서 Oracle 게시자를 선택합니다. Oracle 게시자가 표시되지 않으면 이전 절차의 단계를 안내하는 Oracle 게시자 추가를 클릭합니다.
게시 유형 페이지에서 스냅샷 게시 또는 트랜잭션 게시를 선택합니다.
아티클 페이지에서 게시할 데이터베이스 개체를 선택합니다.
필요에 따라 테이블을 확장한 다음 하나 이상의 열에 대한 확인란을 선택 취소하여 테이블 열을 필터링합니다. 아티클 속성을 클릭하여 아티클 속성을 보고 수정하고 필요한 경우 대체 데이터 형식 매핑을 지정합니다. 데이터 형식 매핑에 대한 자세한 내용은 Oracle 게시자에 대한 데이터 형식 매핑 지정을 참조하세요.
테이블 행 필터 페이지에서 선택적으로 필터를 적용하여 하나 이상의 테이블에서 데이터의 하위 집합을 게시합니다.
스냅샷 에이전트 페이지에서 모든 개체를 만들고 구독 데이터베이스에 필요한 모든 데이터를 추가한 경우에만 스냅샷 만들기를 즉시 취소합니다.
에이전트 보안 페이지에서 스냅샷 에이전트(모든 게시의 경우) 및 로그 판독기 에이전트(트랜잭션 게시의 경우)에 대한 자격 증명을 지정합니다. 에이전트는 지정한 Microsoft Windows 계정의 컨텍스트를 사용하여 SQL Server 배포자를 실행하고 연결합니다. 에이전트는 복제 관리 사용자 스키마로 지정한 계정의 컨텍스트를 사용하여 Oracle 데이터베이스에 연결합니다. 자세한 내용은 Oracle 게시자 구성을 참조하세요.
각 에이전트에 필요한 권한에 대한 자세한 내용은 복제 에이전트 보안 모델 및 복제 보안 모범 사례를 참조하세요.
마법사 작업 페이지에서 필요에 따라 게시를 스크립딩합니다. 자세한 내용은 복제 스크립팅을 참조하세요.
마법사 완료 페이지에서 발행물의 이름을 지정합니다.
Transact-SQL 사용
Oracle 데이터베이스가 게시자로 구성된 후에는 시스템 저장 프로시저를 사용하여 Microsoft SQL Server 게시자에서와 동일한 방식으로 트랜잭션 또는 스냅샷 게시를 만들 수 있습니다.
Oracle 게시를 생성하려면
Oracle 데이터베이스를 게시자로 구성합니다. 자세한 내용은 Oracle 게시자 구성을 참조하세요.
원격 배포자 없는 경우 원격 배포자를 구성합니다. 자세한 내용은 Configure Publishing and Distribution을 참조하세요.
Oracle 게시자가 사용할 원격 배포자에서 sp_adddistpublisher(Transact-SQL)를 실행합니다. Oracle 데이터베이스 인스턴스의 TNS(투명 네트워크 기판) 이름을 @publisher에 지정하고, @publisher_type에는
ORACLE또는ORACLE GATEWAY값을 지정합니다.SpecifyOracle 게시자에서 원격 SQL Server 배포자로 연결할 때 사용되는 보안 모드는 다음 중 하나입니다.Oracle 표준 인증을 사용하려면, 기본값으로 0을 @security_mode에 지정하고, 구성 중에 Oracle 게시자에서 만든 복제 관리 사용자 스키마의 로그인을 @login에, 그리고 @password에 암호를 지정하십시오.
중요합니다
가능한 경우 런타임 시 사용자에게 보안 자격 증명을 입력하라는 메시지가 표시됩니다. 스크립트 파일에 자격 증명을 저장하는 경우 무단 액세스를 방지하기 위해 파일을 보호해야 합니다.
Windows 인증을 사용하려면 @security_mode 값을 1로 지정합니다.
비고
Windows 인증을 사용하려면 Windows 자격 증명을 사용하여 연결을 허용하도록 Oracle 서버를 구성해야 합니다(자세한 내용은 Oracle 설명서 참조). 복제 관리 사용자 스키마에 대해 지정한 것과 동일한 Microsoft Windows 계정으로 현재 로그인해야 합니다.
게시 데이터베이스에 대한 로그 판독기 에이전트 작업을 만듭니다.
게시된 데이터베이스에 대한 로그 판독기 에이전트 작업이 있는지 확실하지 않은 경우 배포 데이터베이스의 Oracle 게시자가 사용하는 배포자에서 sp_helplogreader_agent(Transact-SQL) 를 실행합니다. @publisher Oracle 게시자의 이름을 지정합니다. 결과 집합이 비어 있으면 로그 판독기 에이전트 작업을 만들어야 합니다.
게시 데이터베이스에 대한 로그 판독기 에이전트 작업이 이미 있는 경우 5단계로 진행합니다.
배포 데이터베이스에서 Oracle 게시자가 사용하는 배포자에서 sp_addlogreader_agent(Transact-SQL)를 실행합니다. 에이전트가 실행되는 Windows 자격 증명으로 @job_login 및 @job_password을 지정합니다.
비고
@job_login 매개 변수는 3단계에서 제공한 로그인과 일치해야 합니다. 게시자 보안 정보를 제공하지 않습니다. 로그 판독기 에이전트는 3단계에서 제공한 보안 정보를 사용하여 게시자에 연결합니다.
배포 데이터베이스의 배포자에서 sp_addpublication(Transact-SQL) 를 실행하여 게시를 만듭니다. 자세한 내용은 게시 만들기를 참조하세요.
배포 데이터베이스의 배포자에서 sp_addpublication_snapshot(Transact-SQL)를 실행합니다. 4단계에서 사용된 @publication 게시 이름과 @job_name 및 @password에 대해 스냅샷 에이전트가 실행되는 Windows 자격 증명을 지정합니다. 게시자에 연결할 때 Oracle 표준 인증을 사용하려면 @publisher_security_mode 값으로 0을 지정하고, Oracle 로그인 정보를 @publisher_login 및 @publisher_password에 입력해야 합니다. 그러면 게시에 대한 스냅샷 에이전트 작업이 만들어집니다.
또한 참조하십시오
Oracle 게시자 구성
데이터 및 데이터베이스 개체 게시
Oracle 게시자에 대한 트랜잭션 세트 작업 구성(Transact-SQL 프로그래밍 복제)
Oracle 게시 개요
Oracle 사용 권한을 부여하는 스크립트