记一次SQL server 2005 到SQL server 2008 数据库迁移

    最近周末完成了一个从SQL server 2005升级到SQL server 2008的升级迁移,其实质是一个服务器迁移的过程。比较复杂的是这个服务器上的复制关系,自身既作为发布服务器,又作为订阅服务器,因此整个迁移同时需保证这些复制关系依旧可用。这个主服务器是供ERP使用,涉及到的模块也比较相对多,因此从迁移到验证整个过程还是比较长。记下本文以示庆贺。

 

一、主要的步骤
    1、检查现有数据库的备份完整性(含发布及订阅数据库)及存在的复制关系  
    2、停止原服务器所有服务(含agent),复制所有需要迁移的数据文件到新服务器
    3、导出原服务器上的发布对象
    4、将数据库附加到新服务器
    5、新建/配置分发服务器
    6、新服务器发布文章(3份)
    7、在新服务器上删除之前的订阅
    8、在发布服务器TK456/KSERP上重新初始化指向新服务器的订阅

 

二、迁移过程中碰到的错误及解决办法
    在新环境配置好了复制之后,收到如下错误提示:
    Invalid column name ‘originator_id’. (Microsoft SQL Server, Error: 207)
    Create replication fails on database which is migrated from SQL Server 2005 with error

    -- Author : Leshami
    -- Blog   : http://blog.csdn.net/leshami

    Error:

    ADDITIONAL INFORMATION:
    An exception occurred while executing a Transact-SQL statement or batch. (Microsoft.SqlServer.ConnectionInfo)
    ——————————
    Invalid column name ‘originator_id’. (Microsoft SQL Server, Error: 207)

    解决方案
    Resolution:
    1.  Add originator_id  column to syspublications table in publication db. Run below query in your publication DB.

        ALTER TABLE dbo.syspublications ADD [originator_id] [int] NULL;

    2. Add a column originator_id  into the view dbo.syspublications inside distribution database

    3. Add a originator_id  column into IHpublications table in distribution database

 

三、现场花絮

 

时间: 2024-10-29 21:07:09

记一次SQL server 2005 到SQL server 2008 数据库迁移的相关文章

你应该升级到SQL Server 2005还是SQL Server 2008?

虽然SQL Server2005已经推出了约3年了,奇怪的是,很多公司仍然没有将SQL Server2000升级.现在这些公司面临着再次作出决定--是跳过升级到SQL Server 2005 还是直接到SQL Server 2008?要作出这个选择并不简单,本文主要讨论有关这一问题必须要考虑的事情. 升级到SQL Server 2005 没有太大的意义,SQL Server 2005是SQL Server的一个版本,在此之后只有一格版本推出.在其他的版本中,你减少了服务器的支持窗口.如果升级到S

如何用SQL SERVER 2005连接SQL SERVER 2008

  原先使用sql server 2005数据库,后来由于工作需要升级为sql server 2008 开发版,升级过程很简单,基本没有什么问题 下面主要说说,如何使用sql server 2005 studio来连接sql server 2008,过程其实很简单,主要注意两点 1) sql server 2005 studio需要打sp4补丁 在关于里面看到management studio 版本号为9.00.50000;如果未打补丁,提示"只能管理sql server 2000和2005数据

SQL Server 2005和SQL Server 2000数据的相互导入

  1) SQL Server 2000数据导入SQL Server 2005 在SQL Server 2000中,把其数据进行备份,在数据库中点击右键,选择"所有任务"下的"备份数据库",弹出一个对话框,然后点击"添加"按钮,输入对应的数据库备份名称,就可以备份数据了.然后在SQL Server 2005中,在数据库中点击右键,点击"还原数据库",在弹出的对话框中,"常规"的选项卡中,"目标数据

SQL Server 2005与sql 2000之间的数据转换方法_mssql2005

2005不论是性能还是安全性都是SQL SERVER2000有所增强,现有不少企业在使用2005,或是有的用户是2000与2005同时使用,那么这中间就涉及到双数据的转换问题: 今天我们就来看一下相关的实现方法: 本人的实现环境介绍: 方法一: 使用分离与附加 该方法适合于将SQL Server 2000中的数据转换到SQL Server2005 ,但反之不行. 例如:现在将SQL SERVER2000中的DUFEI数据库通过分离与附加的方法导入到SQL SERVER 2005中: 步骤1: 在

SQL Server 2005 镜像构建手册(sql2005数据库同步镜像方案)_mssql2005

一. 镜像简介 1. 简介 数据库镜像是将数据库事务处理从一个SQL Server数据库移动到不同SQL Server环境中的另一个SQL Server数据库中.镜像不能直接访问;它只用在错误恢复的情况下才可以被访问. 要进行数据库镜像所需的最小需求包括了两个不同的SQL Server运行环境.主服务器被称为"主机",第二个服务器被称作"备机".主机数据库就是你实际用着的数据库,镜像数据库就是你的数据库的备用拷贝.当事务写入你的基本服务器的时候,他们也同样被传送到并

SQL server 2005的表分区_数据库其它

下面来说下,在SQL SERVER 2005的表分区里,如何对已经存在的有数据的表进行分区,其实道理和之前在http://www.cnblogs.com/jackyrong/archive/2006/11/13/559354.html说到一样,只不过交换下顺序而已,下面依然用例子说明:   依然在c盘的data2目录下建立4个文件夹,用来做4个文件组,然后建立数据库 use masterIF  EXISTS (SELECT name FROM sys.databases WHERE name =

保护 SQL Server 2005 Express Edition Server

express|server 探索 SQL Server Express 与其他 SQL Server 版本之间的差异,也就是它易于使用并易于保护的原因,并且探索如何将现有的 JET 应用程序迁移到更安全稳定的 SQL Server Express. 点击此处阅读全文

SQL Server 2005新特性

一.企业级数据管理 在当今的互联世界中,数据和管理数据的系统必须始终为用户可用且能够确保安全,有了SQL Server 2005,组织内的用户和IT专家将从减少应用程序宕机时间.提高可伸缩性及性能.更紧密的安全控制中获益.SQL Server 2005 也包括了很多新的和改进的功能来帮助企业的IT团队更有效率的工作.SQL Server 2005 包括了几个在企业级数据管理中关键的增强: 易管理 可用性 可伸缩性 安全性 1.易管理 SQL Server 2005 能够更为简单的部署.管理和优化

SQL Server 2005数据库升级要点和技巧

server|技巧|数据|数据库     SQL Server并非微软经常更新的产品,所以当微软要发布一个更新,就值得我们去关注.因此,在从以前的SQL Server 2000或者SQL Server 7升级到最近发布的SQL Server 2005之前,你有必要了解有关这方面的一些更新内容. 一点提醒:SQL Server 2005 从最基本的数据库发展到真正意义上的企业级产品,能够支持最大的数据仓库.虽然老式的SQL Server 版本也很不错与具有可扩展性,但是SQL Server 200