提问人:rem 提问时间:8/22/2011 更新时间:4/14/2017 访问量:173218
将备份还原到较旧版本的 SQL Server
Restoring a backup to an older version of SQL Server
问:
尝试将备份还原到 SQL Server Express 2008 数据库时,出现以下错误:
Restore failed for Server '...\SQLEXPRESS'. (Microsoft.SqlServer.SmoExtended)
System.Data.SqlClient.SqlError: The database was backed up on a server running version
10.50.1600.
That version is incompatible with this server, which is running version 10.00.2531.
Either restore the database on a server that supports the backup, or use a backup
that is compatible with this server. (Microsoft.SqlServer.Smo)
有没有办法从较新(在我的例子中是 10.50.1600)版本的 SQL Server Express 获得与较旧(在我的情况下为 10.00.2531)版本兼容的备份?
答:
可以使用“导入/导出”向导在数据库之间移动数据。
右键单击要导出的数据库,选择“任务”,然后选择“导出数据”。该向导将指导您完成整个过程。
不过,你是对的。您将无法执行从 SQL Server 2008 R2 移动到 SQL Server 2008 Express 的备份/还原。
你已使用 SSMS 中的导入/导出向导来迁移所有内容
使用备份/还原或分离/附加不可能“降级”
评论
唯一的方法是在 10.00.2531 版本上创建一个新数据库,并从 10.50.1600 导入数据。
您无法还原到旧版本。
右键单击数据库 --> 任务 -->生成脚本 -->next-->next--> 单击“高级”按钮 -->将选项“数据类型更改为脚本”更改为“模式和数据” -->好的 -->下一页 -->下一页 因此,现在您有一个脚本,用于创建数据库及其表,并在其中填充数据:) ;)
评论
SQL Server 备份不支持向后兼容性
在旧版本上获取数据库的步骤 -
对于架构:右键单击数据库 -->任务 -->生成脚本 -->下一个-->下一个-->单击高级按钮 -->将选项“数据类型更改为脚本”为“模式” -->确定 -->下一步 -->下一步
对于数据:右键单击数据库 -->任务 -->生成脚本 -->下一个-->下一个-->单击高级按钮 -->将选项“数据类型更改为脚本”-->确定 -->下一步 -->下一步
评论