SQL Server Compact Edition 与SQL Server 2005数据同步之 发布和订阅
一、 前言
在上编文章中《SQL Server Compact Edition 与SQL Server 2005数据同步之请求和推送》中我们谈了如何通过少量的编程方式,实现SQL Server和SQL Server Compact Edition这间的推送和请求,上编文章主要是针对数据(表)进行同步。在这篇文章中我们将介绍利用SQL Server Management Studio进行这两种数据库这间的同步,当然同步不仅仅是包括表了。这篇文章是基于前篇文章的,必需先建立Web同步才行,请参阅《SQL Server Compact Edition 与SQL Server 2005数据同步之请求和推送》中的配置SQL Server Compact的Web同步。
二、 在SQL Server 新建发布
1、 打开SQL Server Management Studio 复制节点下,右键点击,选择新建发布
2、 在新建发布向导页中,单击下一步。
3、 在发布数据库页中,选择要发布的数据库,这里我选择SQLMobile,单击下一步。
4、 在发布类型页中,根据自己的需要选择发布的类型。这里我选择合并发布,单击下一步。
5、 在订阅服务器类型页中,选中SQL Server 2005和SQL Server 2005 Mobile Edition要求快照文件采用字符格式,单击下一步。
6、 在项目页中,选择要发布的表等,这里我选择表,单击下一步。
7、 在项目问题页中,说明一些问题,这里直接单击下一步。
8、 在筛选表行页中,这里我不需要筛选,所以直接单击下一步。
9、 快照代理页,指定何时运行快照代理。选中立即创建快照,计划在以下时间运行快照代理,这里还可以更改代理运行的时间。单击下一步。
10、 在代理安全性页中,设置代理的安全属性。点击安全设置,这里选择安全性,我这里为了方便测试,选择了,在 SQL Server 代理服务账户下运行(这不是我们推荐的最佳安全配置和通过模拟进程账户, 单击确定后单击下一步。
11、 在创建发布页中,选中创建发布,单击下一步。
12、 在完成该向导页中,输入发布名称,这里我输入SQLMobile,单击完成。
13、 在正在创建发布页中,完成发布后,单击关闭,完成发布操作。
三、 新建SQL Server Compact Edition中订阅
1、 打开SQL Server Management Studio 并连接到SQL Server Compact Edition数据库。
2、 在SQL Server Mobile 复制节点下,右键点击,选择新建订阅
3、 打开选择发布页,在发布服务器下拉列表中选择,查找SQL Server 发布服务器,连接到服务器到,就能看到刚才我们发布的SQLMobile发布了。选择SQLMobile发布,单击下一步。
4、 在标识订阅页中输入订阅名称,这里我输入SQLMobile,单击下一步。
5、 在Web服务器身份验证页中,输入指向 Web 服务器上 SQL Server 2005 Mobile Edition 虚拟目录的 URL,这里我们输入上一编文章中的Web虚拟目录(http://192.168.1.3/SQLMobile)。订阅服务器将如何连接到 Web 服务器,这里如果你的Web 服务器是以匿名方式进行连接的,则选择订阅服务器将以匿名方式进行连接。不需要用户名和密码否则选择将对订阅服务器进行身份验证。请使用以下用户名和密码,并输入用户名和密码,单击下一步。
6、 在SQL Server 身份验证页中,因为SQL Server使用了用户名和密码,所以选择使用以下 SQL Server 用户名和密码进行 SQL Server 身份验证并输入用户名和密码,单击下一步。
7、 在完成该向导页中,展示了刚才输入的一些信息和开发中应用的代码供参考。单击完成以完成操作。
四、 错误汇总
1、 如果出现以下情况,请确认你的IIS登陆方式,如果不行,请选择集成 Windows 身份验证并不选匿名访问,当然在新建SQL Server Compact Edition中订阅中的第6步也要相应的个性,选择将对订阅服务器进行身份验证。请使用以下用户名和密码,并输入用户名和密码。
2、 Herder information is either corrupted or missing.
这种情况可以是你的代理没有启动,请到你的发布中,点击右键,选择查看代理状态,启动即可。