【问题标题】:Error while Restoring backup in SQL Server 2005在 SQL Server 2005 中恢复备份时出错
【发布时间】:2017-11-09 19:27:49
【问题描述】:

尝试恢复备份时显示“恢复失败”错误。

在这里搜索后得知,SQL Server(2014)的更高版本的数据库备份无法在早期/低/旧(SQL Server 2005)版本中恢复。

我的问题是,我可以将兼容模式设置为 2005 的模式,然后进行备份,这样可以吗?

如果没有,是否有任何其他可能的工具或解决方案,因为备份非常大,需要 2-3 小时才能完成备份。

【问题讨论】:

  • 您唯一的选择是在 2014 服务器或更高版本上恢复
  • 其实它只是为了这个目的,但是有一个客户有一个专业版的 SQL Server 2005,还没有准备好升级它。
  • 高版本的备份永远不会在低版本上恢复。您可以编写整个数据库的脚本并使用 bcp 导出/导入数据。但这需要更多的时间。这只有在您不使用 2005 年不支持的任何功能时才有效
  • 感谢 @sepupic 的快速回复,我想我必须手动验证和更改许多程序才能使其与 2005 版 SQL Server 兼容。

标签: sql-server sql-server-2005 sql-server-2014 database-backups


【解决方案1】:

SQL 2014 数据库备份无法恢复到 SQL 2005 数据库。 你能做的是;

 1. script out all objects from the SQL 2014 database;
   1.1 right click database in Object Explorer
   1.2 select 'Tasks' -> 'Generate Scripts'.
   1.3 Enable everything, including 'script data'.
 2. Create a new database on SQL 2005
 3. Run all scripts on the new SQL 2005 database.

但是,由于您的数据库非常大,这将需要很长时间。 尤其是编写数据脚本。

如果您确实需要这样做,您可以编写所有表、过程等的脚本,并使用例如 SSIS 创建数据流以将数据迁移到 SQL 2005。

编辑; 我发现的另一个选项 (on this topic),但尚未测试,是使用第三方工具, '在 2008 实例上创建空数据库,并使用 ApexSQL Diff 和 Data Diff 等第三方工具来同步模式和表。

只需在试用模式下使用这些(或市场上的任何其他产品,如 Red Gate、Idera、Dev Art,还有很多类似的)即可完成工作。'

【讨论】:

  • 谢谢,您的建议似乎很有帮助,尽管我认为我可能会遇到一些关于 SP 的问题,这些问题不允许 SQL 2008 及更高版本的功能
猜你喜欢
  • 2013-01-25
  • 1970-01-01
  • 2010-10-07
  • 1970-01-01
  • 2013-03-31
  • 2010-09-22
  • 1970-01-01
  • 2013-03-28
  • 1970-01-01
相关资源
最近更新 更多