网络编程
位置:首页>> 网络编程>> 数据库>> SQLServer 2005 实现数据库同步备份 过程-结果-分析(2)

SQLServer 2005 实现数据库同步备份 过程-结果-分析(2)

 来源:asp之家 发布时间:2012-07-11 15:56:55 

标签:数据库,同步备份

第一:点开数据库--复制---本地发布---新建订阅--


找出你刚刚发布的那个名称


推送模式和请求模式,如果你不想找麻烦,建议直接使用推送模式


这个是设置你的订阅服务器了,如果不在同一个服务器,那么添加订阅服务器,连接到你的订阅服务器,也就是备份服务器


这个也是,默认就行,直至完成即可

重点说一下复制过程中出现的错误

①:因为主服务器和备用服务器必须在一个局域网内,而且不能用IP连接,必须用主机名连接,那么会出现使用主机名无法连接的情况,可能是因为修改过机器名,使服务器.sql和访问和机器名不一致

使用一下查新,查看是否一致,如果不一致,使用下面代码修改一下即可

select @@servername和 select serverproperty ('servername')

if serverproperty('servername') <> @@servername
begin
declare @server sysname
set @server = @@servername
exec sp_dropserver @server = @server
set @server = cast(serverproperty('servername') as sysname)
exec sp_addserver @server = @server , @local = 'LOCAL'
end

②:如果你使用的是推送模式,那么最大的麻烦将会是读取不到快照,一般错误为:

由于出现操作系统错误 3,进程无法读取文件“D:\DBSYNC\unc\FLOORWEB_FLOORLINK2_TESTFLOOR\20081128174839\ufoCorpAccount_2.pre”。

这个原因是订阅服务器读取不到快照文件夹位置.可能的原因较多,最直接和简单的解决办法是:

将你的快照文件复制一份,复制到订阅服务器上F:\XX,修改一下 某个订阅属性-》快照位置-》“备用文件夹”,快照文件夹-》F:\XX


错误的原因:第一次复制时,订阅服务器需要到主服务器读取快照,进行同步,然后主服务器因为权限问题,无法读取这个快照,所以导致如上错误,将主服务器的快照复制到订阅服务器,第一次直接根据这个快照进行同步就可以解决了

测试的一些结果:仅供参考

1.1:如果在订阅服务器上修改数据(例如update或delete),这个时候主服务器操作后,会报错,直接会停止服务

1.2: 重新初始化订阅的时候,最好使用最新快照,不要使用当前快照,会死人的,因为他会从开始到结束的快照以后的操作全部执行一次,例如,你插入了1000w,删除了1000w,你使用当前快照,可以直接同步了,如果使用以前的,会将这两个步骤全部执行的

1.3:在百万数据插入过程中,内存使用大约150-200mb左右,和平时本来就占用120mb左右的内存相比,可以直接忽视

1.4:速度方面,500w的数据插入,在最后400-500w的时间约为7分钟,插入100w的数据库量,同步大约需要8-10分钟

0
投稿

猜你喜欢

手机版 网络编程 asp之家 www.aspxhome.com