SQL Server Emergency (4 hours)

What constitutes a SQL Emergency?

You’ve got a critical situation and SQL Server appears to be the cause or the victim. Usually the CPU is maxing out and/or you’re getting timeouts in your application. You need help now.

Get in touch and subject to availability we’ll jump quickly on a call and start looking directly at the issue. We’ll slot in half a day (4 hours) to get you going again and then can discuss next steps.

These are the sort of incidents I get the most satisfaction dealing with. You’re having a bad day and I want to turn that around for you.

If the situation is bad, but not critical, you might want to consider whether my three day healthcheck service is a better fit for you where we can take a more measured look at the overall performance and configuration of your system, perform deeper analysis and produce wider set of recommendations. I am also flexible if you think you need something in between.

What will we do?

The standard approach breaks down into three steps, Diagnose, Analyse, and Implement.

Step 1: Diagnose

First we’ll discuss what is the problem you’re experiencing, from there I can understand the right set of diagnostics to run first. I’ll need you to get me on a video call with someone who has sysadmin permissions over your database server and the authority to download and run scripts (or I can email the scripts to them directly). These scripts may include sp_whoisactive by Adam Machanic, the Consultant Toolkit by Brent Ozar, and scripts from my own website or other sources. The first two items in that list require installing stored procedures on your system – either within the master database or a separate admin database. They are great resources and cover a lot of areas, but if your policies prevent you from installing such objects we can run individual scripts instead – though things will take a little longer.

Generally we’ll be able to identify what’s going on quite quickly and can move onto the next step.

Step 2: Analyse

What we do here is going to depend on what we discovered in step one so let’s look at an example. A common scenario is where a particular stored procedure (or a couple of them) has tipped over into bad performance and is chewing up all your CPU. We’ll need to analyse the code and execution profile and look for potential fixes. solutions could include code changes or improvements to indexing. I’ve experienced a lot of these scenarios so am generally able to find improvements fast.

Another scenario could be where we identify incorrect configuration is the issue, in this case we’ll analyse what are the best settings for your system.

Step 3: Implement

Where possible it’s always best to implement and verify changes in a test system first. How we proceed here is going to depend on the resources and processes you have in place, as well as the level of emergency you are facing. Some changes are low-risk so you may want to go ahead and make changes to production immediately. Others, such as code changes, will often require proper testing. We’ll discuss the best plan for you.

Next Steps

With all my engagements I offer a free half hour follow up call to discuss how you are doing and whether you need any additional help. I also remain available indefinitely to answer quick questions, if you have queries that require deeper research from me then I’ll let you know that and we can discuss how to proceed.

Getting started

For an emergency, email me directly at matt@matthewmcgiffen.com and make sure to include “EMERGENCY” in the email subject and I’ll get back in touch ASAP to discuss availability. It’s helpful if you include a description of the problem and can let me know what version and edition of SQL Server you are running.

Where possible I’ll shuffle other things around to get to you as soon as possible and am flexible about working hours. If you’re a first time client then I’ll need an approved Purchase Order made out to Matthew McGiffen Ltd. before we get down to work.

Pricing

I offer billing in UK pounds, US dollars or Euros:
£975 / $1,185 / €1,125