1,用发布与订阅方案做SQL2000的热备方便吗?备份肯定没问题,用事务复制推的机制,很容易把主服务器的数据退送到备服务器。但若主服务器出问题了呢?备服务器如何确定数据已经还原到了主服务器触发事故之前的状态?SQL2000当订阅服务器时,我们必须要将其外键去除,不然会失败;另外,系统会自动将备服务器的DEFAULT值去除掉;另外,对于自增列,选择使用NOT FOR REPLICATION比较好,这样复制插入数据时忽略自增;另外,建立复制时会将备服务器的主键改成同名的索引,因此最好先把备服务器的主键去除。由此,备服务器切换成主服务器时必须要做的工作有:去除强制订阅,备服务器增加主键,备服务器增加外键,备服务器增加默认值,备服务器自增列种子RESEED。此方案是不是过于麻烦?2,使用LogShipping实现定时数据备份+发布与订阅,主服务器备份后,将备份日志传送给热备数据库,此时采集代理同时将数据发布到分发服务器,让分发服务器将数据发送到订阅服务器,从而确保备份服务器和订阅服务器的数据一致。主服务器出问题时,主备数据库角色互换,此时对订阅服务器来说,备份服务器就是原来的主服务器。SQL联机丛书说主备数据库切换需要经过三个步骤:日志传送支持角色转变,而角色转变需要下列基本步骤:
1)创建数据转换服务 (DTS) 包,将当前的主服务器复制到当前的辅助服务器。2)创建作业,从当前的主服务器备份 syslogins,并将文件复制到当前的辅助服务器的某个目录下,然后执行该 DTS 包。3)执行角色更改,使当前的辅助服务器成为当前的主服务器。 首先我无法确认他说的第一步我执行成功了没有,因为我用了2个虚拟机,用户都一样的。但是我在做主备数据库角色切换的时候,它需要主服务器独占,这点很难保证,应用系统会疯狂的自动连接的,除非将数据库设置成单用户模式。第二种备份方案我没有试通过。不知道高手们用过这种方法没有?或者你们通常是如何实现的?用第三方软件的就不用说了。
1)创建数据转换服务 (DTS) 包,将当前的主服务器复制到当前的辅助服务器。2)创建作业,从当前的主服务器备份 syslogins,并将文件复制到当前的辅助服务器的某个目录下,然后执行该 DTS 包。3)执行角色更改,使当前的辅助服务器成为当前的主服务器。 首先我无法确认他说的第一步我执行成功了没有,因为我用了2个虚拟机,用户都一样的。但是我在做主备数据库角色切换的时候,它需要主服务器独占,这点很难保证,应用系统会疯狂的自动连接的,除非将数据库设置成单用户模式。第二种备份方案我没有试通过。不知道高手们用过这种方法没有?或者你们通常是如何实现的?用第三方软件的就不用说了。
解决方案 »
- 财务帐簿查询借贷SQL语句查询
- 下列情况应该分别是什么答案
- 求教一条SQL语句
- 在B表里有多条数据对应A表里一条数据,现在我要选出A表里所有数据,同时B表里和A表里相关的数据也选出来,但只能在B表里选时间最大
- 超级纠结的sql查询 SOS 在线等待
- 问个sql server 改sa用户名的问题 请大虾们帮忙
- access语句------很奇怪相信很多人都碰到过!---------------很奇怪!大家看看!
- VC MFC程序 用ADOX怎样动态创建SQLServer数据库并动态创建表
- 问一个alter写法
- 如何在MSSQL中取ORACLE数据中的数据。
- 如何禁止 EXEC 执行
- 查询不重复记录的问题
一个比较重要的就是两台服务器之间的网络情况一定要好,再者主服务器压力不能过大.log shipping 可以15分钟备一次日志,或是更少的时间.这样将风险降到最低.发布订阅有一些限制,用来做灾备的话,个人认为不如log shipping.还有就是镜像,不过好像在sql 2005才支持,镜像比以上两种更适用于作灾备.
三步:
主服务器备日志、辅助服务器copy过日志文件来、然后从辅助服务器还原.
http://www.ku5ai.cn
是个不错的论坛!
大家可以去那探讨问题,一定能找到解决的办法。
有很多高手哦!!
http://www.ku5ai.cn
是个不错的论坛!
大家可以去那探讨问题,一定能找到解决的办法。
有很多高手哦!!