数据库同步方式有很多种,这里以SQL Server 2008 为例利用数据库发布和订阅的方式来演示数据库的同步技术。由于就有一台计算机,只能在同一个服务器下两个不同的数据库之间进行数据同步进行演示。

发布订阅分为两个步骤:1、发布。2订阅。首先在数据源数据库服务器上对需要同步的数据进行发布,然后在目标数据库服务器上对上述发布进行订阅。发布可以发布一张表的部分数据,也可以对整张表进行发布,还可以是存储过程等等。下面来演示一下这两个操作过程:

发布 

注意:发布的时候SQL Server 需要有实际的服务器名称才能连接到服务器。不支持通过服务器别名、IP地址或者其他备用名称进行连接。因此如果当前的SQL Server的连接是IP地址的话,最好断开连接,以实际的服务器名称重新进行登录。

发布:

1、展开SQL Server 2008 服务器下的 【复制】 节点,会发现有【本地发布】和【本地订阅】两个节点,右击【本地发布】节点,选择【新建发布】: 

SQL server 2008 发布订阅 sqlserver发布订阅原理_服务器

SQL server 2008 发布订阅 sqlserver发布订阅原理_服务器_02

2、如果服务器第一次进行发布设置,会弹出【发布向导】对话框,设置【分发服务器】,选择第一个:

SQL server 2008 发布订阅 sqlserver发布订阅原理_服务器_03

 3、点击【下一步】选择需要发布的数据库:

SQL server 2008 发布订阅 sqlserver发布订阅原理_oracle_04

4、点击【下一步】,选择“事物发布”:

SQL server 2008 发布订阅 sqlserver发布订阅原理_数据库_05

SQL server 2008 发布订阅 sqlserver发布订阅原理_Server_06

5、点击【下一步】,选择发布的数据库的表:

SQL server 2008 发布订阅 sqlserver发布订阅原理_oracle_07

6、点击【下一步】,如果需要有数据筛选项在这个页面进行添加筛选项,如果没有点击【下一步】

SQL server 2008 发布订阅 sqlserver发布订阅原理_oracle_08

7、点击【下一步】,选择立即创建快照并使快照保持可用状态,以初始化订阅:

SQL server 2008 发布订阅 sqlserver发布订阅原理_服务器_09

8、点击【下一步】,进入【安全设置】:

SQL server 2008 发布订阅 sqlserver发布订阅原理_数据库_10

 9、按照下图进行选择,输入发布数据库的用户名,密码即可:

SQL server 2008 发布订阅 sqlserver发布订阅原理_数据库_11

10、点击【下一步】:

SQL server 2008 发布订阅 sqlserver发布订阅原理_服务器_12

11、输入发布名称,点击【完成】按钮即可创建发布:

SQL server 2008 发布订阅 sqlserver发布订阅原理_服务器_13

订阅

发布完成后,我们要进行订阅,过程如下:

1、右键点击【本地订阅】节点,打开,【新建订阅】对话框:

SQL server 2008 发布订阅 sqlserver发布订阅原理_服务器_14

SQL server 2008 发布订阅 sqlserver发布订阅原理_Server_15

2、然后点击【下一步】:

SQL server 2008 发布订阅 sqlserver发布订阅原理_数据库_16

SQL server 2008 发布订阅 sqlserver发布订阅原理_服务器_17

3、选择查找Sql Server发布服务器,点击【下一步】:

SQL server 2008 发布订阅 sqlserver发布订阅原理_服务器_18

SQL server 2008 发布订阅 sqlserver发布订阅原理_oracle_19

4、登录发布服务器,服务器名称必须输入发布服务器名称,具体发布服务器名称可以在发布服务器上查看,必须用Sql Server身份验证,然后点击【链接】:

SQL server 2008 发布订阅 sqlserver发布订阅原理_数据库_20

SQL server 2008 发布订阅 sqlserver发布订阅原理_oracle_21

5、链接成功后,选择之前在发布服务器上创建好的发布:

SQL server 2008 发布订阅 sqlserver发布订阅原理_Server_22

SQL server 2008 发布订阅 sqlserver发布订阅原理_服务器_23

6、点击【下一步】选择第一项

SQL server 2008 发布订阅 sqlserver发布订阅原理_数据库_24

SQL server 2008 发布订阅 sqlserver发布订阅原理_数据库_25

7、点击【下一步】:

SQL server 2008 发布订阅 sqlserver发布订阅原理_Server_26

SQL server 2008 发布订阅 sqlserver发布订阅原理_oracle_27

8、点击下图按钮,填写分发服务器链接方式:

SQL server 2008 发布订阅 sqlserver发布订阅原理_Server_28

SQL server 2008 发布订阅 sqlserver发布订阅原理_服务器_29

9、按照下图来选择相应项,填入订阅服务器数据库用户名、密码,点击【确定】:

SQL server 2008 发布订阅 sqlserver发布订阅原理_数据库_30

SQL server 2008 发布订阅 sqlserver发布订阅原理_oracle_31

10、点击【下一步】:

SQL server 2008 发布订阅 sqlserver发布订阅原理_服务器_32

SQL server 2008 发布订阅 sqlserver发布订阅原理_Server_33

11、点击【下一步】:

SQL server 2008 发布订阅 sqlserver发布订阅原理_oracle_34

12、点击【完成】,进行订阅创建,创建过程会清除订阅数据库内所有数据,会把发布数据库的所有历史数据同步到订阅的数据库内,如果订阅数据库有新增数据事物,会同步更新到订阅的数据库内,来保证数据的实时备份。

SQL server 2008 发布订阅 sqlserver发布订阅原理_数据库_35

SQL server 2008 发布订阅 sqlserver发布订阅原理_oracle_36