Measuring SQL Server File Latency

This post is a reference post for retrieving IO statistics for data and log files in SQL Server. We’ll look at where we can find IO statistics in SQL Server, query it to produce meaningful metrics, and discuss some key points when interpreting this data. The Source DMF The primary source for file latency data is the dynamic management function sys.dm_io_virtual_file_stats. The data in this DMF is per file. The query below joins with sys.

Best Practices for SQL Server on VMware - Distilled

The intent of this post is a quick reference guide based on the recommendation made in “Architecting Microsoft SQL Server on VMware vSphere” April 2019 version. The target audience for this blog post is for SQL Server DBAs introducing them to the most impactful configurations and settings for running SQL Server in VMware. For the explanations for each of these settings and how to configure the base VMware infrastructure, please read the “Architecting Microsoft SQL Server on VMware vSphere” guide and consult with your VMware administrators and experts.

Setting Permissions on Files Inside a Container for SQL Server

This post will walk you through setting file permissions on database files copied into a container. The SQL Server process sqlservr running in containers runs as the non-privileged user mssql. The appropriate permissions on files are needed, so the SQL Server process has the proper access to any database files, log files, and backup files. Start up a container First up, let’s start up a container. Here’s we’re starting up SQL Server 2019 CU11 and attaching a Docker data volume for our persistent data.

My Desktop Setup - Updated

Every once in a while when I’m recording a Pluralsight course, I’ll take a photo of my desk to let people see the behind the scenes of the process. Well, my friend Steve Jones (@way0utwest) encouraged me to write a desk setup post…so here we go! Desk Autonomous SmartDesk 2 - Home Office Most standup desks come at a much higher price point, and this one lands somewhere between $379-$500 depending on the features.

Pure Storage Flasharray SQL Server Snapshot Torture...You Kinda Asked for This

By Argenis Fernandez This post is archived here. Pleae reach out to me, Anthony Nocentino if you have any questions. I gotta admit, some of you are really hard to convince. I’ve been saying for years that given a large enough database size (or a really small RTO storage based snapshots should be Plan A for recovering the database in the event of a disaster. Yes, you will have a Plan B, likely native backups.

Updated Pluralsight Course – Managing Kubernetes Controllers and Deployments

My updated course “Managing Kubernetes Controllers and Deployments” is now available on Pluralsight here! If you want to learn about the course, check out the trailer here or if you want to dive right in check it out here! Learn how to deploy and maintain applications using Kubernetes Controllers. In this course you’ll learn how to select a Controller for your workload, deploy it, and maintain your container-based applications in your Kubernetes cluster.

Setting Trace Flags and Configuring SQL Server in Kubernetes

In this blog post, we will walk through a few examples of configuring SQL Server in Kubernetes. First, we will create a Deployment for SQL Server, override the container’s command, and specify a Database Engine Service Startup Option. Second, we will create a Deployment for SQL Server using a ConfigMap to inject an mssql.conf configuration file. Creating a SQL Server Deployment and Overriding the Container’s Command and Arguments First up, let’s create a Deployment for SQL Server and override the container’s command specify a Database Engine Service Startup Option.

Setting Trace Flags and Configuring SQL Server Containers

In this blog post, we will walk through a few examples of how to configure SQL Server in Docker Containers. First, we will configure a container at runtime by overriding the default docker command for the container and setting Database Engine Service Startup Options. Second, we’re going to inject a configuration file into our container to configure SQL Server. Let’s go! Starting a Container with a Trace Flag First up, let’s configure a container at runtime using Database Engine Service Startup Options.

SQL Server on Kubernetes Book Published!

I’m super proud to announce that Ben E. Weissman and I have published SQL Server on Kubernetes – Designing and Building a Modern Data Platform available now at Apress and your favorite online book sellers! Buy the book now…or keep reading below if you need to be more convinced :) A couple of notes about the book, I saw Kubernetes showcased at a Microsoft event a few years back. I immediately saw the value and dedicated time to learning how Kubernetes and SQL Server on Kubernetes works.

Container Limits and SQL Server

Limits in Containers Docker gives you the ability to control a container’s access to CPU, Memory, and network and disk IO using resource constraints, sometimes called Limits. You define limits as parameters when creating containers. In its default configuration, a container will have no resource constraints for accessing resources of the host operating system. This post will look at how to configure resource constraints in Docker and look at how SQL Server sees the resources when CPU and Memory resource constraints are in place.