Deprecated Features in the SQL Server 2012 Database Engine
As you might know, Microsoft has released on March 7 the RTM version of SQL Server 2012. If you are an MSDN or TechNet Subscriber, you can already download it and play with it. As with every SQL Server release, SQL Server has also marked several features as deprecated, which means they are removed in a future version of SQL Server.
So if you are starting a new deployment or an application based on SQL Server 2012, you should check the following link which describes all the deprecated features and their replacement: http://msdn.microsoft.com/en-us/library/ms143729%28v=sql.110%29.aspx. In this blog posting I want to mention 2 deprecated features, because there are some big changes in SQL Server 2012.
With the release of SQL Server 2012 and AlwaysOn Availability Groups, Database Mirroring is deprecated. Database Mirroring was introduced with SQL Server 2005 SP1 and allowed you to mirror a database synchronous and asynchronous, and optionally you had also an automatic failover if you used a witness instance (in combination with synchronous mirroring).
AlwaysOn Availability Groups is an enhanced version of Database Mirroring where you can mirror a group of databases, and where your secondary databases are readable. AlwaysOn also provides you synchronous mirroring for HA, and asynchronous mirroring for DR. One requirement of AlwaysOn Availability Groups is that you need to have a Windows Server Failover Cluster (without any Shared Storage!). The Windows Server Failover Clustering functionality is used to provide several clustering infrastructure features like Quorum settings, Intra Node Health Checking, etc.
I already talked with some of my customers, and for a few of them this is currently a big no-go, because they are currently using Database Mirroring where each partner database is not in an AD domain. So they can’t just migrate to AlwaysOn, because they are not able to create a Windows Server Failover Cluster. But that is just the way how it works now. Another drawback is that AlwaysOn Availability Groups is currently only an Enterprise Edition feature of SQL Server. Parts of Database Mirroring are also available in the Standard Edition. Microsoft suggests to use Log Shipping of your SQL Server Edition doesn’t support AlwaysOn Availability Groups.
SQL Server Profiler for Trace Capture and Trace Replay
Microsoft introduced with SQL Server 2008 Extended Events. With SQL Server 2012 Microsoft has done a lot of improvements in the area of Extended Events, for example you are now getting a very cool UI where you can define your Event Sessions in a wizard based way. On the long term Extended Events is the replacement for SQL Trace and SQL Server Profiler. Therefore those features are marked as deprecated. If you are using SQL Trace/SQL Profiler for Trace Capture and Trace Replay, SQL Server 2012 provides you a new feature called Distributed Replay, which is a high scalable distributed replaying technology.
So, if you have existing applications based on SQL Server, or you are starting a new deployment on SQL Server 2012, please review the deprecated features so that you have fewer problems in the futures.
If you are interested in SQL Server 2012, I suggest looking on my “SQL Server 2012 Deep Dive Days Workshop”, which I run from May 28 – 30 in London/United Kingdom (see http://www.SQLpassion.at/events.html, Early Bird price ends on March 31). This workshop was running this week in Vienna/Austria with a huge success and next week I’m presenting this workshop in Munich/Germany.
Thanks for reading!