Category: SQL Server

Streamline your failovers with contained Availability Groups

Streamline SQL Server Management with Contained Availability Groups

SQL Server Availability Groups can present challenges after a failover, such as missing logins, outdated passwords, or absent SQL Server Agent jobs. Some clients address these issues by requiring the primary replica to remain on the same instance. If a failover occurs due to an outage or patching, they generally request to revert the AG…
Read more

Manually Adjusting Compatibility Level Settings in SQL Server

A Manual Adjustment: Compatibility Level Settings in SQL Server

A database on a specific SQL Server version doesn’t automatically have all features enabled. For example, a database on SQL Server 2019 can still use SQL Server 2014 compatibility, missing some 2019 features. Each database has a Compatibility Level setting that activates certain features of its version. When SQL Server 2014 introduced the Cardinality Estimator,…
Read more

When (Not) to Use NOLOCK

Quick Tips for Faster SQL Servers: When (Not) to Use NOLOCK

Many developers mistakenly use WITH (NOLOCK) in their SELECT statements without fully understanding its effects. While they might aim to speed up queries or prevent deadlocking, NOLOCK can actually lead to invalid results. What does NOLOCK do? A SELECT statement in SQL Server locks data to prevent modifications during querying. The lock is released after…
Read more

A team gathered to build an Availability Group together.

Building an Availability Group? Involve Key Players First.

So, you’ve decided your organization’s data needs to remain highly available. Given the options in SQL Server, you’ve decided an Availability Group makes the most sense for your scenario. What’s next? Involve Stakeholders Early in the Process of Building a SQL Server Availability Group Before jumping into building your Availability Group, it’s crucial to identify…
Read more

Image of a lost person reading a road map. This is your SQL Server when you use the "sp_" prefix to name a stored procedure and send it the long way around.

Quick Tips for Faster SQL Servers: Don’t Name Your Stored Procedures Using The “sp_” Prefix

A common mistake database developers make in SQL Server is naming their stored procedures with the “sp_” prefix. Organizations sometimes even adopt this as a standard convention (along with the “tbl_” prefix for tables!). So, why is this considered a bad practice? It’s inefficient. The “sp_” prefix is used by SQL Server to designate internal…
Read more

High availability options--which one should you choose?

Availability Groups: What’s Right for Your Business?

I’ve had several companies inquire about SQL Server’s built-in high availability options over the years. This conversation usually indicates a need to ensure that their database systems remain operational and accessible with minimal downtime. But why now? They’ve been in business for years and are just now interested in HA/DR. What changed? Reasons vary, but…
Read more

SQL Server memory configuration fine-tunes your servers' performance.

SQL Server Settings: Memory Configuration

SQL Server is designed to efficiently manage memory on its own. It requests memory when it’s needed and releases memory back to the system when it’s not. However, the default settings may not be ideal for your situation. An experienced database administrator will usually fine-tune these settings to optimize performance and server stability. Minimum server…
Read more

Extended Support expires July 14, 2026

Should I Upgrade? Understanding Mainstream and Extended Support for SQL Server

“So, I’ve heard that SQL Server 2016 Extended Support expires on July 14, 2026. That doesn’t sound like a good thing, but what exactly does it mean? Can I still use my SQL Server, or do I have to upgrade? And what’s the difference between Mainstream and Extended Support anyway?” That’s a pretty common question.…
Read more

SQL Server Database File Layout: Separating Data and Log Files When Using Flash Arrays

For years, I’ve recommended data and log files reside on separate drives for performance reasons. But given today’s flash arrays, virtualization, and much of the storage subsystem being abstracted, is separating data and log files still important? Short answer: yes, it should be, but don’t stop there. Long answer: it depends. You should review multiple…
Read more

sql server optimize for ad hoc workloads

SQL Server Settings: Optimize For Ad-hoc Workloads

I’m my last post on SQL Server Setting, I discussed MAXDOP and how it can affect SQL Server performance. In this post, I’ll review another SQL Server configuration setting that can impact performance – Optimize for Ad-hoc Workloads. What is the plan cache? Every time you run a query in SQL Server, an execution plan…
Read more