是的,我知道。在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文件的脚本。6.5
数据库执行.sql
个文件。几十个问题使得它们与2005
不兼容。主要是2005
和non-ANSI joins
。quoted identifier issues
文件。.sql
中重新创建了6.5
次登录,并为其提供了相应的权限。在更正存储过程时会有一些冲洗/重复(有数百个要纠正),但升级很顺利。
能够使用Management Studio而不是2005
和Query Analyzer
是如此惊人的差异。在Enterprise Manager 6.5
上花费20-30秒的一些报告查询现在在1-2秒内运行,没有任何修改,新索引或任何其他内容。我没想到会有那种立竿见影的改进。
答案 0 :(得分:8)
也就是说,从我从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.
我认为在概念上,你不会有任何危险。然而,多年的实践告诉我,您将永远错过一些不会立即显现的对象,权限或其他数据库项。如果你可以编写整个转储脚本,那就更好了。因为你不太可能错过任何东西 - 如果你错过了什么,它可以很容易地添加到脚本并修复。我会避免任何手动步骤(除了按一下输入键之外),就像瘟疫一样。