升级SQL Server 6.5

时间:2008-08-01 19:26:38

标签: sql-server migration

是的,我知道。在2008年存在SQL Server 6.5的正在运行副本是荒谬的。

那规定,从6.5迁移到2005的最佳方法是什么?有没有直接的路径?我发现的大部分文档都涉及将6.5升级为7

我是否应该忘记原生SQL Server升级实用程序,编写所有对象和数据的脚本,并尝试从头开始重新创建?

本周末我将尝试升级,但服务器问题将其推迟到下一个。因此,在本周的过程中,任何想法都会受到欢迎。

更新。这就是我最终做到的方式:

  • 备份有问题的数据库,并在6.5
  • 上备份
  • SQL Server 2000的主人执行instcat.sql的{​​{1}}。这允许6.5的OLEDB提供程序连接到SQL Server 2000
  • 使用6.5的独立SQL Server 2000创建DTS包,使用"Import and Export Data"连接到6.5。这成功地将所有OLEDB的表复制到新的6.5数据库(也使用2005)。
  • 使用OLEDB的企业管理器将所有数据库的索引和触发器编写为.sql文件的脚本。
  • 在2005年的Management Studio中对该数据库的新副本执行该.sql文件。
  • 使用6.5的企业管理器编写所有存储过程的脚本。
  • 6.5数据库执行.sql个文件。几十个问题使得它们与2005不兼容。主要是2005non-ANSI joins
  • 更正了所有这些问题并重新执行了quoted identifier issues文件。
  • .sql中重新创建了6.5次登录,并为其提供了相应的权限。

在更正存储过程时会有一些冲洗/重复(有数百个要纠正),但升级很顺利。

能够使用Management Studio而不是2005Query Analyzer是如此惊人的差异。在Enterprise Manager 6.5上花费20-30秒的一些报告查询现在在1-2秒内运行,没有任何修改,新索引或任何其他内容。我没想到会有那种立竿见影的改进。

4 个答案:

答案 0 :(得分:8)

嘿,我仍然被困在那个营地。我们必须支持的第三方应用程序最终会转到2K5,所以我们几乎已经不合时宜了。但我觉得你的痛苦8 ^ D

也就是说,从我从DBA那里听到的一切,关键是首先将数据库转换为8.0格式,然后转到2005年。我相信他们使用了内置的迁移/升级工具。 6.5到8.0之间的一些重要步骤比直接从6.5到2005更好地解决了。

你最大的痛苦,如果你不知道,那就是DTS不再支持SSIS了。有一个shell类型模块将运行您现有的DTS包,但您将需要在SSIS中手动重新创建它们。易于实现这一点取决于软件包本身的复杂程度,但到目前为止我已经完成了一些工作并且它们非常流畅。

答案 1 :(得分:3)

您可以将6.5升级到SQL Server 2000.您可以更轻松地获取SQL Server或2000版本的MSDE。 Microsoft在going from 6.5 to 2000上有一个页面。一旦你有2000格式的数据库,SQL Server 2005将毫无困难地将其升级到2005格式。

如果您没有SQL Server 2000,则可以直接从Microsoft获得download the MSDE 2000版本。

答案 2 :(得分:2)

我绝不是权威的,但我相信唯一支持的路径是6.5到7.当然这将是最理智的路线,然后我相信你可以毫不费力地从7直接迁移到2005年。

至于编写所有对象的脚本 - 我会反对它,因为你将不可避免地遗漏一些东西(除非你的数据库真的很小)。

答案 3 :(得分:2)

如果您可以找到专业版或其他一些超级企业版的Visual Studio 6.0,它会附带MSDE的副本(基本上是SQL Express的前身)。我相信MSDE 2000仍可从Microsoft免费下载,但我不知道你是否可以直接从6.5迁移到2000.

我认为在概念上,你不会有任何危险。然而,多年的实践告诉我,您将永远错过一些不会立即显现的对象,权限或其他数据库项。如果你可以编写整个转储脚本,那就更好了。因为你不太可能错过任何东西 - 如果你错过了什么,它可以很容易地添加到脚本并修复。我会避免任何手动步骤(除了按一下输入键之外),就像瘟疫一样。