简单的说,复制是获取一个或多个数据库的过程,它系统的针对出入不同数据库的数据,提供基于规则的拷贝机制。
复制分为三种角色,
1,发布服务器
发布服务器可以被看成是源数据库。
2 ,分发服务器
分发数据库针对更改而承担类似某些票据交换所的工作,他是一个特殊的分发数据库,用于对更改进行跟踪,同时也跟踪哪些订阅服务器已经收到了这些更改。除此之外,它还跟踪任何同步过程的结果,并知道发生了哪些必须解决的冲突。
3,订阅服务器
任何参与到于复制发布过程的数据库,订阅服务器并不只能接受数据,它还可以传播数据。订阅服务器可以请求订阅,也可以推送订阅。
请求订阅:由订阅服务器来决定什么时候去更新数据。
推送订阅:由发布数据库决定什么时候向订阅服务发生更新数据。
2,SQLServer2005与SQLServer2008数据库同步
操作步骤大致如下:
配置 SQLServer2005 发布数据库
1,以windows账户登录,确保SQLServer代理已经打开,新建数据库[TestFabu]
2,在[复制]节点下,新建发布.下一步 选择数据库[TestFabu]
3,这里选择快照发布,下一步,选择需要同步的表结构以及存储过程等等。
这里设置sa账户,只要有权限操作数据库的账户就可以。
完成之后,在这个发布上右键属性
我们选择FTP,应为我这两个数据库没有在同一台电脑上。
设置默认位置
保证该默认位置ftp可访问,并且有读取的权限,将ftp定位到根目录。
发布服务器配置完成
配置订阅服务器
同样以windows账户登录.
这里是不允许通过IP访问的,在host文件里面做一个映射,然后通过名称访问.
这里我们用上文提到的请求订阅。
链接发布服务器的sa数据库。
这里可以按计划来请求订阅。
订阅成功。
同事查看属性里要以FTP访问。
3.总结
这样我们就实现了SQLServer2005与SQLServer2008的数据库同步,这里如果要实时同步数据的话最好用事务复制,快照复制适合间隔性的同步。