如何将现有基于SQL Server低版本的应用,顺利升级到SQL Server 2012上来?
升级到SQL Server 2012,可以充分利用SQL Server数据库的一些新特性,例如列索引、AlwaysOn等技术,实现更高性能、更高可用性、更高安全性等,还可以拓展更多的商业洞察力及基于云的创新。但对于原有系统,首先需要完成的,就是确保原来的数据库能够迁移到SQL Server 2012中。
本周初举行了一个Microsoft SQL Server 2012应用程序兼容性实验室(Application Compatibility Lab),总的说来,在升级和兼容性测试过程中,关键是要选择合适的策略和工具。
策略方面,首先,并不是所有的先前版本都能直接通过安装升级到SQL Server 2012。只能由SQL Server 2005, 2008, 2008 R2升级到2012,且SQL Server 2005必须打SP4包,SQL Server 2008必须打SP2包,SQL Server 2008 R2必须打SP1包。对于SQL Server 2000,只能通过先升级到SQL Server 2005或者2008,然后再升级到SQL Server 2012。
谈到升级策略,主要有两种,即“In-place”和“Side-by-Side”,“In-place”就是直接在现有服务器上进行升级安装,替代原有数据库系统。而“Side-by-Side”又分成了在原有服务器上升级和在另一台服务器上升级两种。两种策略,各有优劣,具体应根据目标和自身情况来选择。
对于工具,有几个工具非常有价值,易于使用:
http://www.microsoft.com/en-us/download/details.aspx?id=29302
这个工具收集数据库实例信息,使用规则来检测元数据保留复制配置中的异常情况,并提醒可能存在的问题。
http://go.microsoft.com/fwlink/?LinkID=239679&clcid=0x409
http://go.microsoft.com/fwlink/?LinkID=239680&clcid=0x409
分析的结果如下图所示:
可以参考下面的网址:
http://technet.microsoft.com/zh-cn/subscriptions/index/d85b0833-ddeb-42e3-9397-97ea60d521b7
http://www.scalabilityexperts.com/tools/downloads.html
UAFS使用了Playback Capture Wizard(重播捕获向导)技术提供了工作负荷捕获功能,包含了应用程序与数据库之间发生的各种不同的Transact-SQL交互操作。高质量的代码覆盖重播应包含90%以上由应用程序生成的不同类型的Transact-SQL命令。主要操作步骤包括: