복제 ActiveX 컨트롤 예제
업데이트: 2006년 4월 14일
이 추가 정보 파일에서는 복제 ActiveX 컨트롤 예제를 설치하여 실행하는 방법을 자세히 설명합니다.
시나리오
이 예제에서는 사용자 지정 응용 프로그램에 SQL 배포 및 SQL 병합 컨트롤을 포함하는 방법을 보여 줍니다. 이 예제에서는 게시자, 배포자 및 구독자에 대해 Microsoft SQL Server 2005의 단일 인스턴스를 사용합니다. 이 경우 SQL 배포 컨트롤과 SQL 병합 컨트롤은 배포자에서 실행됩니다. 예제에는 두 개의 예제 프로젝트, 즉 Microsoft Visual C++ 6.0 콘솔 응용 프로그램 및 Microsoft Visual Basic 6.0 폼 기반 응용 프로그램이 포함되어 있습니다. 각 프로젝트는 SQL 배포 컨트롤과 SQL 병합 컨트롤을 모두 보여 줍니다. 또한 이 예제에서는 컨트롤의 콜백 기능을 사용하여 동기화 상태를 모니터링하는 방법을 보여 줍니다. Visual Basic 6.0 응용 프로그램을 사용하여 구독 속성을 변경할 수도 있습니다.
[!참고] 관리 코드 응용 프로그램의 경우 Microsoft.SqlServer.Replication 네임스페이스의 TransSynchronizationAgent 및 MergeSynchronizationAgent 클래스를 사용하십시오. 자세한 내용은 Planning for Replication Programming을 참조하십시오.
언어
- Microsoft Visual Basic 6.0
- Microsoft Visual C++ 6.0
- Transact-SQL
필수 구성 요소
이 예제를 실행하기 전에 다음 소프트웨어가 설치되어 있는지 확인하십시오.
SQL Server 2005(선택적으로 설치된 다음 구성 요소 포함)
- Database Services(복제 포함)
- 클라이언트 연결 구성 요소
- SDK(소프트웨어 개발 키트)
- AdventureWorks 예제 OLTP 데이터베이스. SQL Server 2005에 포함된 이 예제 데이터베이스는 SQL Server Developer Center에서도 다운로드할 수 있습니다.
- SQL Server 2005 예제. SQL Server 2005에 포함된 이러한 예제는 SQL Server Developer Center에서도 다운로드할 수 있습니다. 자세한 내용은 예제 설치를 참조하십시오.
- Visual Studio 6.0, Visual Basic 6.0 또는 Visual C++ 6.0.
[!참고] 이 예제는 64비트(IA64) 플랫폼에서 지원되지 않습니다.
필요한 권한
복제 ActiveX 컨트롤 예제에서는 Windows 인증을 사용합니다. 예제를 구성하고 실행하는 데 필요한 권한은 복제 보안 요구 사항을 기반으로 하며 다음과 같습니다.
- 복제 작업 공유를 만들고, 복제를 구성하고, 게시를 만들고, 초기 스냅숏을 생성하는 InstallReplicationControlSample.bat를 실행하려면 Windows 계정이 sysadmin 고정 서버 역할의 멤버여야 합니다.
- SQL 배포 컨트롤이나 SQL 병합 컨트롤을 시작하여 예제 구독을 동기화하려면 Windows 계정이 배포 및 구독 데이터베이스에서 db_owner 고정 데이터베이스 역할의 멤버여야 합니다.
예제 빌드 및 구성
예제 프로젝트를 빌드하고 복제 토폴로지를 구성하려면 다음을 수행합니다.
- 복제 설치 스크립트를 실행합니다.
- Visual Studio 6.0, Visual Basic 6.0 또는 Visual C++ 6.0을 사용하여 Visual Basic 또는 Visual C++ 버전의 예제를 빌드합니다.
복제 컨트롤 예제를 구성하려면
AdventureWorks 예제 데이터베이스가 설치되어 있고 해당 데이터베이스가 연결되어 있는지 확인합니다. 데이터베이스가 연결되어 있지 않은 경우 SQL Server 온라인 설명서의 AdventureWorks 예제 및 예제 데이터베이스 설치를 참조하십시오.
최신 버전의 SQL Server 데이터베이스 엔진 예제가 설치되었는지 확인합니다. 자세한 내용은 SQL Server 온라인 설명서의 온라인 설명서 다운로드 및 업데이트를 참조하십시오.
SQL Server 에이전트가 실행 중인지 확인합니다. SQL Server Management Studio의 개체 탐색기에서 이 서비스의 상태를 확인하고 서비스를 시작할 수 있습니다.
복제 ActiveX 컨트롤 예제 스크립트의 설치 위치로 이동합니다. 기본 위치는 C:\Program Files\Microsoft SQL Server\90\Samples\Replication\ActiveX\Scripts입니다.
InstallSalesOrdersSample.bat를 실행한 후 로그인 및 암호를 입력하라는 메시지가 표시되면 스냅숏 에이전트 작업이 실행되는 Windows 계정의 로그인(대/소문자를 구분하는 "DOMAIN\login" 형식) 및 암호를 입력합니다. sqlcmd.exe가 호출되면서 다음을 수행하는 CreateAdvWorksSalesOrdersPublication.sql이 실행됩니다.
- 복제가 로컬 서버에서 구성되었는지 확인하고 구성되지 않은 경우 배포 데이터베이스를 사용하여 로컬 배포자가 있는 게시자로 복제를 구성합니다.
- 예제 게시를 삭제한 후 다시 만듭니다.
- 아티클을 게시에 추가합니다.
- 스냅숏 에이전트 작업을 시작하여 게시에 대한 초기 스냅숏을 생성합니다.
- 게시에 대한 구독을 만들어 등록합니다.
Visual C++ 6.0을 사용하여 복제 ActiveX 컨트롤 예제를 빌드하려면
Visual C++ 6.0을 엽니다. 주 메뉴에서 파일, 작업 영역 열기를 차례로 클릭하고 C++ 프로젝트 파일의 위치(기본값은 C:\Program Files\Microsoft SQL Server\90\Samples\Replication\ActiveX\CPP6 디렉터리)로 이동한 다음 distsamp.dsw를 엽니다.
디렉터리 탭의 다음 파일의 디렉터리 표시 드롭다운 목록에서 라이브러리 파일을 클릭한 다음 C:\Program Files\Microsoft SQL Server\90\COM 경로를 추가합니다. 이 경로는 SQL Server 2005가 기본 디렉터리에 설치되었음을 전제로 합니다.
빌드 메뉴에서 distsamp.exe 빌드를 클릭합니다. 결과 distsamp.exe의 기본 위치는 빌드 구성에 따라 C:\Program Files\Microsoft SQL Server\90\Samples\Replication\ActiveX\CPP6\Debug 또는 C:\Program Files\Microsoft SQL Server\90\Samples\Replication\ActiveX\CPP6\Release입니다.
1-3단계를 반복하여 mergsamp.exe를 빌드합니다.
Visual Basic 6.0을 사용하여 복제 ActiveX 컨트롤 예제를 빌드하려면
Visual Basic 6.0을 시작합니다. 주 메뉴에서 파일, 프로젝트 열기를 차례로 클릭하고 C:\Program Files\Microsoft SQL Server\90\Samples\Replication\ActiveX\VB6 디렉터리로 이동한 다음 replsamp.vbp를 엽니다.
프로젝트 메뉴에서 참조를 클릭한 다음 사용 가능한 참조에서 다음 참조가 활성화되었는지 확인합니다.
- Microsoft SQL 배포 컨트롤 9.0
- Microsoft SQL 병합 컨트롤 9.0
- Microsoft SQL 복제 오류 9.0
파일 메뉴에서 ReplSamp.exe 만들기를 클릭합니다. 결과 ReplSamp.exe의 기본 위치는 C:\Program Files\Microsoft SQL Server\90\Samples\Replication\ActiveX\VB6입니다.
예제 실행
예제를 사용하려면 빌드된 실행 파일의 위치로 이동하여 실행 파일을 실행해야 합니다.
Visual C++ 6.0 버전의 복제 ActiveX 컨트롤 예제를 실행하려면
Visual C++ 6.0 버전의 복제 ActiveX 컨트롤 예제에 대한 빌드 위치로 이동합니다. 기본값은 C:\Program Files\Microsoft SQL Server\90\Samples\Replication\ActiveX\CPP6\Debug입니다.
배포 에이전트를 시작하는 distsamp.exe를 실행하여 트랜잭션 게시에 대한 끌어오기 구독을 동기화하고 mergsamp.exe를 실행하여 병합 게시에 대한 끌어오기 구독을 동기화합니다.
Visual Basic 6.0 버전의 복제 ActiveX 컨트롤 예제를 실행하려면
Visual Basic 6.0 버전의 복제 ActiveX 컨트롤 예제에 대한 빌드 위치로 이동합니다. 기본값은 C:\Program Files\Microsoft SQL Server\90\Samples\Replication\ActiveX\VB6입니다.
ReplSamp.exe를 실행합니다.
Replication Controls ActiveX Sample 폼의 Publication type 드롭다운 목록에서 Transactional 또는 Merge를 선택하고 Get Subscription Properties를 클릭합니다. 선택한 구독의 속성이 로드됩니다.
이 응용 프로그램은 로컬 컴퓨터에서 다른 모든 끌어오기 구독을 동기화하는 데 사용될 수 있습니다(옵션). Edit을 클릭하여 구독 속성을 변경한 다음 마치면 Update를 클릭합니다.
Synchronize를 클릭하여 구독을 동기화합니다.
기본 구독 중 하나를 빠르게 동기화하려면 Synchronize 메뉴에서 Transactional 또는 Merge를 클릭합니다(옵션).
예제 제거
다음 절차를 사용하여 복제 ActiveX 컨트롤 예제를 제거할 수 있습니다.
복제 ActiveX 컨트롤 예제를 제거하려면
복제 ActiveX 컨트롤 예제 스크립트의 설치 위치로 이동합니다. 기본값은 C:\Program Files\Microsoft SQL Server\90\Samples\Replication\ActiveX\Scripts입니다.
RemoveReplicationControlSample.bat 배치 파일을 실행합니다.
프롬프트가 나타나면 "Y"를 입력하고 Enter 키를 눌러 게시자의 모든 복제 개체와 구독 데이터베이스의 모든 복제 개체를 제거하고 게시자에서 게시 및 배포를 제거합니다.
중요: 이 스크립트는 모든 복제 인프라를 제거합니다. 이 게시자 또는 배포자를 사용하는 다른 게시를 만든 경우 RemoveReplicationControlSample.bat를 실행하지 마십시오. 대신 예제 게시를 수동으로 제거해야 합니다. 자세한 내용은 SQL Server 온라인 설명서의 방법: 게시 삭제(SQL Server Management Studio) 또는 How to: Delete a Publication (Replication Transact-SQL Programming)를 참조하십시오. AdventureWorksLocal 데이터베이스에서 sp_removedbreplication을 실행합니다.
데이터베이스 컨텍스트를 master 데이터베이스로 변경하고
DROP DATABASE AdventureWorksLocal
을 실행합니다.
설명
예제는 교육용으로만 제공되므로 프로덕션 환경에서 사용하기에 적합하지 않으며 프로덕션 환경에서 테스트되지 않았습니다. Microsoft에서는 이러한 예제에 대해 기술 지원을 제공하지 않습니다. 시스템 관리자의 허가 없이 프로덕션 SQL Server 데이터베이스 또는 보고서 서버에 예제 응용 프로그램 및 어셈블리를 연결하거나 사용해서는 안 됩니다. Microsoft는 이러한 예제에 대한 기술 지원을 제공하지 않습니다. 시스템 관리자의 허가 없이 프로덕션 SQL Server 데이터베이스 또는 보고서 서버에 예제 응용 프로그램 및 어셈블리를 연결하거나 사용해서는 안 됩니다.
참고 항목
개념
관련 자료
Planning for Replication Programming
복제 개발자 정보 센터
도움말 및 정보
변경 내역
릴리스 | 내역 |
---|---|
2006년 4월 14일 |
|