As SQL Server 2005 approaches the end of its support next year, customers can start planning for upgrading their databases to SQL Server 2014. In a previous blog post, I talked about how to integrate Microsoft Product Lifecycle and Support Policies into IT Operations which concluded with planning upgrades and migration based on the version of SQL Server that you are running. Of course, the reality is, there are still SQL Server 2000 databases out in the field that are still operational and have been out of support since 2013. In fact, I am currently working on migrating a SQL Server 2000 instance to SQL Server 2014 for a customer.
I can provide about a dozen or more different reasons why upgrading to SQL Server 2014 (or even SQL Server 2016 when it comes out) would be beneficial to your organization. But I would leave that job to the marketing folks at Microsoft. Besides, I don’t get sales commissions for recommending upgrades to my customers. What I would consider the most important reason for upgrading to the latest version of whatever product that you are using is this: operational cost.
Driving An Old Car Versus Buying A New One
I drive a classic 2005 Nissan XTrail. It’s the very first car I bought. It’s a mini-SUV with a 4-cylinder engine which is great when driving in the snow. And considering the fact that it is no longer available in Canada, I love driving it because there’s not a lot of them on the road.
Unlike my Nissan XTrail, some old cars are not built with quality in mind. That means owners spend so much on maintenance and repair costs. Couple that with the availability (or unavailability) of parts for an old car. But that’s not the only thing you need to consider. If you drive your car on a regular basis, you need to consider the time it takes to take your car to the mechanic, the time wasted while taking your car to the mechanic and waiting for it to be fixed, the hassle of getting a rental car if you really need to drive to and from work, etc. And have you ever counted the cost associated with the frustration of dealing with a problematic car? Add all of those up throughout the lifetime of your car and you’re probably better off getting a newer, more reliable one.
What about some of the laws that have been introduced throughout the years? Newer cars do not require regular emissions testing compared to their older counterparts. The Federal Motor Vehicle Safety Standards have required dual-front airbags in all cars since 1998. Who knows, maybe a new law will be introduced in a few years.
I’m just glad that I don’t drive that often and own a car that is of high quality standards. Which means that I am not really that dependent on my car to make a living. But I guess your organization’s revenue and profit do rely on your mission-critical databases.
Supporting An Unsupported Database Platform
Almost five years ago, we had to support a customer that is still running on SQL Server version 6.5. At that point, the product is already on its fourteenth year and already way out of Microsoft’s support. They were literally on their own if something happened. The database originally ran on a Windows 2000 Advanced Server on a very old hardware. When the customer couldn’t find the hardware drivers and firmware for the server, they’ve decided to move off the physical server to a virtual machine.
Even the physical-to-virtual migration was painful. They upgraded the operating system to Windows Server 2003 but kept SQL Server to version 6.5. Their largest database has grown to about 300 GB at that point. Now, understand that a 300 GB-sized database is “relatively large” at that time and SQL Server 6.5 wasn’t designed to handle that much data. You might remember that, during those times, the maximum amount of memory that you can have in your server was around 8 GB (that’s the maximum amount of memory that Windows 2000 Advanced Server supports.)
Their databases kept getting corrupted – on a regular basis. I remembered a time when our team had to fix database corruption issues every week. It wasn’t a good use of our time. And even with a team of highly skilled SQL Server experts, it was a challenge – we no loner worked with SQL Server 6.5. The team spent time re-learning the product just to support it. I even had to install SQL Server 6.5 on my test lab just to get myself re-oriented with the management tools. Managing and supporting that database even affected the team morale because we were getting frustrated with all the issues that we need to fix instead of focusing on more important things that would benefit the business goals. It really wasn’t a good experience overall.
Things To Consider
When you think about what’s really important to the business, spending a large amount of money and resources to support an outdated technology asset is probably not a good idea. So, whether or not you decide to keep that SQL Server 2000 or any other outdated platform that your business depends on, here are some things to consider to help you make that choice.
- Vendor support. Microsoft and other technology companies define what they consider mainstream support and extended support. In order to receive enhancements for a specific product thru service packs and cumulative updates, you have to be under mainstream support. Under extended support, no additional enhancements will be provided and all support-related cases will fall under the “paid” options. Outside of extended support, you are technically on your own and your vendor may not even assist with any support case that you will open with them. Of course, just because your vendor supports your particular platform doesn’t guarantee that your internal team can. Which leads me to my next point.
- Availability of skilled resources. If nobody – whether internal or otherwise – knows how to support your mission-critical database platform, would you still keep it. If the car that you use to drive to and from work breaks and nobody can fix it, is it worth keeping? Sure, you can possibly outsource that to a managed services provider but can you guarantee that they have the technical skills to keep the lights on? A newer version of a product will be much more common in the field that there will be more skilled talents and resources available to maintain it.
- Compliance requirements. Depending on your industry, you may have certain requirements to fulfill in order to be in business. HIPAA and PCI compliance both require the database and operating system platforms to be updated with the latest security patches. It also means that you need to comply with the laws and regulations that apply in the country or region in which your business operates and/or data is held. An example of this is the UK Data Protection Act of 1988. Does your existing technology platform meet these compliance requirements or do you need to upgrade to a newer version to be compliant?
So, while Microsoft marketing may provide you with a list of benefits on why they want you to upgrade to the latest version of SQL Server, consider these things. This is the reality that customers face when dealing with an older version of the product – not the capability to move to Microsoft Azure, not the capability to use In-Memory OLTP nor the buffer pool extension to solid state disks.
In the next blog post, I’ll cover how to prepare for upgrading your SQL Server 2000 (yes, I did mean SQL Server 2000) and SQL Server 2005 databases to SQL Server 2014
- What end of support for SQL Server 2005 means for CIOs
- What Do Mainstream Support and Extended Support Mean?
- Sending personal data outside the European Economic Area (Principle 8)
- Upgrading to Microsoft SQL Server 2014 (Microsoft Virtual Academy)