Pocket Square

Server Audits Running

Blitz Result: Server Audits Running Microsoft SQL Server 2008 introduced new compliance features in the form of Server Audits.  They’re like traces, but they’re tuned to go faster and only track a minimum number of events. In theory. In practice, people can set up audits to cover a crazy number of events, like every select…
Read More
Pocket Square

Startup Stored Procedures in Master

Some things start up with a bang Blitz Result: Startup Stored Procedures in Master When SQL Server starts up, it can automatically run stored procedures in the background.  These stored procedures can set up auditing, check for permissions, or heaven forbid, set up back doors. Some third-party auditing and compliance software works via startup stored…
Read More
Pocket Square

Jobs Owned by User Accounts

Jobs Owned by User Accounts SQL Server Agent jobs are like hot potatoes: they’re owned by whoever touched ’em last.  The job owner doesn’t really mean much – jobs can be owned by anyone and they’ll still work the same way. Right up until the job owner’s account is dropped. If the SQL Server was…
Read More
Pocket Square

Security Admins List

Security admins can pat down any login- which gives them a lot of power. Blitz Result: Security Admins List Like sysadmins, don’t think of these security accounts as just plain security admins. Think of them as users who can get you fired. “But you said that about sysadmins!” Yep. But the sysadmins aren’t alone. Anyone…
Read More
Pocket Square

Sysadmins List

It may be time to trip the alarm on your sysadmins. Blitz Result: Sysadmins List Don’t think of these security accounts as sysadmins. Think of them as users who can get you fired. Anyone in the sysadmin role can perform any task whatsoever, including covering their tracks. This part of our SQL Server sp_Blitz script…
Read More
Pocket Square

MSDB History Not Purged

We’ve got a little bit of backup history here. Blitz Result: MSDB History Not Purged SQL Server tracks the history of every backup.  It stores this data in the MSDB database.  That’s a system database, and by default, our system databases are stored on the C drive unless specified otherwise during installation. This poses danger…
Read More
Pocket Square

Thanks for registering. You’re now in an elite club. Well, a club.

Cheers! Alright, you’re in. Here’s a direct zip file link to my SQL Server First Responder Kit (zip). It’s full of stuff to help make your SQL Server faster and more reliable. I’d suggest opening sp_Blitz.sql first in SSMS. Run that, and it creates the sp_Blitz stored proc – you can put it in any database you…
Read More

Five Favorite Free SQL Server Downloads

SQL Server
20 Comments
So you’re lazy and you’re company’s broke – what to do?  Here’s my favorite free downloads to help manage SQL Server: Understand execution plans with SQL Sentry Plan Explorer – I dunno about you, but viewing execution plans in SQL Server Management Studio is a pain in my rear.  The scrolling sucks, the cost numbers…
Read More

How to Use sp_WhoIsActive to Find Slow SQL Server Queries

SQL Server
SQL Server database administrators need to be able to quickly find out what queries and stored procedures are running slow.  Microsoft includes sp_who and sp_who2 in SQL Server 2005 and 2008, but there’s a much better tool, and it’s completely free. In this five minute tutorial video, I explain how to use sp_WhoIsActive from Adam…
Read More
Pocket Square

Wait Stats

Using Wait Stats to Find Why SQL Server is Slow Forget page life expectancy, buffer cache hit ratio, and disk queue length – those antiquated stats worked great for Grandpa, but it’s time to find an easier way to tune. Whenever SQL Server is running queries, it’s tracking how much time it spends waiting on…
Read More
Pocket Square

Scaling SQL Server

Scale Up or Scale Out? Scaling SQL Server I would like to scale up my coffee cup. Want your app to be able to handle more users? Here are tips, tricks, and links to comprehensive references on how to scale SQL Server– either Scale Up or Scale Out. Do You Really Have a Scale Problem? It…
Read More

How to BACKUP LOG WITH TRUNCATE_ONLY in SQL Server 2008, R2, 2012, 2014, 2016, 2017, 2019

BACKUP LOG WITH TRUNCATE_ONLY is a dangerous command: it empties out the contents of your SQL Server’s transaction log without really backing it up.  Database administrators sometimes run this command right before shrinking their log file with a DBCC SHRINKFILE command, thereby freeing up drive space. Why ‘truncate_only’ is not a recognized backup option. When…
Read More
Pocket Square

SQL Server Database Performance Tuning

You’re a developer, DBA, or sysadmin stuck with long running queries in SQL Server, and you need to do SQL Server performance tuning. I can help! I’m a consultant, and I do this for a living. I don’t keep anything secret – I’ll tell you how you can get started, or if you prefer, you…
Read More
Param.txt

SQLIO Tutorial: How to Test Disk Performance

SQL Server, Storage
Storage is a black box, right?  The SAN admins ask how much storage space you need, you tell them, and then they give it to you.  They don’t tell you how fast (or slow) it is, they don’t know whether it meets your needs, and they probably don’t know where the bottlenecks are. It’s time…
Read More