据说2005的一个很令人兴奋的地方就是复制,呵呵,可惜,俺们现在才开始学习这个。

复制涉及一些概念:

发布服务器:发布服务器就是一个系统,提供被复制的数据,创建发布就是向其他系统发布数据。

分发服务器:包含分发数据库和存储元数据、历史数据等其他信息的服务器。可以和发布服务器是同一台服务器,也可以不是。推荐的做法是设置用于复制的专用分发服务器(呵呵),必须为每台发布服务器设置一台分发服务器。

订阅服务器:存储复制数据和接收更新的数据库服务器。

 

SQL server 2005的复制(一)_职场

这是我网上截下来的一张图,比较形象。

复制的类型

事务复制:事务复制是将复制启用后的所有发布服务器上发布的内容在修改时传给订阅服务器,数据更改将按照其在发布服务器上发生的顺序和事务边界,应用于订阅服务器,在发布内部可以保证事务的一致性。

快照复制:快照复制将数据以特定时刻的瞬时状态分发,而不监视对数据的更新。发生同步时,将生成完整的快照并将其发送到订阅服务器。

合并复制:合并复制通常是从发布数据库对象和数据的快照开始,并且用触发器跟踪在发布服务器和订阅服务器上所做的后续数据更改和架构修改。订阅服务器在连接到网络时将与发布服务器进行同步,并交换自上次同步以来发布服务器和订阅服务器之间发生更改的所有行。

订阅方式:

推送订阅:发布服务器负责为订阅服务器提供更新,复制的初始化和计划是在发布服务器上进行的,在需要进行集中化管理时非常有用。

请求订阅:请求订阅允许订阅服务器指定更改传播时间,或者进行定期更新,初始化由订阅服务器进行,这对于存在大量订阅服务器且这些服务器不能总是连接到网络时非常有用。

配置复制

(1)配置分发服务器

(2)配置发布

(3)配置订阅服务器

配置分发服务器:

 

SQL server 2005的复制(一)_SQL server 2005的复制(一_02

 

我的测试是在一台服务器上的两个实例进行的,ghost实例上创建发布,分发服务器和发布服务器同一实例。

 

SQL server 2005的复制(一)_SQL server 2005的复制(一_03

 

选择快照文件夹的存放位置,微软建议用共享文件夹。

SQL server 2005的复制(一)_职场_04

 

可以配置分发数据库的存放位置。

SQL server 2005的复制(一)_数据库_05

SQL server 2005的复制(一)_职场_06

SQL server 2005的复制(一)_数据库_07

 

到这里分发就创建完毕了。接下来就可以配置发布了。

注意:发布只能在一个数据库中创建,确定这个数据库是完整恢复模式,如果发布的对象是表的话,请确认发布的表必须具有主键,否则不能发布。

SQL server 2005的复制(一)_职场_08

 

选择要发布的数据库,发布只能在一个数据库中进行。