我已经安装了 SQL Server 2008 R2,并尝试恢复同事以 .bak 文件形式发送给我的数据库。
不幸的是,我无法恢复数据库,因为数据库保存在版本 10.50.1600 的服务器上,而我的 SQL Server 版本似乎是 10.00.1600。
我尝试使用 SP1 和 SP2 包升级我的 SQL Server,但没有任何改变。
否则,我通过单击服务器属性注意到“产品”行显示 Microsoft SQL Server Express 版本,即使我已经安装了 SQL Server 2008 R2。这至少是我发射它时显示的内容......
谁能帮我吗?
提前致谢
最佳答案
您不能执行此操作 - 您无法从 SQL Server 较新版本 (SQL Server 2008 R2 - 10.50.1600) 附加/分离或备份/恢复数据库降到旧版本(2008 - v10.00.1600) - 内部文件结构差异太大,无法支持向后兼容性。
您可以通过以下方式解决此问题
在所有计算机上使用相同版本的 SQL Server - 然后您可以轻松地在实例之间备份/恢复数据库
否则,您可以在 SQL Server Management Studio 中为结构(表、 View 、存储过程等)和内容(表中包含的实际数据)创建数据库脚本(
任务 >生成脚本
)或使用第三方工具或者您可以使用第三方工具,例如 Red-Gate 的 SQL Compare和 SQL Data Compare在源和目标之间进行“比较”,根据这些差异生成更新脚本,然后在目标平台上执行这些脚本;这适用于不同的 SQL Server 版本。
关于sql-server - 由于 SQL Server 版本不同,无法使用 .bak 文件恢复数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21385088/