升级复制数据库 2000到2005

注意事项(技术):

1.  如果使用的是 SQL Server 2000,则需要使用 Service Pack 3 (SP3) 或更高版本。

2.  分发服务器的版本可以是高于或等于发布服务器版本的任何版本。

3.  发布服务器的版本可以是低于或等于分发服务器版本的任何版本。

4.  订阅服务器版本取决于发布的类型:

      a) 事务性发布的只读订阅服务器版本可以是两个发布服务器版本中的任何一个版本。

      b) 用于 SQL Server 2005 事务性发布的可更新订阅服务器可以是等于或高于 SQL Server 2000 SP3 的任一版本。

      c) 合并发布的订阅服务器版本可以是低于或等于发布服务器版本的任何版本。
5.  升级到 SQL Server 2005 时,所有使用 SQL Server 身份验证的本地连接都改为使用 Windows 身份验证。

6.  不再支持发布服务器和远程分发服务器之间的可信连接,因为这些连接不要求密码(在 SQL Server 2000 Service Pack 3 之前的版本中,默认情况下使用可信连接)。如果使用远程分发服务器,在升级到 SQL Server 2005 之前,请将可信连接转换成不可信连接(此问题不影响使用本地分发服务器的发布服务器)。

7.  使用升级顾问预先分析升级中可能遇到的问题。

8.  若要确保所有事务均得到处理,请针对包含事务发布的每个数据库执行以下步骤:

     a) 确保针对数据库运行了日志读取器代理。默认情况下,该代理会连续运行。

     b) 停止已发布表上的用户活动。

     c)  日志读取器代理和分发代理支持事务读取和提交操作的批大小。
     d)  执行 sp_replcmds 以验证所有事务是否得到了处理。此过程的结果集应为空。
     e)  执行 sp_replflush 以关闭与 sp_replcmds 的连接。
      f)  将服务器升级到 SQL Server 2005。

     g)  如果在升级后 SQL Server 代理和日志读取器代理没有自动启动,请重新启动它们。

 

 

参考链接:

http://msdn.microsoft.com/zh-cn/library/ms143699(SQL.90).aspx

http://msdn.microsoft.com/zh-cn/library/ms143470(SQL.90).aspx

http://msdn.microsoft.com/zh-cn/library/ms144256(SQL.90).aspx

 

 

注意事项(业务):

升级的过程中对业务的影响。

 

 

升级策略:

一、升级发布服务器

1.  准备需要的各种软件及升级前后的SQL Server 版本及补丁包。

2.  在目标服务器(SQL 2005版本的服务器)上安装SQL 2005及补丁包。

3.  使用备份还原的方法将数据库迁移到目标服务器。预先做完整备份和还原。

4.  数据库离线,停止复制作业,做日志备份,并还原到目标服务器的数据库。

5.  将原主服务器断网下线,将目标服务器更改IP及计算机名。或则更改SQL 连接字符串。

6.  主数据库上线。

 

二、升级分发服务器

1.  准备需要的各种软件及升级前后的SQL Server 版本及补丁包。

2.  有两种升级方式:

      a) 使用新的SQL 2005版本Server作为分发服务器。操作最为简单、安全,只需要在主库升级完成后,重新配置分发即可。

      b) 直接本地升级,需要等待发布服务器升级的第4步开始时,才能执行这一步,而直接升级用时较长,大约30到40分钟,而且存在升级失败的可能,需要制定备用方案。如果使用这种方法升级,在业务允许的情况下,可以在升级前30分钟停止复制分发的作业,预先升级分发服务器。

 

三、配置复制分发

1.  配置分发服务器

2.  配置发布服务器

3.  先配置两个M18的订阅

4.  再配置促销和单品页Center库的订阅

5.  再配置另外两个M18的订阅

6.  最后配置单品页的另外两个订阅

 

升级方案:

