This week, I’m writing blog posts that can be summed up in one image. Here’s the first one:
You could probably stop reading right there, but if you’re not convinced, allow me to elaborate.
SQL Server 2012 support ends July 12.
No, there’s not a year in that sentence, because it’s this year.
No, there’s no qualification about “mainstream support” because that’s the extended support end date.
Sure, there are extended security updates for a few more years, but those are only security bugs. Within 141 days, your SQL Server 2012 boxes are going to be unsupported, period, full stop, end of sentence. If you call Microsoft for support, they’re going to give you best effort, but at the end of the day, you shouldn’t be surprised if they tell you that the “fix” is to upgrade your SQL Server.
And you know what? I think that’s completely fair. SQL Server 2012 is a decade old at this point.
It wasn’t a bad version!
I don’t want you to think I was disappointed in 2012. To the contrary, I think it was a groundbreaking release, especially looking back at 2008 and 2008R2. My 2008 R2 review noted that it was really just more of the same from 2008, whereas 2012 was really different.
In 2012, I was incredibly excited when Always On AvailabilityGroups (did I capitalize and space that right?) revolutionized high availability and disaster recovery. However, the SQL Server 2012 execution was outright terrible.
2012’s columnstore indexes? No way, Jose: they made the table read-only.
But this stuff represented great down payments on technology that Microsoft has continued to invest in. Today, in 2022, columnstore indexes and AGs are solid features that…
(listens to earpiece)
One moment please…
(continues listening to earpiece)
I’m being informed that Always On Availability Groups are still painful, but at least they’re widespread. (Did I phrase that right?)
Look, stop distracting me. The point is SQL Server 2012 is bad in 2022. If you’re still running 2012 in production today, it’s time to start having the discussion with the business. Here’s how I’d start: “Is it okay if application ___ is running on an unsupported version of SQL Server?”