微软BI开拓者SQL Server数据库专区SQL Server管理 大家来讨论讨论从SQL2000升级或迁移到SQL2005的方法、步骤以及应注意的事项

1  /  2  页   12 跳转 查看:1292

大家来讨论讨论从SQL2000升级或迁移到SQL2005的方法、步骤以及应注意的事项

大家来讨论讨论从SQL2000升级或迁移到SQL2005的方法、步骤以及应注意的事项

提醒一下,考虑online和offline各自的情形
虽有智慧,不如乘势;虽有鎡基,不如待时。
君子学以聚之,问以辨之,宽以居之,仁以行之。
独学而无友,则孤陋而寡闻。
 

回复:大家来讨论讨论从SQL2000升级或迁移到SQL2005的方法、步骤以及应注意的事项

用升级顾问检测下,按报告来改程序吧!
实在不行,降低兼容级别成80就行了!
中国数据库联盟 :http://cndba.5d6d.com
 

回复:大家来讨论讨论从SQL2000升级或迁移到SQL2005的方法、步骤以及应注意的事项

没有实践过,以前公司 的升级就是简单的把数据库备份,然后再还原就搞定了,没有出错的地方,因为数据库太小,无复杂的过程在里面!
中国数据库联盟 :http://cndba.5d6d.com
 

回复: 大家来讨论讨论从SQL2000升级或迁移到SQL2005的方法、步骤以及应注意的事项



引用:
原帖由 zhqian 于 2008-6-3 14:14:00 发表
用升级顾问检测下,按报告来改程序吧!
实在不行,降低兼容级别成80就行了!



确实应该用升级顾问检测一下,另外采用恢复备份的方法来升级的话,注意升级完后的数据库的兼容级别是8.0,要修改兼容级别为9.0的话,应该根据升级顾问的检测结果来看看是否有2005不支持的语法没,另外修改兼容级别必须在单用户模式下进行。
虽有智慧,不如乘势;虽有鎡基,不如待时。
君子学以聚之,问以辨之,宽以居之,仁以行之。
独学而无友,则孤陋而寡闻。
 

回复: 大家来讨论讨论从SQL2000升级或迁移到SQL2005的方法、步骤以及应注意的事项

 
一错再错,继续错就对了。
  
 

回复:大家来讨论讨论从SQL2000升级或迁移到SQL2005的方法、步骤以及应注意的事项

SQL Server 2000 到 2005的迁移

  网友: SQL Server 2000到SQL Server 2005的迁移成本有多大?

  胡百敬: 单纯的版权费,移转成本较容易计算,但因为 SQL 2005 的差异较大,可能需要考虑学习、开发等不容易弄清的整体拥有成本。

  网友: 在的网站用了300多个存储过程和30多个函数,用不用改动?

  胡百敬: 基本上预存程序由2000转移到2005并没有带大的问题,不过像2000的版本里m原来应该写成 [数据库名].dbo.[数据表名],但是简写为[数据库名]..[数据表名] 的时候转移到sql 2005 会出错。就这个部份要稍微留意一下即可。

  网友: 在我们转向2005的过程中, 我们需要注意那方面的问题呢?

  胡百敬: 在 Books online 上有表列两个版本的不兼容性,以及提供 Upgrade Advisor 做事前的分析。你可以先用 Upgrade advisor 稍作分析,再决定如何因应。另外,2000 和 2005 可以同时安装在同一台机器上,从 2000 备份出来的数据库也可以 restore 到 2005(反向不行),所以你可以先行测试。

  sql server 2005迁移至sqlserver2000
  最近使用了微软倾力打造的SqlServer2005数据库,感觉功能很强,管理简便,非常容易上手。尤其是客户端工具"Sql Server Management Studio",集合了2000查询分析器和企业管理器两大组件的功能,可谓我生平所见之最牛B数据库管理工具。

  正是由于看中了2005的开发简便的使用特性,项目组将新的"考勤2.0" Project的开发平台统统移到了2005之上。坦率的说,开发效率的确有所提高,用起来感觉很爽。但好景不长,新项目开发完成推广工作开始后,问题随之而来——绝大多数公司数据库管理系统依旧是2000版本的,且他们绝对不可能为了装区区一套不过5000元的2.0考勤管理软件而花一万元人民币升级至 2005。

  所以为了推广工作顺利进行,我们必须将原本2005平台的数据库向下兼容至2000版本!!!很不幸,这一艰巨的任务落到了我的头上。

  我的迁移计划如下:
  1.Export Data,将所有表连同其中数据复制到2000平台的DBMS。
  2.Generate Scripts,依次将View,Function,Procedure导出到2000数据库。

  迁移过程中发现了很多问题,致使迁移任务不能顺利的完成。2000和2005还是有很多不同之处的。
  1.在2000的用户自定义函数中,不能使用“非确定性的函数”,比如getdate()。
  解决方案,可以在函数调用之初,就将getdate()作为参数传过去。
  2.系统对象的前缀有所不同。2000的前缀是dbo;而2005的前缀是sys。
  3.2000存储过程调用函数参数传递时必须传直接变量或常量。所以不能使用getdate(),或case when 之类的语句。解决方案,  可以在函数调用之初,将getdate()/case when 的值赋值给一个变量,再传过去。
  4.select top x语句,x不能为变量,且x不能加括号。
  5.insert into exec (@param1)语法再2000中不能编译通过,应改exec ('insert into'+@param1)
 
一错再错,继续错就对了。
  
 

回复: 大家来讨论讨论从SQL2000升级或迁移到SQL2005的方法、步骤以及应注意的事项



引用:
原帖由 dobear 于 2008-6-30 13:25:00 发表
胡百敬: 基本上预存程序由2000转移到2005并没有带大的问题,不过像2000的版本里m原来应该写成 [数据库名].dbo.[数据表名],但是简写为[数据库名]..[数据表名] 的时候转移到sql 2005 会出错。就这个部份要稍微留意一下即可。



不止这些哦,还有用到 *=  或者 =* 的地方得修改成相应的left join和right join。

还有表后面跟的hint,如果没有with的话,升级到2005必须加上with。


……………………

大家补充。
虽有智慧,不如乘势;虽有鎡基,不如待时。
君子学以聚之,问以辨之,宽以居之,仁以行之。
独学而无友,则孤陋而寡闻。
 

回复:大家来讨论讨论从SQL2000升级或迁移到SQL2005的方法、步骤以及应注意的事项

我还将计划,索引.统计等都进行了重建,proc也都要仔细检查
 

回复:大家来讨论讨论从SQL2000升级或迁移到SQL2005的方法、步骤以及应注意的事项

有一些函数、方法用法可能会有差别,不管怎么样,先测试和评估一下。觉得如果没有升级的必要就不要升,升级是为了追求更高的性能或更强的功能。
 

回复: 大家来讨论讨论从SQL2000升级或迁移到SQL2005的方法、步骤以及应注意的事项



引用:
原帖由 suntt 于 2008-7-1 15:30:00 发表
我还将计划,索引.统计等都进行了重建,proc也都要仔细检查



嗯,应该使用DBCC UPDATEUSAGE更新一下统计信息,不然升级到2005后可能速度反而变慢。
虽有智慧,不如乘势;虽有鎡基,不如待时。
君子学以聚之,问以辨之,宽以居之,仁以行之。
独学而无友,则孤陋而寡闻。
 
1  /  2  页   12 跳转

版权所有 微软BI开拓者 

Powered by Discuz!NT 2.1.202    Copyright © 2001-2008 Comsenz Inc.
Processed in 0.078125 second(s) , 4 queries.
返顶部