[Last updated July 13, 2018]
In October 2016 I noticed something interesting: if you’re running SQL Server 2008 or 2008 R2, Microsoft’s extended support for it ends on 9 July 2019. That’s two versions of SQL Server, almost two years apart in release cycle, with different feature sets, expiring on the same day.
Granted, by that date SQL Server 2018 will probably have been released, which would make 2008 officially five versions old and 2008 R2 four versions old. But in corporations, time moves both slowly and quickly. By that I mean, planning to upgrade takes a long time, and before you know it, it’s 9 July 2019 and everyone is panicking.
It’s the right time, today, to start your upgrade plan. A lot of customers I speak to, running on 2008 or 2008 R2, are talking about upgrading to 2012, 2014 or 2016 right now.
On Twitter, I said that after the end of 2017, I would not recommend upgrading any instances to SQL Server 2012, for this reason:
In 2019, moving to SQL Server 2016 buys you 7 more years of support. I wouldn’t consider moving to SQL Server 2012 after the end of 2017.
At the end of 2017, SQL Server 2012 was more than five years old. Despite your best intentions assuming a major upgrade will be quick, and considering that SQL Server licensing costs the same regardless of the version you buy, there’s no practical reason not to go to at least SQL Server 2016, and preferably SQL Server 2017 (I consider SQL Server 2016 the biggest releases since SQL Server 2005). You can even run your database in 2008 Compatibility Mode if you’re running SQL Server 2017.
I wrote down some reasons to upgrade from SQL Server 2005 in 2015. These reasons still apply, even if the version numbers aren’t the same.
Which brings up the big question: what about Azure SQL Database? As you know, my first question when customers ask about moving to Azure SQL Database is “Are you sure?”, followed by “Are you very sure?”.
By the time July 2019 rolls around, Azure will be ten years old. That’s hard to fathom right now, but at their current rate of progress, Azure SQL Database will be a mature platform (it already is mature for appropriate workloads, when taking elastic pools into account).
So, if you meet all of the following conditions:
- you use SQL Server 2008 or 2008 R2,
- you plan to upgrade after 2017, and
- you’re running a database smaller than 1TB,
I would recommend that you consider migrating to Azure SQL Database, instead of upgrading to an on-premises database server running SQL Server. The time is right, less than twelve months before the final day, to develop an appropriate migration strategy to achieve this.
Scary, isn’t it?
If you want to discuss this on Twitter, look me up at @bornsql.