我有一个大小约为 1 TB 的 SQL Server 2008 数据库。我想将它迁移到 SQL Server 2012。我有几个疑问:
- 迁移,我把2008全量备份,2012恢复,请问内部兼容版本还是2008还是改成2012?
- 为了在迁移后充分利用 2012 年的潜力,迁移期间需要考虑哪些因素。迁移后,所有 2012 年的新功能和引擎改进都应该可用于迁移后的数据库。
我有一个大小约为 1 TB 的 SQL Server 2008 数据库。我想将它迁移到 SQL Server 2012。我有几个疑问:
我做了小测试数据库兼容性级别保持不变。
1.在 2008r2 上创建虚拟数据库
2.在 2012上恢复它
所以在恢复时,我可以看到版本被更改,但在恢复兼容性级别后保持不变。因此您需要将数据库更改为 110 兼容级别才能获得 SQL 2012 的好处
来自 Paul Randal 问答环节,Nakul 博客,以下是版本的详细信息。
这些文件版本是内部存储格式,与数据库的兼容级别无关
http://beyondrelational.com/modules/2/blogs/77/Posts/19759/0311-sql-server-database-files-upgraded-from-version-nnnn-to-mmm-why-databases-cannot-be-恢复-ba.aspx
对于第二个问题,我建议运行数据库升级顾问,请参阅下面的链接了解更多详细信息
https://technet.microsoft.com/en-us/library/ms144256(v=sql.110).aspx
http://beyondrelational.com/modules/2/blogs/77/Posts/19759/0311-sql-server-database-files-upgraded-from-version-nnnn-to-mmm-why-databases-cannot-be-恢复-ba.aspx
在 New SQL Server 2012 Server 上还原数据库备份,然后将每个数据库的兼容级别从 2008 更改为 2012。
使用以下方法之一。
i) 使用脚本更改兼容级别:
ii) 数据库属性 -> 选项 -> 兼容级别 -> SQL Server 2012 (110)
i) 兼容性级别更改很重要,因为它允许使用新的 SQL Server 2012 功能。
ii) 您必须阅读SQL Server 数据库引擎向后兼容性一文,并确保您没有使用任何破坏 SQL Server 2012 兼容性的已停用/弃用功能。
注意:您可以对已弃用的调用运行跟踪