This note shows that as of SQL Server 2012, which will be Release-To-Manufacturing (RTM) effective 04/01/2012, Database Mirroring will be marked as deprecated. What does this mean? As the note states, the feature will be removed in a future version of the SQL Server product and as such should not be used in any planned development for the future. The feature *will* work in SQL Server 2012, but will be removed at some point after that.
There are two different types of deprecation for SQL Server features – “Features Not Supported in the Next Version of SQL Server” and “Features Not Supported in a Future Version of SQL Server.” In this case, the Next Version is whatever comes after SQL 2012 (for our purposes we will call this version SQL 201X), while a “Future Version” means some version after that (SQL 201x+1). Specifically, features not supported in a future version means “The following SQL Server Database Engine features are supported in the next version of SQL Server, but will be removed in a later version. The specific version of SQL Server has not been determined.”
Microsoft publishes a list of both groups of features here
, and Database Mirroring is on the “Future Version” list:
This means Database Mirroring will work in SQL 2012 and in the following version SQL 201X, but its status for the next version (SQL 201x+1) is unknown at this time, and will be unknown until the release of SQL 201X and the accompanying deprecation lists for that version. Microsoft is very heavily advertising the AlwaysOn functionality that is replacing mirroring (as shown above) so mirroring will very likely be removed in the first Future Version (SQL 201X+1).
What does this mean? Any new system development and design from this point forward needs to allow for the fact that Microsoft will probably not support Database Mirroring in the next five to six years, and since many systems live far beyond five to six years it is important to investigate AlwaysOn Availability Groups as a replacement for Mirroring, even if mirroring will be implemented in the short-term. This awareness needs to be especially present when designing systems for the current version of SQL Server (2012) but is also relevant for systems being built for older versions of the product (SQL 2008 and 2008R2) as they may well live long enough to be upgraded in the future to a version of SQL Server that no longer supports Database Mirroring.
Also, check out these other great bloggers on this same subject: