上一篇:一步步教你配置SQL SERVER合并复制(三)配置Distributor
为了让已订阅数据库的设备能够更好地去联系Distributor,你必须在数据库中添加一个域用户,让设备能够通过这个用户的权限来访问发布数据库。
打开SQL SERVER资源管理器,展开Security这个选项,右键点击Login文件夹,选择New Login...
在Login-New这个页面,选择Windows Authentication单选按钮,然后点击Search.
在弹出来的Select User or Group这个页面,点击Locations,展开Entire Directory节点,选择syncdomain.internal然后点击OK.在Enter the object name to select这个文本框中输入syncuser,然后点击Check Names按钮,然后点击OK.然后就将syncdomain.internal域中的syncuser用户添加到新用户列表中去了。
在Login-New这个页面左边的导航中选择User Mapping.在右边的复选框中选上刚刚Publication时的数据库distribution,然后点击OK。
如何取消一个Distributor或者Publisher?
可能有些情况下,你想要去移除Distribution Database或者是一个发布复制的数据库,手工删除当然是一个方法,不过这里有一个更彻底的方法,并且它很简单。打开SQL SERVER资源管理器,右键点击Replication然后选择Disable Publishing and Distribution如下图所示.
弹出来的第一个页面是一个向导页面,直接点击Next.
在Disable Publishing这个页面,你需要选择Yes,disable publishing on this server 单选按钮去删除这个发布数据库,删除所有的复制数据库,并且删除所有的订阅.
在Confirm Disabling Remote Publishers这个界面将会是一个警告页面,警告你将以下服务器的复制订阅都将删除.
接下来的页面是一个确认页面以及选择是否要生成一个脚本文件方便日后的重复工作.
如果你选择了生成脚本文件的话,你将看到下面这个界面,它是用于让你选择这个脚本文件存放的地点以及文件的格式.
好了,我们的工作终于快完成了,下面是一个完成确认信息,确保这些信息与你所填的信息一致.
当你看到以下界面都是success时就说明你的工作已经做好了。
Name Pies
当你把合并复制的安全这块做好时,你就马上要完成SQL SERVER Distributor的启动和运行了,但你还差最后一步,即使我们在TCP/IP这个环境,SQL SERVER 依然需要启动Named Pipes去完成合并复制的一些任务。启动SQL SERVER Configuration Manager,展开SQL SERVER 2005 Network Configuration然后点击Protocols for MSSQLSERVER,在右边的列表项中右击Named Pipes然后选择Enabled如下图所示.
保持运行:
当你的Distributor建立起来后,你必须让它保持高速的运行不管它是第一次同步还是第五十次同步,这里有一个既简单又实用的诀窍,那就是rebuilding Distribution 数据库下的索引,因为这些索引会很经常使用,因此它的一些碎片会减慢服务器同步的速度。你将会在SQL SERVER下的Databases|System Databases|distribution|Tables|System Tables这个目录下找到以下的表:
•MSmerge_agents
•MSmerge_articlehistory
•MSmerge_indentity_range_allocations(如果你在发布复制的数据库的表中包含自动增长的列,就会有这张表)
•MSmerge_sessions
•MSmerge_subscriptions
•MSrepl_errors
•MSreplication_monitordata
•MSsnapshot_history
你可以手动来rebuild这些表的索引,张开这几张表,右键点击Indexes,选择Rebuild All,然后点击OK在这个页面的末尾。这项任务我的建议是一星期进行一次,当然你也可以在SQL SERVER 中新建一个作业来完成这项任务。
作者注(注意不是译者注哦):
在我的经验中,将Distributor与Publisher分别发布在不同的服务器上是提高性能的一个很好的方法,你想下在一个服务下下,CPU、内存、硬盘只为Publisher服务的话,Publisher就能更好地去处理跟设备数据库之间的合并复制。
因为SQLSERVER将会在在磁盘上建立数量庞大的文件,所以为了能够更好的文件传输速度,你必须合理分配服务器的磁盘空间,最好它们都能分开存放,比方说系统装在C盘,SQL SERVER 装在D盘,Distributor数据库文件存放在E盘,Distributor日志文件存放在F盘,快照文件夹存放在G盘。
当你的系统渐渐庞大的时候我的建议是SQLSERVER跟WINDOWS 2003的服务器的内存至少16G,并且它至少能支持64位的系统。
为了你同步系统的安全着想,当你按照配置向导配置下来的时候,不用使用sa这个SQL SERVER账户,将访问SQL SERVER和IIS的加入你的域中去,这样能极大地提高同步系统的安全性。
下一篇:一步步教你配置SQL SERVER合并复制(五)配置Publisher(上)
为了让已订阅数据库的设备能够更好地去联系Distributor,你必须在数据库中添加一个域用户,让设备能够通过这个用户的权限来访问发布数据库。
打开SQL SERVER资源管理器,展开Security这个选项,右键点击Login文件夹,选择New Login...
在Login-New这个页面,选择Windows Authentication单选按钮,然后点击Search.
在弹出来的Select User or Group这个页面,点击Locations,展开Entire Directory节点,选择syncdomain.internal然后点击OK.在Enter the object name to select这个文本框中输入syncuser,然后点击Check Names按钮,然后点击OK.然后就将syncdomain.internal域中的syncuser用户添加到新用户列表中去了。
在Login-New这个页面左边的导航中选择User Mapping.在右边的复选框中选上刚刚Publication时的数据库distribution,然后点击OK。
如何取消一个Distributor或者Publisher?
可能有些情况下,你想要去移除Distribution Database或者是一个发布复制的数据库,手工删除当然是一个方法,不过这里有一个更彻底的方法,并且它很简单。打开SQL SERVER资源管理器,右键点击Replication然后选择Disable Publishing and Distribution如下图所示.
弹出来的第一个页面是一个向导页面,直接点击Next.
在Disable Publishing这个页面,你需要选择Yes,disable publishing on this server 单选按钮去删除这个发布数据库,删除所有的复制数据库,并且删除所有的订阅.
在Confirm Disabling Remote Publishers这个界面将会是一个警告页面,警告你将以下服务器的复制订阅都将删除.
接下来的页面是一个确认页面以及选择是否要生成一个脚本文件方便日后的重复工作.
如果你选择了生成脚本文件的话,你将看到下面这个界面,它是用于让你选择这个脚本文件存放的地点以及文件的格式.
好了,我们的工作终于快完成了,下面是一个完成确认信息,确保这些信息与你所填的信息一致.
当你看到以下界面都是success时就说明你的工作已经做好了。
Name Pies
当你把合并复制的安全这块做好时,你就马上要完成SQL SERVER Distributor的启动和运行了,但你还差最后一步,即使我们在TCP/IP这个环境,SQL SERVER 依然需要启动Named Pipes去完成合并复制的一些任务。启动SQL SERVER Configuration Manager,展开SQL SERVER 2005 Network Configuration然后点击Protocols for MSSQLSERVER,在右边的列表项中右击Named Pipes然后选择Enabled如下图所示.
保持运行:
当你的Distributor建立起来后,你必须让它保持高速的运行不管它是第一次同步还是第五十次同步,这里有一个既简单又实用的诀窍,那就是rebuilding Distribution 数据库下的索引,因为这些索引会很经常使用,因此它的一些碎片会减慢服务器同步的速度。你将会在SQL SERVER下的Databases|System Databases|distribution|Tables|System Tables这个目录下找到以下的表:
•MSmerge_agents
•MSmerge_articlehistory
•MSmerge_indentity_range_allocations(如果你在发布复制的数据库的表中包含自动增长的列,就会有这张表)
•MSmerge_sessions
•MSmerge_subscriptions
•MSrepl_errors
•MSreplication_monitordata
•MSsnapshot_history
你可以手动来rebuild这些表的索引,张开这几张表,右键点击Indexes,选择Rebuild All,然后点击OK在这个页面的末尾。这项任务我的建议是一星期进行一次,当然你也可以在SQL SERVER 中新建一个作业来完成这项任务。
作者注(注意不是译者注哦):
在我的经验中,将Distributor与Publisher分别发布在不同的服务器上是提高性能的一个很好的方法,你想下在一个服务下下,CPU、内存、硬盘只为Publisher服务的话,Publisher就能更好地去处理跟设备数据库之间的合并复制。
因为SQLSERVER将会在在磁盘上建立数量庞大的文件,所以为了能够更好的文件传输速度,你必须合理分配服务器的磁盘空间,最好它们都能分开存放,比方说系统装在C盘,SQL SERVER 装在D盘,Distributor数据库文件存放在E盘,Distributor日志文件存放在F盘,快照文件夹存放在G盘。
当你的系统渐渐庞大的时候我的建议是SQLSERVER跟WINDOWS 2003的服务器的内存至少16G,并且它至少能支持64位的系统。
为了你同步系统的安全着想,当你按照配置向导配置下来的时候,不用使用sa这个SQL SERVER账户,将访问SQL SERVER和IIS的加入你的域中去,这样能极大地提高同步系统的安全性。
下一篇:一步步教你配置SQL SERVER合并复制(五)配置Publisher(上)