How to Attain SQL Server High Availability at Minimal Cost

Network Infrastructure

  • LAN/WAN fails

  • Router/switch fails

  • DNS/WINS fails

  • Internet access fails

  • Etc.

In many ways, this category is just as important, if not more so, than server hardware. If your SQL Servers can’t communicate with your users, they aren’t of much use.

Electrical Power

  • Blackouts/Brownouts

  • Data center power failure

  • Area-wide power failure

  • City-wide power failure

  • Energy conservation restrictions (rolling blackouts)

This category is a no-brainer.

Scheduled Hardware/Software Upgrades/Patches

  • Hardware upgrades

  • Hardware driver upgrades

  • OS/Application software upgrades

  • OS/Application patches

  • SQL Server service packs/hotfixes

This category is an often forgotten source of SQL Server downtime. Hopefully, you can schedule downtime for this important area, unlike much downtime, which is unplanned.

Operating System

  • Bugs

  • Blue screens

  • Memory leaks

  • Security issues

While Window has gotten better over time, it still is not perfect and is subject to occasional problems. On the other hand, I have had SQL Servers up for six months, and longer, without any reboots.

SQL Server

  • Bugs

  • Data corruption

  • Poor configuration

SQL Server itself can cause havoc, causing downtime. In fact, from personal experience, I have had more problems with SQL Server than with the operating system in regard to unexpected downtimes.

Human Errors

  • DBAs make mistakes (rarely, of course)

  • Developers make mistakes or write bad code

  • Users delete or corrupt data

  • Managers don’t provide necessary resources

These are some of the largest causes of unexpected downtime, but most of us don’t want to talk about them. I wonder why?

Application Software

  • Applications fail

  • Applications corrupt data

  • Applications crash SQL Server

  • Applications can waste high amounts of SQL Server resources, preventing others from doing their work

Here, I am referring to the software used to access SQL Server. When application software fails, SQL Server often gets the blame, although unfairly. As a DBA, you need to take into consideration application software when planning for high availability.

Poor Tuning

  • Poor tuning uses up resources and can prevent users from doing their job.

  • Poor query design

  • Lack of indexes

  • Outdated statistics

  • Poor database design

  • Concurrency issues

Here’s an area you may not have thought about. There are many performance tuning-related issues that can prevent users from accessing data when they want. While some DBAs don’t consider performance tuning a high availability issue, it really is.



No comments yet... Be the first to leave a reply!