Skip to content

Nathan Courtine

Nathan Courtine has more than nine years of experience in Microsoft solutions, specializing in SQL Server installation, migration, performance analysis, and automation. He holds Microsoft Certified Solutions Expert (MCSE), Microsoft Certified Azure Administrator Associate, and AWS Certified Solutions Architect Associate credentials. He holds a Computer Science degree from ENSISA Mulhouse. His industry experience covers the public sector, pharma, IT, and banking/financial services.

40 posts since December 2013

How to Standardize SQL Server Disks on VMs using Ansible

INTRODUCTION Today, the benefits of automation no longer need much explanation: saving time, reducing human error, and ensuring every environment remains aligned with internal standards. What is less obvious, however, is how using an Ansible Playbook can provide advantages that more traditional scripting approaches — such as large PowerShell scripts — struggle to offer. That is exactly what I want… 

Automate encryption-in-transit for SQL Server

Encryption-in-transit is part of the essential security baseline for SQL Server.Without TLS, TDS packets travel in clear text across the network, making them vulnerable to interception or modification by an attacker attempting to gain access to the system.This is why TLS has become a standard in modern SQL Server architectures. In this article, we will look at how to standardize… 

Guidance for a SQL Server backup strategy in AWS EC2

INTRODUCTION S3 storage is the most resilient and available service in AWS: is a trusted service for storing backups over the long term. From a Windows Server machine, in AWS EC2 or elsewhere, the easiest and most reliable way to make a backup from SQL Server: 1- Concept For data that must be available over a long period of time… 

SQL Server 2025 – AG Commit Time

SQL Server 2025 preview has been publicly available for a week now: you can find all the details in this blog “SQL Server 2025 Public Preview and SSMS 21 now available“.In this blog, I want to make an highlight on one Engine High Availability (HA) feature: Availability Group Commit Time. For a little background, Always On Availability Group (AG) is… 

SQL Konferenz 2024 – Microsoft Copilots

Today, we followed (with Roger Schönmann) the first day of the SQL Konferenz 2024.  We will be attending this event from October 01 to 02 in Hanau. At dbi services, we are no strangers to this conference, as we have been sending members of our team for several years now.We consider the sessions to be of high quality and right… 

Attach database error (SMB Fileshare)

Starting with SQL Server 2012, SQL Server supports databases using the Server Message Block (SMB) file server as a storage option. For performance and reliability reasons, SMB 3.0 or later is preferred to use.For architectures like Always On Failover Cluster Instance (FCI), it can be a relevant alternative to cluster disks. To avoid a single point of failure (SPOF) scenario,… 

Move SQL Server database files to different folders with PowerShell

In my previous post, I explained how to move SQL Server databases files programmatically by leveraging the high availability of an Availability Group (AG).But when you can afford to have a database unavailable for a short time, and if it is of a reasonable size, then an offline approach may be desirable. This will have the advantage of also working… 

Move secondary database files in SQL Server AG with PowerShell

For some circumstances, you may want to move data and log files for a database to a different location.Usually, this operation has to be made offline. But with an Availability Group (AG) environment, it is possible to choose an approach which is slightly transparent. If you have a lot of databases to process, you may want to automate this operation:… 

Installing Azure AZ Module on Windows

Since Azure (or AzureRM) module is marked as deprecated some years ago, AZ module is the official replacement to manage Azure resources with PowerShell. This module is running with at least PowerShell 7.0.6 LTS (Long Term Support) or PowerShell 7.1.3, but higher versions are recommended. When PowerShell from 1.0 to 5.1 are component of Windows operating systems, PowerShell 7 is… 

Get SQL Server database size with PowerShell

Introduction For various reasons, following the evolution of the data size of databases is interesting for a dba or for the application team. Most of the time, this is something built-in for monitoring tools – convenient to follow the evolution over the time.But in certain circumstances, you must turn to another alternative – no access to the monitoring tool, no… 

Access Check Results entries too large, resulting in a memory pressure

As part of a MSSQL consolidation project, with application servers located in one domain and the databases in another, we received an alert indicating that some databases were not available. After starting the investigation, we discovered that the Availability Group (AAG), to which these databases belong, was temporary taken in RESOLVING_NORMAL: The state of the local availability replica in availability…