0

我们正在将 SQL Server 2000 实例迁移到 SQL Server 2017。我能够通过 SQL Server 备份恢复成功移动所有数据库,但一个数据库出现问题。我什至可以移动这个数据库,但问题是当用户试图通过 Sage ERP 应用程序(5.4 版)连接到这个数据库时 - 他们收到消息:

损坏的数据,DBSETUP:创建应用程序表。未找到表“表名称”。

虽然我检查了表存在并且一致性没有错误。然后,我们在 SQL Server 2017 实例上创建了一个空白数据库,并尝试通过 Sage 应用程序将 SQL Server 2000 数据库的转储创建到.REC文件中并将其移动到 SQL Server 2017 实例,但我们无法移动它。

有多个.REC文件,传输开始并且其他.REC文件已成功移动,但它在一个特定.REC文件处停止并显示以下消息:

(错误=0 本机代码=0)

数据库的大小在 SQL Server 2000 中是 32 GB,但是当我们通过 Sage 将其移动到 SQL Server 2017 时,它变成了 45 GB。这是我们注意到的一件事。我们检查了兼容性和排序规则也OK。我还检查了数据库和特定表的一致性,没有错误。这是我们迄今为止所尝试的,过去 3 周一直在苦苦挣扎,任何帮助将不胜感激。

4

1 回答 1

0

没有垫脚石服务器就不可能将 2000 数据库迁移到 2017,因为格式差异太大。因此,在您的情况下,您可以在 2005/2008 服务器上恢复 2000 数据库,从那里进行备份并在运行更高版本的实例上恢复它。Paul Randal 在这里完美地解释了它:https ://www.sqlskills.com/blogs/paul/you-can-upgrade-from-any-version-2005-to-any-other-version/

于 2019-11-29T13:18:25.363 回答