Latest blog posts

How to Survive Opening A Microsoft Support Ticket for SQL Server or Azure SQL

By Kendra Little on September 23, 2024

Asking Microsoft for support for SQL Server or Azure SQL is a lousy experience these days. This is true whether you are using a cheaper service tier or the more expensive support tier formerly known as “Premiere Support.” Either way, I’ve found the same issues: as the person requesting support, I must know a whole lot about the root cause of my problem and how to solve it, or my request will be dismissed with misinformation. I need to have data and metrics that back up my claims in order to get the ticket escalated to someone who can help, and I will need to provide those receipts three or four times. Once something is escalated to the Product Group, I may get a helpful response, but it will generally take a while. If I’m not engaged directly with the Product Group and the answer is being relayed through a lower support tier, it often won’t make much sense.

These issues don’t happen due to bad work ethics or personal failings of support workers. These are good humans, who are trying their best! The problem is worse, because it’s systemic.

Continue reading

SQL Server page compression: should you worry about CPU usage increasing on on inserts, updates, and deletes?

By Kendra Little on September 8, 2024

Every time I share a recommendation to use data compression in SQL Server to reduce physical IO and keep frequently accessed data pages in memory, I hear the same concern from multiple people: won’t this increase CPU usage for inserts, updates, and deletes? DBAs have been trained to ask this question by many trainings and a lot of online content – I used to mention this as a tradeoff to think about, myself– but I’ve found this is simply the wrong question to ask.

Continue reading

Free Script to Automate Unforcing Failed Forced Plans in Query Store (SQL Server)

By Kendra Little on September 2, 2024

tldr; I’ve published a script to loop through all databases on an instance, identify if there are any query plans in a problematic “failed” forced state (which can hurt query performance), and un-force them if found. Get the dbo.dba_QueryStoreUnforceFailed stored procedure on GitHub. This script is designed to work on SQL Server on-prem, in a VM, or in Azure SQL Managed Instance or SQL Server RDS. Since the script is instance-level and loops through all databases, this isn’t really designed for Azure SQL Database – and you don’t get a SQL Agent there anyway, so you probably want to change this around for that use case.

Continue reading

Please Compress Your Indexes and Shrink Your Databases if you use Azure SQL Managed Instance

By Kendra Little on August 26, 2024

Shrinking databases in SQL Server isn’t fun – it’s slow, it causes blocking if you forget to use the WAIT_AT_LOW_PRIORITY option, and sometimes it persistently fails and refuses to budge until you restart the instance. You only want to shrink a SQL Server database when you’ve got a good reason and a lot of patience.

If you’re using Azure SQL Managed Instance and you haven’t already used data compression on your indexes and shrunk your databases, you probably have two good reasons to do both of those things: performance and cost reduction.

Continue reading

Latest SQLComics

SQL Corgs Explain Inner Joins

on April 15, 2024

Joins are essential. The SQL Corgs introduce you to INNER joins in this animated short.

LOOK HERE

Awkward Unicorn Explains Database Normalization

on April 3, 2024

Why do we “normalize” relational databases, and what are the basics? Awkward Unicorn explains, with a little help from their friends.

LOOK HERE

SQL Basics (SELECT, FROM, WHERE) with Freyja the Corgi

on April 1, 2024

Freyja the corgi shares her tips for learning SQL: SELECT, FROM, and WHERE.

Now that I’m getting the hang of this, I think I’m going to do a whole series of shorts on SQL syntax essentials, plus tips and tricks!

LOOK HERE

Rita the Raccoon Writes SQL

on March 28, 2024

I learned to make short form videos with my drawings this week, and, well… things are about to get weirder.

LOOK HERE