根据分发服务器的两种升级方式,制定两种升级方案

 方案一

 一.1 -->  一.2  -->  一.3 -->  一.4  -->  一.5 -->  一.6 ----

                                                                                    ---------->  三.1 -->  三.2  -->  三.3 -->  三.4  -->  三.5 -->  三.6

 二.1 --> 二.2.a ------------------------------------------------

 方案二

 一.1 -->  一.2  -->  一.3 -->  一.4  -->  一.5 -->  一.6 ----

                                                                                    ---------->  三.1 -->  三.2  -->  三.3 -->  三.4  -->  三.5 -->  三.6

 二.1 ---------------------> 二.2.b -----------------------------

 二.2.b的备用方案: 准备另外一台SQL 2005的服务器备用。一旦 (二.2.b)失败,使用这台备用服务器做分发服务器,因为从2000升级到2005的过程是不可逆的,一定确保分发升级成功。

 

回滚策略:

回滚策略一(针对升级方案一)

由于使用的是迁移升级的方法,就算升级分发服务器或升级发布服务器失败,也不会影响到原数据库,只需重新让原服务器上线,启动复制作业即可。

 

 

回滚策略二(针对升级方案二)

由于分发服务器的升级是不可逆的操作,即一定会使用SQL 2005版本的复制分发。

如果发布服务器升级失败,分发服务器直接升级成功,启用原发布服务器,启动复制作业即可。此时,发布为2000,分发为2005.

如果发布服务器升级失败,分发服务器迁移升级成功,需要启用原发布服务器,重新配置复制。此时,发布为2000,分发为2005.

 

 

 升级前准备确认工作:

1.  准备SQL Server 2005 EE 安装包,及其SP3。

2.  准备升级顾问。 在SQL Server 2005 产品光盘的 Servers/redist文件夹下找下可以找到升级顾问及其支持组建。

3.  当前分发库版本  2000 EE SP4

4.  当前发布库版本  2000 EE SP4 

 

 

 升级前的测试:

测试目的:

测试直接升级分发服务器成功情况。成功时,启动复制作业后,复制能否正常工作。

分发成功后,测试直接升级发布服务器。成功后,再次测试迁移升级发布数据。

一、初始化

1.  安装一台虚拟机VMOS03_1当作原分发服务器。安装并打补丁后,创建还原点。然后安装SQL 2000 SP4。

2.  复制出另一台虚拟机VMOS03_2当作原发布服务器。安装SQL 2000 SP4.创建还原点。

3.  建立复制的分发与发布,并从本地数据库订阅。(连续事务型)

二、创建并执行测试脚本

    循环语句每10秒执行一条INSERT语句,包括ID,插入时间

三、模拟升级分发数据

     a) 停止日志读取器代理。

     b) 分发库所有的事务都已同步到订阅库。

     c)  停止分发代理

     d)  停止所有连接用户活动。

     e)  将服务器升级到 SQL Server 2005。

      f)  如果在升级后 SQL Server 代理和日志读取器代理没有自动启动,请重新启动它们。

四、模拟直接升级发布服务器

     a) 确保针对数据库运行了日志读取器代理。默认情况下,该代理会连续运行。

     b) 停止已发布表上的用户活动。

     c)  日志读取器代理和分发代理支持事务读取和提交操作的批大小。
     d)  执行 sp_replcmds 以验证所有事务是否得到了处理。此过程的结果集应为空。
     e)  执行 sp_replflush 以关闭与 sp_replcmds 的连接。
      f)  将服务器升级到 SQL Server 2005。

     g)  如果在升级后 SQL Server 代理和日志读取器代理没有自动启动,请重新启动它们。

五、模拟迁移升级发布服务器

1.  复制出一台虚拟机VMOS03_3,安装SQL 2005 SP3,当作目标发布服务器。

2.  预先完整、差异备份还原

3.  停机,日志备份还原

4.  原主机离线,更改目标发布服务器名称

5.  启动SQL Server,并配置复制发布。

6.  初始化订阅。

7.  检查发布能否正常工作。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值