<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>SQL Server Consulting &#8211; Straight Path Solutions</title>
	<atom:link href="http://straightpathsql.com/feed/" rel="self" type="application/rss+xml" />
	<link>https://straightpathsql.com/</link>
	<description>Database Managed Services and Pain Relief. Sleep at night!</description>
	<lastBuildDate>Fri, 30 Oct 2026 23:33:07 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	

<image>
	<url>https://straightpathsql.com/wp-content/uploads/2026/03/cropped-straight-path-solutions-logo-square-32x32.png</url>
	<title>SQL Server Consulting &#8211; Straight Path Solutions</title>
	<link>https://straightpathsql.com/</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Introducing sp_CheckActivity</title>
		<link>https://straightpathsql.com/introducing-sp_checkactivity/</link>
					<comments>https://straightpathsql.com/introducing-sp_checkactivity/#respond</comments>
		
		<dc:creator><![CDATA[Andrew Kelly]]></dc:creator>
		<pubDate>Mon, 02 Nov 2026 11:00:00 +0000</pubDate>
				<category><![CDATA[DBA Tools & Automation]]></category>
		<category><![CDATA[SQL Server Performance]]></category>
		<category><![CDATA[Free Tools]]></category>
		<category><![CDATA[sp_CheckActivity]]></category>
		<category><![CDATA[SQL Server]]></category>
		<guid isPermaLink="false">https://straightpathsql.com/?p=5434</guid>

					<description><![CDATA[<p>We are releasing a new FREE tool for you to use with your SQL Server instances. Our sp_CheckActivity page explains the requirements, parameters, download instructions, and more, and should answer most questions about using the tool. In this post, Andrew Kelly explains a bit more about why he created it, and how he uses it. ... <a title="Introducing sp_CheckActivity" class="read-more" href="https://straightpathsql.com/introducing-sp_checkactivity/" aria-label="Read more about Introducing sp_CheckActivity">Read more</a></p>
<p>The post <a href="https://straightpathsql.com/introducing-sp_checkactivity/">Introducing sp_CheckActivity</a> appeared first on <a href="https://straightpathsql.com">SQL Server Consulting - Straight Path Solutions</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph"><em>We are releasing a new FREE tool for you to use with your SQL Server instances. Our <a href="https://straightpathsql.com/sp_check/sp_checkactivity/">sp_CheckActivity</a> page explains the requirements, parameters, download instructions, and more, and should answer most questions about using the tool. In this post, Andrew Kelly explains a bit more about why he created it, and how he uses it.</em></p>



<h2 id="h-what-is-sp-checkactivity-and-why-did-i-create-it" class="wp-block-heading"><strong>What is sp_CheckActivity, and why did I create it?</strong></h2>



<p class="wp-block-paragraph">I initially created the first version of this utility many years ago as an alternative to the immensely popular tool developed by Adam Machanic called <a href="http://whoisactive.com/">sp_WhoIsActive</a>. I wanted something that would suit most of my everyday needs for a snapshot type of view of the current activity on a SQL Server instance.</p>



<p class="wp-block-paragraph">I know what you are thinking: why couldn’t I just use sp_WhoIsActive?&nbsp;</p>



<p class="wp-block-paragraph">Well, I have used it for many years and in some cases still do when a special need arises. The main motivator for creating sp_CheckActivity was not for lack of features but…it’s more like there can be too many.</p>



<p class="wp-block-paragraph">sp_WhoIsActive has always been a great tool and still is. Adam did a fantastic job all those years ago when he gave the SQL Server community a tool like no other at the time. I am sure it is used by many tens (maybe even hundreds) of thousands of users around the world, and that is a testament to just how useful and powerful it is to this day.</p>



<p class="wp-block-paragraph">However, I found that for my daily work environment it could be a little too intensive on very busy systems. These were 200+ core machines with 4 to 8TB of memory and thousands of users and today’s servers can dwarf even those. What we found was during the peak periods of activity, sp_WhoIsActive could take many minutes to return the results even with mostly default parameters. As such, I needed a way to capture similar data with less overhead and faster results and thus my custom tool was born.</p>



<p class="wp-block-paragraph">Did it speed up the results? Under low to medium workloads there is little noticeable difference in most cases. However, under more extreme workloads I found it could return results in a fraction of the time such as seconds vs minutes. I purposely didn’t list exact specifications here as workloads vary dramatically and YMMV. Why is this, you may ask?&nbsp; In a nutshell, it is because sp_CheckActivity simply does not have as wide a range of functionality as sp_WhoIsActive, and in some cases does not dig as deep into the DMV’s that can give us so much information as to what is happening.</p>



<h2 id="h-what-were-the-design-goals" class="wp-block-heading"><strong>What were the design goals?</strong></h2>



<p class="wp-block-paragraph">Before I started to develop the tool, I wrote down what metrics I needed to be reported on for most of my daily activity monitoring needs and started from there. Again, keeping in mind that this was never meant to be a full replacement for Adam’s tool that has so much capability. I was looking for lower overall overhead that still reported on the metrics I most cared about day to day.</p>



<p class="wp-block-paragraph">An example of this is the ability of sp_WhoIsActive to report wait times by thread. While that is awesome and can certainly be useful, I found in most cases I did not need to go down to that level, and thus did not want the extra overhead it took to get that information.</p>



<p class="wp-block-paragraph">You will notice sp_CheckActivity has a similar look and feel, if you will, to sp_WhoIsActive. But it was written from scratch to meet my immediate needs, and much of that same data is collected and reported on although not always in the same way. For instance, I report current and historical TempDB usage in GBs instead of pages.</p>



<p class="wp-block-paragraph">I never intended this tool to be public, but I have received many requests to do so and, well, here we are. And more recently I was asked to add functionality which I agreed to, since it did not add any significant overhead and was able to make the tool even more useful for other folks. The most recent additions (outlined by their parameter names) are listed below.</p>



<p class="wp-block-paragraph">Note that none of these are run by default and thus do not incur any additional overhead unless specifically invoked.</p>



<h2 id="h-what-is-included-with-the-new-functionality" class="wp-block-heading"><strong>What is included with the “new functionality”?</strong></h2>



<p class="wp-block-paragraph"><strong>@ShowProgress</strong> &#8211; specifically returns results for any operation in which the % Complete metric is populated in the sys.dm_exec_requests DMV. Using @ShowProgress not only shows the % Complete value, but also how long it has been running and the estimated completion time in hh:mm:ss.&nbsp; According to the Microsoft documentation these are the types of command in which this information is exposed, so we can take action:</p>



<p class="wp-block-paragraph"><code>ALTER INDEX REORGANIZE</code><br><code>BACKUP DATABASE</code><br><code>DBCC CHECKDB</code><br><code>DBCC CHECKFILEGROUP</code><br><code>DBCC CHECKTABLE</code><br><code>DBCC INDEXDEFRAG</code><br><code>DBCC SHRINKDATABASE</code><br><code>DBCC SHRINKFILE</code><br><code>RECOVERY</code><br><code>RESTORE DATABASE</code><br><code>ROLLBACK</code><br><code>TDE ENCRYPTION</code></p>



<p class="wp-block-paragraph"><strong>@ShowBlocking</strong> &#8211; this is a simplified but useful option to show any blocking that is occurring with the Lead Blockers separated from the sessions being blocked. This serves me well in the majority of blocking cases I deal with.</p>



<p class="wp-block-paragraph"><strong>@ShowTopProc</strong> – normally the results will show the individual statement that is currently running along with the Batch / Procedure / UDF in which it was immediately called from. With this option it will also show the outermost object vs. just the parent object. This can help find the calling chain when you have lots of nested calls.</p>



<h2 id="h-summary" class="wp-block-heading"><strong>Summary</strong></h2>



<p class="wp-block-paragraph">If you are already familiar with sp_WhoIsActive, please try sp_CheckActivity on its own terms. Think of it as a general-purpose lighter-weight tool for daily activity monitoring tool rather than a direct replacement. It should fit many environments, but you may may need a specific functionality this may not have and that is fine. No single tool fits every need otherwise we would not be here today.</p>



<p class="wp-block-paragraph">I would like to hear what features you’d find useful and I would love to hear about them. You can leave a comment in this post, and if you discover a bug or would like to request a feature you can note it on the <a href="https://github.com/Straight-Path-Solutions/sp_Check/issues">Issues page in the GitHub repository</a>. However, please keep in mind the original design goals were to be relatively lightweight, so we want to ensure this doesn’t get bloated over time.</p>



<p class="wp-block-paragraph">I hope many of you find this tool useful.</p>



<p class="wp-block-paragraph"></p>
<p>The post <a href="https://straightpathsql.com/introducing-sp_checkactivity/">Introducing sp_CheckActivity</a> appeared first on <a href="https://straightpathsql.com">SQL Server Consulting - Straight Path Solutions</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://straightpathsql.com/introducing-sp_checkactivity/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Updates for all sp_Check tools – October 2026</title>
		<link>https://straightpathsql.com/updates-for-all-sp_check-tools-october-2026/</link>
					<comments>https://straightpathsql.com/updates-for-all-sp_check-tools-october-2026/#respond</comments>
		
		<dc:creator><![CDATA[Jeff Iannucci]]></dc:creator>
		<pubDate>Wed, 28 Oct 2026 22:40:35 +0000</pubDate>
				<category><![CDATA[Company News]]></category>
		<category><![CDATA[DBA Tools & Automation]]></category>
		<category><![CDATA[Free Tools]]></category>
		<category><![CDATA[sp_check]]></category>
		<category><![CDATA[sp_checkAG]]></category>
		<category><![CDATA[sp_CheckBackup]]></category>
		<category><![CDATA[sp_CheckHealth]]></category>
		<category><![CDATA[sp_CheckSecurity]]></category>
		<category><![CDATA[sp_CheckTempdb]]></category>
		<guid isPermaLink="false">https://straightpathsql.com/?p=5424</guid>

					<description><![CDATA[<p>We&#8217;ve been busy updating our suite of sp_Check tools, but…we forgot to tell you about that. And by we I mean me, so this post from me is to rectify that issue. Speaking of issues, we have added a bunch of new issues to check for in sp_CheckSecurity recently. Fabiano Amorim and Andreas Wolter have ... <a title="Updates for all sp_Check tools – October 2026" class="read-more" href="https://straightpathsql.com/updates-for-all-sp_check-tools-october-2026/" aria-label="Read more about Updates for all sp_Check tools – October 2026">Read more</a></p>
<p>The post <a href="https://straightpathsql.com/updates-for-all-sp_check-tools-october-2026/">Updates for all sp_Check tools – October 2026</a> appeared first on <a href="https://straightpathsql.com">SQL Server Consulting - Straight Path Solutions</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">We&#8217;ve been busy updating our suite of sp_Check tools, but…we forgot to tell you about that. And by we I mean me, so this post from me is to rectify that issue.</p>



<p class="wp-block-paragraph">Speaking of issues, we have added a bunch of new issues to check for in sp_CheckSecurity recently. Fabiano Amorim and Andreas Wolter have been doing great work writing about SQL Server security issues, and we have tried to keep up with their findings by including new checks in sp_CheckSecurity. We would HIGHLY recommend updating your copy of that tool if you haven&#8217;t done so recently.</p>



<p class="wp-block-paragraph">We&#8217;ve also added checks to our other tools, as well as made some parameter changes. And we added a MATRIX.md file so you can see which checks are in which tools.</p>



<p class="wp-block-paragraph">For a full list of features, here are the recent Release Notes. Note that the 3-digit numbers relate to the new CheckIDs. Enjoy!</p>



<h2 id="h-sp-checkag" class="wp-block-heading"><a href="https://github.com/Straight-Path-Solutions/sp_Check/tree/main/sp_CheckAG">sp_CheckAG</a></h2>



<p class="wp-block-paragraph">&nbsp; 2026.9.1</p>



<ul class="wp-block-list">
<li> Formatting changes only.</li>
</ul>



<p class="wp-block-paragraph">&nbsp; 2026.10.1</p>



<ul class="wp-block-list">
<li> New check: 380 Endpoint encryption (Medium), for an endpoint that uses RC4 or no encryption.</li>



<li> Fix: the error log temporary tables are widened to avoid truncation errors.</li>
</ul>



<h2 id="h-sp-checkbackup" class="wp-block-heading"><a href="https://github.com/Straight-Path-Solutions/sp_Check/tree/main/sp_CheckBackup">sp_CheckBackup</a></h2>



<p class="wp-block-paragraph">&nbsp; 2026.9.1</p>



<p class="wp-block-paragraph">&nbsp; &#8211; New checks:</p>



<ul class="wp-block-list">
<li> 219 Backups not encrypted (Medium, SQL Server 2014 and later)</li>



<li> 220 Backups written to a local drive (Medium)</li>
</ul>



<p class="wp-block-paragraph">&nbsp; &#8211; Both use a single read of the last 7 days of full backups from msdb.</p>



<p class="wp-block-paragraph">&nbsp; 2026.10.1</p>



<ul class="wp-block-list">
<li>Fix (certificate checks 210 and 212): COLLATE DATABASE_DEFAULT is now applied when building the certificate details text. This fixes &#8220;Cannot resolve collation conflict&#8221; (Msg 446) when msdb and the install database have different collations, for example on servers hosting SSRS databases.</li>



<li>Fix: the error log temporary tables (#FailedBackups, #ErrorLog) are widened to avoid truncation errors.</li>
</ul>



<h2 id="h-sp-checkhealth" class="wp-block-heading"><strong>  </strong><a href="https://github.com/Straight-Path-Solutions/sp_Check/tree/main/sp_CheckHealth">sp_CheckHealth</a></h2>



<p class="wp-block-paragraph">&nbsp; 2026.9.1</p>



<p class="wp-block-paragraph">&nbsp; &#8211; New checks:</p>



<ul class="wp-block-list">
<li> 358 SPN registration failed (High)</li>



<li> 375 SQLAgentOperatorRole membership (High)</li>



<li> 378 Always Encrypted column master key on database server (High)</li>



<li> 633 Default trace disabled (High)</li>
</ul>



<p class="wp-block-paragraph">&nbsp; 2026.10.1</p>



<ul class="wp-block-list">
<li> Result sets: at the default @Mode = 99 it now returns two result sets, instance information followed by problem findings.</li>



<li> Header row: the CheckID 0 header row is in the findings set, not the instance information.</li>



<li> Other modes: @Mode = 1 returns instance information only, @Mode = 0 returns findings only, and @Mode = 11 is unchanged.</li>
</ul>



<p class="wp-block-paragraph">&nbsp; &#8211; Fixes:</p>



<ul class="wp-block-list">
<li> The error log temporary tables are widened (ProcessInfo nvarchar(255), text nvarchar(max), LogDate datetime2), which fixes Msg 8152 on long log lines.</li>



<li> CheckID 720 no longer raises the &#8220;Null value is eliminated by an aggregate&#8221; warning, because the CASE expressions now have ELSE 0. Results are unchanged.</li>
</ul>



<h2 id="h-sp-checksecurity" class="wp-block-heading"><strong>  </strong><a href="https://github.com/Straight-Path-Solutions/sp_Check/tree/main/sp_CheckSecurity">sp_CheckSecurity</a></h2>



<p class="wp-block-paragraph">&nbsp; 2026.9.1</p>



<p class="wp-block-paragraph">&nbsp; &#8211; New checks (Security):</p>



<ul class="wp-block-list">
<li>   357 NTLM authentication in use (Medium)</li>



<li>   358 SPN registration failed (High)</li>



<li>   359 Legacy password hash algorithm (High)</li>



<li>   360 SQL authentication in use (Medium)</li>



<li>   361 Guest user has CONNECT permission (Medium)</li>



<li>   362 Contained database users (Medium)</li>



<li>   363 Application roles detected (Medium)</li>



<li>   364 Certificate or asymmetric key mapped login (Medium)</li>



<li>   365 Server role membership with escalation path (High)</li>



<li>   366 Custom server role with elevated permissions (High)</li>



<li>   367 BUILTIN\Administrators exists as a login (Medium)</li>



<li>   368 ALTER ANY SERVER AUDIT granted to login (High)</li>



<li>   369 External scripts enabled (Medium)</li>



<li>   370 ALTER SETTINGS granted to login (High)</li>



<li>   371 Unsigned assembly with elevated permission set (High)</li>



<li>   372 Assembly creation permission granted to login (High)</li>



<li>   373 Trusted assembly registered (High)</li>



<li>   374 Agent proxy accessible to non-sysadmin (High)</li>



<li>   375 SQLAgentOperatorRole membership (High)</li>



<li>   376 Logon trigger (Medium)</li>



<li>   377 Extended stored procedure registered (Medium)</li>



<li>   378 Always Encrypted column master key on database server (High)</li>



<li>   379 SQL Server Audit not capturing security actions (Medium)</li>
</ul>



<p class="wp-block-paragraph">&nbsp; &#8211; New checks (other categories):</p>



<ul class="wp-block-list">
<li>   202 Backups without checksum (Medium)</li>



<li>   219 Backups not encrypted (Medium, SQL Server 2014 and later)</li>



<li>   220 Backups written to a local drive (Medium)</li>



<li>   633 Default trace disabled (High)</li>
</ul>



<p class="wp-block-paragraph">&nbsp; &#8211; Changed checks:</p>



<ul class="wp-block-list">
<li> 354 is now &#8220;Server-level permissions granted to login&#8221;. It covers ALTER ANY LOGIN, IMPERSONATE ANY LOGIN, ALTER ANY SERVER ROLE, ALTER ANY CREDENTIAL and ALTER ANY LINKED SERVER.</li>



<li> 355 was &#8220;ALTER ANY LOGIN permissions&#8221;. It is now &#8220;Orphaned database user with elevated permissions&#8221; (High).</li>



<li> 309 (CLR enabled) is now High. On SQL Server 2017 and later it flags CLR enabled with clr strict security off, even when SSISDB exists. On 2016 and earlier it still excludes servers with SSISDB.</li>



<li> Modes: @Mode = 1 is now instance information only, and the new @Mode = 2 returns High-importance items only. Modes 0 and 99 are unchanged in meaning.</li>



<li> Output: the Importance column is now numeric (0 to 3) rather than text like &#8220;1 &#8211; High&#8221;. Instance information labels no longer have leading spaces.</li>
</ul>



<p class="wp-block-paragraph">&nbsp; 2026.10.1</p>



<ul class="wp-block-list">
<li> New check: 380 Endpoint encryption (Medium). It flags a database mirroring endpoint using RC4 or no encryption,  including mixed AES RC4 settings.</li>



<li> Instance information: the current state (Importance 0) of ten settings now appears: 310, 311, 319, 341, 342, 343, 345, 347, 348, 349.</li>



<li> Issues: those ten now appear as findings only when enabled, except 310 (remote admin connections), which appears only when disabled. Their importance is unchanged.</li>



<li> Registry reads: the Hide Instance, Extended Protection and Force Encryption reads happen once, and the Extended Protection read now uses @no_output.</li>



<li> Fix: the error log temporary tables are widened (ProcessInfo nvarchar(255), text nvarchar(max), LogDate datetime2). That avoids &#8220;String or binary data would be truncated&#8221; on long log lines.</li>
</ul>



<h2 id="h-sp-checktempdb" class="wp-block-heading"><a href="https://github.com/Straight-Path-Solutions/sp_Check/tree/main/sp_CheckTempdb">sp_CheckTempdb</a></h2>



<p class="wp-block-paragraph">&nbsp; 2026.9.1</p>



<ul class="wp-block-list">
<li> Formatting changes only.</li>
</ul>



<p class="wp-block-paragraph">&nbsp; 2026.10.1</p>



<ul class="wp-block-list">
<li> New check: 743 Large version store (Medium, High at 50% or more). It names the oldest open snapshot transaction when one exists.</li>



<li> New parameter: @VersionStorePercent, default 25, with a 1 GB minimum reserved, clamped to 100.</li>
</ul>



<p class="wp-block-paragraph"></p>
<p>The post <a href="https://straightpathsql.com/updates-for-all-sp_check-tools-october-2026/">Updates for all sp_Check tools – October 2026</a> appeared first on <a href="https://straightpathsql.com">SQL Server Consulting - Straight Path Solutions</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://straightpathsql.com/updates-for-all-sp_check-tools-october-2026/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>We Repair What Your AI Fixed: Where AI Belongs in Your Automation</title>
		<link>https://straightpathsql.com/we-repair-what-your-ai-fixed-where-ai-belongs-in-your-automation/</link>
					<comments>https://straightpathsql.com/we-repair-what-your-ai-fixed-where-ai-belongs-in-your-automation/#respond</comments>
		
		<dc:creator><![CDATA[David Seis]]></dc:creator>
		<pubDate>Thu, 22 Oct 2026 17:28:55 +0000</pubDate>
				<category><![CDATA[Database Administration]]></category>
		<guid isPermaLink="false">https://straightpathsql.com/?p=5398</guid>

					<description><![CDATA[<p>We&#8217;ve all tasted the fruit. AI is awesome. It is astounding what it can do, how much it can do, and how correct it can be. It is also equally scary and world-impacting, and we can all feel the ground turning a little fluid under our feet. I don&#8217;t have big answers, but I do ... <a title="We Repair What Your AI Fixed: Where AI Belongs in Your Automation" class="read-more" href="https://straightpathsql.com/we-repair-what-your-ai-fixed-where-ai-belongs-in-your-automation/" aria-label="Read more about We Repair What Your AI Fixed: Where AI Belongs in Your Automation">Read more</a></p>
<p>The post <a href="https://straightpathsql.com/we-repair-what-your-ai-fixed-where-ai-belongs-in-your-automation/">We Repair What Your AI Fixed: Where AI Belongs in Your Automation</a> appeared first on <a href="https://straightpathsql.com">SQL Server Consulting - Straight Path Solutions</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<h2 id="h-we-ve-all-tasted-the-fruit" class="wp-block-heading">We&#8217;ve all tasted the fruit.</h2>



<p class="wp-block-paragraph">AI is awesome. It is astounding what it can do, how much it can do, and how correct it can be. It is also equally scary and world-impacting, and we can all feel the ground turning a little fluid under our feet. I don&#8217;t have big answers, but I do have some automation-related opinions to share with you right now, and they come down to one idea: use AI to help build your automation, not to <em>be </em>your automation.</p>



<h5 id="h-ai-is-non-deterministic" class="wp-block-heading">AI is non-deterministic</h5>



<p class="wp-block-paragraph">As data people, we should all know what this means. Given the same data and the same prompt, AI can&#8217;t be trusted to do the same thing, make the same recommendation, or reach the same analysis twice. Even if it does today, the next model update can change its behavior without you changing anything. Reliable decision making should be based on reliable inputs.</p>



<h5 id="h-ai-is-a-black-box" class="wp-block-heading">AI is a black box</h5>



<p class="wp-block-paragraph">At the lowest levels, AI is still very much un-auditable. It is a black box according to the people developing it and the people trying to understand it. We can ask it why it did something, but its answer is just more generated text, not a record of what actually happened inside. We can see what it did, but we can&#8217;t verify why, and that means it can&#8217;t be audited the way a script can.</p>



<h5 id="h-ai-isn-t-accountable" class="wp-block-heading">AI isn&#8217;t accountable</h5>



<p class="wp-block-paragraph">In my own experience, and in the many horror stories on LinkedIn, AI still isn&#8217;t following the rules we try to set for it. It seems to have short-term memory loss when it comes to guardrails. It can&#8217;t be trusted to follow the rules, and even when it does follow them and still gets something wrong, it can&#8217;t be held accountable.</p>



<h5 id="h-ai-is-so-easy-to-use" class="wp-block-heading">AI is so easy to use</h5>



<p class="wp-block-paragraph">For many years, some of the worst SQL Server deployments have been described as someone clicking &#8220;next, next, finish&#8221; through the installer. Some AI usage is that same issue on jet fuel. It is so easy to hand it your own credentials, let it access the data, show it the schema, and give it the script. And in most cases, it will do an OK job of giving you something that does what you asked, but the problem is the same as next, next, finish: AI is going to implement what you ask for. The less you know, the higher the chance you aren&#8217;t asking for the best implementation.</p>



<h2 id="h-what-does-all-this-mean-for-you-and-your-automation" class="wp-block-heading">What does all this mean for you and your automation?</h2>



<p class="wp-block-paragraph">The more complex the requirements, the more resilient the solution needs to be, and the more an experienced person needs to be involved in engineering it. AI is a powerful force multiplier. An experienced engineer with a well-designed specification can burn through an implementation at blinding speed. The hardest parts of development are now design and testing. Design means being clear and detailed in what you ask for, with zero ambiguity as the target. Testing means having an environment to test the output in, and people experienced enough to know when the output is wrong, too complex, or was led in the wrong direction.</p>



<p class="wp-block-paragraph">The size of the project matters too. A simple automation to collect, store, and report on data doesn&#8217;t need an entire team of reviewers. However, we are seeing a boom in teams trying to use AI to replace enterprise-level software without the experience to confirm that the output is enterprise-ready for resilience, reliability, and security, among other things. Some are letting AI make major changes on their SQL Servers, which is why we recently had mugs made with &#8220;<a href="https://www.linkedin.com/feed/update/urn:li:activity:7509215856841691136/">We repair what your AI fixed</a>&#8221; on the side. Picture a transaction log filling up a drive. The AI switches the database to SIMPLE recovery, shrinks the log, and reports the problem fixed. It also just broke your log backup chain, and point-in-time recovery is gone until someone notices. The fallout of vibe-coded implementations at enterprise scale shows up again and again in technical groups and in the news.</p>



<h4 id="h-so-how-should-you-use-ai-in-your-automation" class="wp-block-heading">So how should you use AI in your automation?</h4>



<p class="wp-block-paragraph">I&#8217;ve rambled enough. I&#8217;m an automation guy, and I love encouraging you to find ways to save time. In this post I want to be clear that AI is a powerful tool, but implementation should be careful and intentional. Here are a few guidelines for how I would start bringing AI into your automated tasks.</p>



<p class="wp-block-paragraph">One distinction before the list: AI can help you build almost any of these processes. These guidelines are about whether AI should <em>be</em> the process, making a judgment call every time it runs.</p>



<p class="wp-block-paragraph"><strong>Should nots:</strong></p>



<ol start="1" class="wp-block-list">
<li>Don&#8217;t use AI where you need deterministic output.&nbsp;Fetching data, sorting or organizing it, building a report with pass/fail counts: you don&#8217;t want two different answers from the same data. Let AI help write the script, then let the script produce the output.</li>



<li>Don&#8217;t use AI for processes that need auditing.&nbsp;AI can&#8217;t be held responsible, so don&#8217;t ask it to interpret something and then make a change to a production database. It won&#8217;t always make the right decision, make the same decision, or follow the rules. And if the scope is narrow enough that AI could never get it wrong, regular old scripting is cheaper anyway.</li>



<li>Don&#8217;t use AI for things you can&#8217;t undo.&nbsp;You don&#8217;t want to be up the creek when AI makes an irreversible decision, like reducing backup retention, turning off your restore test job, or running REPAIR_ALLOW_DATA_LOSS on your behalf.</li>
</ol>



<p class="wp-block-paragraph"><strong>Coulds:</strong></p>



<ol start="1" class="wp-block-list">
<li>Use AI to help with specs and well-designed, well-tested development.&nbsp;Have it poke holes in your spec, generate code against it, and write the tests, then run everything in a lab before it gets anywhere near production.</li>



<li>Use AI to interpret Windows, SQL Server, and application error messages during incident response.&nbsp;Make it cite the log entries it&#8217;s drawing from so you can check its work.</li>



<li>Use AI to triage and route.&nbsp;It can read the tone and urgency of tickets and alerts, suggest who should handle them, and loop in the right people.</li>



<li>Use AI to summarize and explain.&nbsp;Turn a 200-finding health check into a top five your manager will actually read, or get a second opinion on an execution plan.</li>
</ol>



<p class="wp-block-paragraph">The pattern behind all of the coulds: AI proposes, a person approves, a script executes.</p>



<h4 id="h-where-i-d-draw-the-lines" class="wp-block-heading">Where I&#8217;d draw the lines</h4>



<p class="wp-block-paragraph">Here&#8217;s how I&#8217;d sort some common DBA tasks. Most land in more than one column, and that&#8217;s the point: the script does the work, AI helps build it and make sense of it, and a person owns the decisions that can&#8217;t be undone.</p>



<figure class="wp-block-table"><table class="has-fixed-layout"><thead><tr><td><strong>Task</strong></td><td><strong>Script it</strong></td><td><strong>Let AI help with</strong></td><td><strong>A person decides</strong></td></tr></thead><tbody><tr><td>Collecting and storing server data</td><td>dbatools on a schedule</td><td>Writing the collection script</td><td>What to collect, how often, where it is saved, how it is viewed</td></tr><tr><td>Health check report with pass/fail counts</td><td>Same rules, every run</td><td>A plain-English summary</td><td>What pass/fail means, who the recipients are, when it is run </td></tr><tr><td>Nightly backups</td><td>On a schedule</td><td>Reviewing the job setup</td><td>Where backups belong, what RPO/RTO is needed for the business</td></tr><tr><td>Backup retention changes</td><td>Once approved</td><td>Drafting the change</td><td>Again RTO/RPO, long term backup retention strategy</td></tr><tr><td>Restore testing</td><td>Test-DbaLastBackup on a schedule</td><td>Summarizing the results</td><td>What target to restore backups on, who gets the results</td></tr><tr><td>Incident response</td><td>Gathering Windows, SQL Server, and app logs</td><td>Interpreting errors, with sources</td><td>The business rules for investigating, prior examples, what to do with the findings</td></tr><tr><td>Ticket and alert triage</td><td>Routing rules you define</td><td>Reading urgency and suggesting an owner</td><td>Who is assigned the ticket, defining what is ticketable</td></tr><tr><td>Patching</td><td>Update-DbaInstance</td><td>Summarizing release notes</td><td>The window and go/no-go</td></tr><tr><td>Permission changes</td><td>From an approved request</td><td>Drafting the script</td><td>Approving it, determining the permission rules, least privilege.</td></tr><tr><td>Corruption</td><td>DBCC CHECKDB on a schedule</td><td>Explaining the output</td><td>Anything involving REPAIR_ALLOW_DATA_LOSS,</td></tr><tr><td>Building new automation</td><td>The finished product</td><td>Spec review, code, and tests</td><td>Design and test sign-off, permissions, business requirements.</td></tr></tbody></table></figure>



<p class="wp-block-paragraph">Notice that AI never shows up alone in a row that changes production.</p>



<h4 id="h-final-thoughts" class="wp-block-heading">Final Thoughts</h4>



<p class="wp-block-paragraph">We&#8217;ve all tasted the fruit, and nobody is going back, me included. AI is going to keep getting better, and it&#8217;s already a powerful force multiplier for anyone building automation. But it multiplies whatever you bring to it. Bring experience, a clear spec, and a lab to test in, and you&#8217;ll build faster than you ever have. Bring next, next, finish, and you&#8217;ll also get there faster, just somewhere you didn&#8217;t want to go.</p>



<p class="wp-block-paragraph">Use AI to help design, write, and test your automation. Let the finished, reviewed, version-controlled script do the work. Keep a person on anything that can&#8217;t be undone.</p>



<p class="wp-block-paragraph">I love automation and the time it saves for me, the <a href="https://straightpathsql.com/about/">Straight Path team</a>, and our customers. The less time we spend on things that can be automated, the more time we have for things that can&#8217;t be. Used carefully and intentionally, AI gets us there faster. And if your AI has already fixed something, you know where to find us. We have mugs.</p>



<p class="wp-block-paragraph"></p>
<p>The post <a href="https://straightpathsql.com/we-repair-what-your-ai-fixed-where-ai-belongs-in-your-automation/">We Repair What Your AI Fixed: Where AI Belongs in Your Automation</a> appeared first on <a href="https://straightpathsql.com">SQL Server Consulting - Straight Path Solutions</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://straightpathsql.com/we-repair-what-your-ai-fixed-where-ai-belongs-in-your-automation/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>If You Are Moving to Postgres, Start Here</title>
		<link>https://straightpathsql.com/if-you-are-moving-to-postgres-start-here/</link>
					<comments>https://straightpathsql.com/if-you-are-moving-to-postgres-start-here/#respond</comments>
		
		<dc:creator><![CDATA[Amy Abel]]></dc:creator>
		<pubDate>Mon, 19 Oct 2026 21:05:00 +0000</pubDate>
				<category><![CDATA[DBA as a Service]]></category>
		<category><![CDATA[PostgreSQL]]></category>
		<category><![CDATA[Growing]]></category>
		<category><![CDATA[learning]]></category>
		<category><![CDATA[Postgres]]></category>
		<guid isPermaLink="false">https://straightpathsql.com/?p=5385</guid>

					<description><![CDATA[<p>This week I went back through my PostgreSQL notes and listed what is different between SQL Server and Postgres. These are the things I would pay close attention to when doing a migration. Most migration issues are not caused by the data. They come from assuming Postgres works the same way as SQL Server. Case ... <a title="If You Are Moving to Postgres, Start Here" class="read-more" href="https://straightpathsql.com/if-you-are-moving-to-postgres-start-here/" aria-label="Read more about If You Are Moving to Postgres, Start Here">Read more</a></p>
<p>The post <a href="https://straightpathsql.com/if-you-are-moving-to-postgres-start-here/">If You Are Moving to Postgres, Start Here</a> appeared first on <a href="https://straightpathsql.com">SQL Server Consulting - Straight Path Solutions</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">This week I went back through my PostgreSQL notes and listed what is different between SQL Server and Postgres. These are the things I would pay close attention to when doing a migration.</p>



<p class="wp-block-paragraph">Most migration issues are not caused by the data. They come from assuming Postgres works the same way as SQL Server.</p>



<h2 id="h-case-sensitivity" class="wp-block-heading">Case Sensitivity</h2>



<p class="wp-block-paragraph" id="h-one-thing-i-learned-is-that-postgres-does-not-handle-object-names-the-same-way-as-sql-server-if-you-create-an-object-with-quotes-postgres-keeps-the-exact-case-if-you-leave-the-quotes-off-postgres-converts-the-name-to-lowercase-string-comparisons-are-another-thing-i-would-check-a-lot-of-sql-server-environments-are-case-insensitive-by-default-postgres-is-usually-case-sensitive-unless-you-set-that-up-yourself">One thing I learned is that Postgres does not handle object names the same way as SQL Server. If you create an object with quotes, Postgres keeps the exact case. If you leave the quotes off, Postgres converts the name to lowercase. String comparisons are another thing I would check. A lot of SQL Server environments are case insensitive by default. Postgres is usually case sensitive unless you set that up yourself.</p>



<p class="wp-block-paragraph">I would check table names, column names, schema names, application code, ORM mappings, and anything using quoted identifiers. If possible, I would stick with lowercase object names.</p>



<h2 id="h-indexes" class="wp-block-heading">Indexes</h2>



<p class="wp-block-paragraph">Indexes do not always translate the same way when you migrate them over. In SQL Server, the clustered index controls the table order. Postgres stores tables as heaps. Postgres does have a CLUSTER command, but it only rewrites the table once. New rows do not stay in that order.</p>



<p class="wp-block-paragraph">I would review included columns, filtered indexes versus partial indexes, fill factor, statistics, and query plans. Recreating the same indexes does not mean you will get the same performance.</p>



<h2 id="h-postgresql-versions" class="wp-block-heading">PostgreSQL Versions</h2>



<p class="wp-block-paragraph">Postgres releases a major version about once a year and supports each version for five years. I have found a lot of companies running older versions, so I would check the version early in the migration. I would look at end-of-life dates, features the application needs, extension support, upgrade paths, and what the cloud provider offers.</p>



<p class="wp-block-paragraph">As of late 2026, PostgreSQL 13 is already out of community support. PostgreSQL 14 reaches the end of community support in November 2026.</p>



<h2 id="h-extensions" class="wp-block-heading">Extensions</h2>



<p class="wp-block-paragraph" id="h-in-a-previous-post-i-talked-about-alternatives-to-sql-server-agent-a-lot-of-extra-postgres-features-come-from-extensions-one-thing-i-learned-is-that-not-every-extension-is-available-everywhere-i-would-check-whether-the-cloud-provider-supports-it-whether-it-needs-superuser-access-whether-it-needs-extra-configuration-and-what-can-be-used-if-it-is-not-something-available-managed-postgres-services-do-not-all-offer-the-same-extensions">In a previous post, I talked about alternatives to SQL Server Agent. A lot of extra Postgres features come from extensions. One thing I learned is that not every extension is available everywhere. I would check whether the cloud provider supports it, whether it needs superuser access, whether it needs extra configuration, and what can be used if it is not something available. Managed Postgres services do not all offer the same extensions.</p>



<h2 id="h-managed-versus-self-managed" class="wp-block-heading">Managed Versus Self-Managed</h2>



<p class="wp-block-paragraph">Managed and self-managed Postgres are not the same. Managed services usually size some settings for you. Self-managed servers often start with conservative defaults. I would review shared buffers, work memory, maintenance work memory, connection limits, and autovacuum.</p>



<p class="wp-block-paragraph">I was surprised by how low some of the default memory settings can be. Fresh installs can still have shared_buffers set around 128 MB.</p>



<p class="wp-block-paragraph">I would also check the number of connections used by the application. Postgres uses a process for each connection. Applications that open hundreds of connections will probably need a connection pooler.</p>



<h2 id="h-job-scheduling" class="wp-block-heading">Job Scheduling</h2>



<p class="wp-block-paragraph" id="h-jobs-are-not-sql-server-agent-for-years-people-scheduled-postgres-jobs-with-cron-pg-cron-makes-it-easier-to-schedule-sql-inside-postgres-but-it-is-not-a-full-replacement-for-sql-server-agent-pg-cron-runs-sql-not-shell-scripts-if-the-instance-is-down-the-job-does-not-run-nbsp">Jobs are not SQL Server Agent. For years, people scheduled Postgres jobs with cron. pg_cron makes it easier to schedule SQL inside Postgres, but it is not a full replacement for SQL Server Agent. pg_cron runs SQL, not shell scripts. If the instance is down, the job does not run.&nbsp;</p>



<p class="wp-block-paragraph" id="h-other-choices-include-pg-timetable-and-cloud-schedulers-before-cutover-i-would-list-every-maintenance-job-backup-job-etl-job-and-monitoring-job-i-would-make-sure-each-job-has-a-replacement-and-test-it-before-the-migration">Other choices include pg_timetable and cloud schedulers. Before cutover, I would list every maintenance job, backup job, ETL job, and monitoring job. I would make sure each job has a replacement and test it before the migration.</p>



<h2 id="h-stored-procedures" class="wp-block-heading">Stored Procedures</h2>



<p class="wp-block-paragraph" id="h-if-the-environment-uses-a-lot-of-stored-procedures-i-would-budget-time-for-them-postgres-has-procedures-and-functions-they-are-not-written-like-t-sql-i-would-review-syntax-transactions-error-handling-dynamic-sql-temporary-tables-and-how-results-come-back-multiple-result-sets-from-one-procedure-are-common-in-sql-server-they-do-not-move-cleanly-to-postgres">If the environment uses a lot of stored procedures, I would budget time for them. Postgres has procedures and functions. They are not written like T-SQL. I would review syntax, transactions, error handling, dynamic SQL, temporary tables, and how results come back. Multiple result sets from one procedure are common in SQL Server. They do not move cleanly to Postgres.</p>



<h2 id="h-identity-columns-and-sequences" class="wp-block-heading">Identity Columns and Sequences</h2>



<p class="wp-block-paragraph" id="h-sql-server-identities-do-not-always-translate-directly-postgres-has-identity-serial-and-standalone-sequences">SQL Server identities do not always translate directly. Postgres has IDENTITY, SERIAL, and standalone sequences.</p>



<h2 id="h-data-types" class="wp-block-heading">Data Types</h2>



<p class="wp-block-paragraph" id="h-some-sql-server-data-types-do-not-have-a-direct-match-in-postgres-i-would-check-money-uniqueidentifier-rowversion-tinyint-bit-datetime-types-sql-variant-hierarchyid-and-clr-types-each-one-needs-to-be-mapped-and-tested-before-the-migration-also-rowversion-is-not-a-date-or-time-type">Some SQL Server data types do not have a direct match in Postgres. I would check money, uniqueidentifier, rowversion, tinyint, bit, datetime types, sql_variant, hierarchyid, and CLR types. Each one needs to be mapped and tested before the migration. Also, rowversion is not a date or time type.</p>



<h2 id="h-linked-servers" class="wp-block-heading">Linked Servers</h2>



<p class="wp-block-paragraph" id="h-linked-servers-do-not-exist-in-postgres-the-usual-replacements-are-postgres-fdw-and-dblink-i-would-also-check-what-each-linked-server-is-being-used-for-replacing-the-connection-does-not-mean-the-existing-queries-will-work-without-changes">Linked servers do not exist in Postgres. The usual replacements are postgres_fdw and dblink. I would also check what each linked server is being used for. Replacing the connection does not mean the existing queries will work without changes.</p>



<h2 id="h-database-mail" class="wp-block-heading">Database Mail</h2>



<p class="wp-block-paragraph" id="h-postgres-does-not-have-a-direct-replacement-for-database-mail-if-the-application-or-a-job-depends-on-it-i-would-plan-a-replacement-before-cutover">Postgres does not have a direct replacement for Database Mail. If the application or a job depends on it, I would plan a replacement before cutover.</p>



<h2 id="h-cross-database-queries" class="wp-block-heading">Cross-Database Queries</h2>



<p class="wp-block-paragraph" id="h-sql-server-databases-on-the-same-instance-can-query-each-other-postgres-databases-are-isolated-a-lot-of-migrations-use-schemas-in-one-postgres-database-instead-of-creating-several-databases-i-would-search-the-sql-server-code-for-three-part-names-before-deciding-how-to-set-up-the-postgres-databases-and-schemas">SQL Server databases on the same instance can query each other. Postgres databases are isolated. A lot of migrations use schemas in one Postgres database instead of creating several databases. I would search the SQL Server code for three-part names before deciding how to set up the Postgres databases and schemas.</p>



<h2 id="h-security-and-permissions" class="wp-block-heading">Security and Permissions</h2>



<p class="wp-block-paragraph" id="h-i-would-review-roles-role-inheritance-authentication-service-accounts-and-search-path-settings-postgres-roles-belong-to-the-whole-cluster-the-search-path-controls-which-objects-postgres-finds-when-the-schema-name-is-left-out">I would review roles, role inheritance, authentication, service accounts, and search_path settings. Postgres roles belong to the whole cluster. The search_path controls which objects Postgres finds when the schema name is left out.</p>



<h2 id="h-collation" class="wp-block-heading">Collation</h2>



<p class="wp-block-paragraph" id="h-collation-needs-to-be-checked-before-the-move-sorting-unique-constraints-and-string-comparisons-may-not-match-what-sql-server-was-doing-this-can-change-query-results-even-when-the-data-moved-correctly">Collation needs to be checked before the move. Sorting, unique constraints, and string comparisons may not match what SQL Server was doing. This can change query results even when the data moved correctly.</p>



<h2 id="h-temporary-tables" class="wp-block-heading">Temporary Tables</h2>



<p class="wp-block-paragraph" id="h-postgres-temporary-tables-belong-to-the-session-they-can-also-be-set-to-drop-when-the-transaction-commits-there-is-no-global-temporary-table-like-a-sql-server-table-i-would-also-check-connection-pooling-a-temporary-table-created-on-one-connection-will-not-be-there-if-the-next-statement-uses-another-connection">Postgres temporary tables belong to the session. They can also be set to drop when the transaction commits. There is no global temporary table like a SQL Server <code>##table</code>. I would also check connection pooling. A temporary table created on one connection will not be there if the next statement uses another connection.</p>



<h2 id="h-date-functions" class="wp-block-heading">Date Functions</h2>



<p class="wp-block-paragraph" id="h-getdate-getutcdate-dateadd-datediff-and-datepart-all-need-postgres-replacements-i-would-also-check-how-the-application-handles-time-zones-postgres-has-timestamp-with-time-zone-and-timestamp-without-time-zone">GETDATE(), GETUTCDATE(), DATEADD(), DATEDIFF(), and DATEPART() all need Postgres replacements. I would also check how the application handles time zones. Postgres has timestamp with time zone and timestamp without time zone.</p>



<h2 id="h-vacuum-and-bloat" class="wp-block-heading">Vacuum and Bloat</h2>



<p class="wp-block-paragraph" id="h-postgres-keeps-old-row-versions-until-vacuum-cleans-them-up-long-running-transactions-can-stop-vacuum-from-removing-those-rows-this-can-leave-tables-and-indexes-bloated-i-would-check-autovacuum-settings-long-running-transactions-and-tables-with-a-lot-of-updates-or-deletes">Postgres keeps old row versions until vacuum cleans them up. Long-running transactions can stop vacuum from removing those rows. This can leave tables and indexes bloated. I would check autovacuum settings, long-running transactions, and tables with a lot of updates or deletes.</p>



<h2 id="h-query-hints" class="wp-block-heading">Query Hints</h2>



<p class="wp-block-paragraph" id="h-a-lot-of-sql-server-hints-do-not-exist-in-postgres-nolock-forceseek-and-index-hints-need-another-approach-nolock-is-also-the-wrong-way-to-think-about-postgres-postgres-uses-mvcc-so-readers-and-writers-usually-do-not-block-each-other">A lot of SQL Server hints do not exist in Postgres. NOLOCK, FORCESEEK, and INDEX hints need another approach. NOLOCK is also the wrong way to think about Postgres. Postgres uses MVCC, so readers and writers usually do not block each other.</p>



<h2 id="h-high-availability" class="wp-block-heading">High Availability</h2>



<p class="wp-block-paragraph" id="h-always-on-availability-groups-do-not-translate-directly-to-postgres-i-would-review-replication-failover-read-replicas-backups-and-restore-tests-postgres-failover-often-uses-streaming-replication-with-other-tools-or-a-cloud-high-availability-service-i-would-test-failover-and-restores-before-the-migration-i-would-not-assume-the-cloud-service-handles-everything">Always On Availability Groups do not translate directly to Postgres. I would review replication, failover, read replicas, backups, and restore tests. Postgres failover often uses streaming replication with other tools or a cloud high-availability service. I would test failover and restores before the migration. I would not assume the cloud service handles everything.</p>



<h2 class="wp-block-heading">My Thoughts&nbsp;</h2>



<p class="wp-block-paragraph">Most migration issues are not caused by the data. They come from assuming Postgres works the same way as SQL Server.</p>



<p class="wp-block-paragraph">These are the things I would check before the move. It is better to find them while you still have time to fix them than after the migration.</p>



<p class="wp-block-paragraph"></p>
<p>The post <a href="https://straightpathsql.com/if-you-are-moving-to-postgres-start-here/">If You Are Moving to Postgres, Start Here</a> appeared first on <a href="https://straightpathsql.com">SQL Server Consulting - Straight Path Solutions</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://straightpathsql.com/if-you-are-moving-to-postgres-start-here/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>The accidental DBA is learning PostgreSQL (and why you should never stop being a beginner)</title>
		<link>https://straightpathsql.com/the-accidental-dba-is-learning-postgresql-and-why-you-should-never-stop-being-a-beginner/</link>
					<comments>https://straightpathsql.com/the-accidental-dba-is-learning-postgresql-and-why-you-should-never-stop-being-a-beginner/#respond</comments>
		
		<dc:creator><![CDATA[Bruce Campbell]]></dc:creator>
		<pubDate>Thu, 08 Oct 2026 18:38:00 +0000</pubDate>
				<category><![CDATA[DBA as a Service]]></category>
		<category><![CDATA[PostgreSQL]]></category>
		<category><![CDATA[Growing]]></category>
		<category><![CDATA[learning]]></category>
		<category><![CDATA[Postgres]]></category>
		<guid isPermaLink="false">https://straightpathsql.com/?p=5387</guid>

					<description><![CDATA[<p>I got started in SQL Server and databases as a bit of an accident several years ago. I worked at a company where I was the primary application support person and dabbled in SSMS to review issues when a customer’s loan didn’t go through. As the age-old joke goes, I knew just enough to be ... <a title="The accidental DBA is learning PostgreSQL (and why you should never stop being a beginner)" class="read-more" href="https://straightpathsql.com/the-accidental-dba-is-learning-postgresql-and-why-you-should-never-stop-being-a-beginner/" aria-label="Read more about The accidental DBA is learning PostgreSQL (and why you should never stop being a beginner)">Read more</a></p>
<p>The post <a href="https://straightpathsql.com/the-accidental-dba-is-learning-postgresql-and-why-you-should-never-stop-being-a-beginner/">The accidental DBA is learning PostgreSQL (and why you should never stop being a beginner)</a> appeared first on <a href="https://straightpathsql.com">SQL Server Consulting - Straight Path Solutions</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">I got started in SQL Server and databases as a bit of an accident several years ago. I worked at a company where I was the primary application support person and dabbled in SSMS to review issues when a customer’s loan didn’t go through. As the age-old joke goes, I knew just enough to be dangerous. While I was there, I decided to keep learning about SQL from the DBA team and when that company went out of business, I was able to pivot and apply for DBA roles, and I eventually found my way here to Straight Path. Part of how I was able to do that was that I was able to see the writing on the wall and learn that there was opportunity in SQL and data.</p>



<p class="wp-block-paragraph">With that being said, we at Straight Path pride ourselves on proactivity and helping customers to determine what they might need. So, as you may have guessed by the title, this is a blog post about PostgreSQL and some things I’ve learned about it and why I never want to stop being a beginner.</p>



<p class="wp-block-paragraph">If you’re new to us, Straight Path is a SQL and Database consulting firm started by our CEO Mike Walsh. We’re now at 22 employees and we have backgrounds in performance tuning, migration work, security, and just general DBA knowledge spread out across our Senior and Support teams. There isn’t much we can’t handle as an organization. Our new CDO, Buck Woody, in the spirit of proactivity has seen the writing on the wall as well and knows that our next logical step was Postgres since it’s getting more popular than ever. DBAs and organizations around the world are turning to Postgres for its customization, its easy licensing, and resource management.</p>



<p class="wp-block-paragraph">I’ve built my career in Microsoft but my OS of choice for my personal projects is Pop!_OS, which is based on Ubuntu and is part of the Free and Open Source Software (FOSS) project. I learned about Linux and the different operating systems built around it when I was fresh out of high school, through my uncle who had been using Linux almost since its inception. I was amazed that so many humans across the world could come together on a project like this and that Linux was responsible for so many things in our lives. Now it’s on billions of devices and runs critical infrastructure that we depend on. I’m saying all of this to emphasize that it’s my passion for being a beginner that got me into Linux in the first place, and that same passion brought me to being a DBA, and now it’s helping me to learn Postgres.</p>



<p class="wp-block-paragraph">As the title suggests, I didn’t set out to be a DBA, I originally went to school for programming. That job I mentioned earlier hired me partially for my ability to read code. My boss at the time assumed that if I could read C# then I must have been able to read whatever language the company’s software was written in and that would help me in my support role. He wasn’t totally wrong because that light programming background allowed me to talk with the developers and try to understand what we were building. It helped me make relationships that I still maintain today and that ability to be a beginner let me ask questions. I asked questions about everything because it’s how I soak up information. Asking those questions eventually got me pointed to the DBA team because I wanted to know why something wasn’t working, and development eventually pointed the finger at the DBAs. As we all know, DBA does stand for “Default Blame Accepter”.</p>



<p class="wp-block-paragraph">I started working closely with them and learning anything and everything I could. Eventually that company was going under and I needed to find new work and I found Straight Path. I wanted to take the DBA knowledge I had to the next level because I wanted to be a beginner somewhere else and before I knew it, I was. I was learning the ropes of SQL Agent, jobs and maintenance plans, users and access, and how to troubleshoot issues. Fast forward 5 years and I’ve grown into my role as a DBA where I maintain a list of my own clients and I assist our Senior team with their clients where I can. I focus on proactive work and maintaining a well performing environment while also looking for opportunities to enhance security. The world is only getting less secure these days, and I started all this by being a beginner at something. &nbsp;</p>



<p class="wp-block-paragraph">Here I am now, relearning a lot of those same principles but in a new environment with new challenges and new goals. Postgres is a great tool and even though it can do so much for your environment and your workflows, it may or may not be the right tool for your needs.</p>



<p class="wp-block-paragraph">Postgres is also considered FOSS, and it’s maintained by a dedicated group of people around the world and provided for free in most cases. That philosophy is also part of what brought me to learning it and wanting to use it, as it was like getting to learn about Linux with my uncle all over again.</p>



<p class="wp-block-paragraph">So, this is a roundabout way of saying that you shouldn’t ever stop being a beginner at something. I took my passion for learning and started with Windows 98 as a kid, then in my teens learned about Linux, then as an adult I found my career with Microsoft software, and now we’re going back to Linux to build out this Postgres plan. More on that to come!</p>
<p>The post <a href="https://straightpathsql.com/the-accidental-dba-is-learning-postgresql-and-why-you-should-never-stop-being-a-beginner/">The accidental DBA is learning PostgreSQL (and why you should never stop being a beginner)</a> appeared first on <a href="https://straightpathsql.com">SQL Server Consulting - Straight Path Solutions</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://straightpathsql.com/the-accidental-dba-is-learning-postgresql-and-why-you-should-never-stop-being-a-beginner/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Backup a second… this isn’t a SQL Server post? My journey into PostgreSQL backups</title>
		<link>https://straightpathsql.com/backup-a-second-this-isnt-a-sql-server-post-my-journey-into-postgresql-backups/</link>
					<comments>https://straightpathsql.com/backup-a-second-this-isnt-a-sql-server-post-my-journey-into-postgresql-backups/#respond</comments>
		
		<dc:creator><![CDATA[Mike Lynn]]></dc:creator>
		<pubDate>Tue, 29 Sep 2026 15:39:50 +0000</pubDate>
				<category><![CDATA[DBA as a Service]]></category>
		<category><![CDATA[PostgreSQL]]></category>
		<category><![CDATA[Growing]]></category>
		<category><![CDATA[learning]]></category>
		<category><![CDATA[Postgres]]></category>
		<guid isPermaLink="false">https://straightpathsql.com/?p=5383</guid>

					<description><![CDATA[<p>I have been working with SQL Server since 2005, and while I love SQL Server, I also love to learn.&#160; One of the platforms I’ve been hearing more about lately is Postgres.&#160; It is being referenced more in blog posts, conference sessions, and I even noticed some SQL Server engineers at Microsoft moving over to ... <a title="Backup a second… this isn’t a SQL Server post? My journey into PostgreSQL backups" class="read-more" href="https://straightpathsql.com/backup-a-second-this-isnt-a-sql-server-post-my-journey-into-postgresql-backups/" aria-label="Read more about Backup a second… this isn’t a SQL Server post? My journey into PostgreSQL backups">Read more</a></p>
<p>The post <a href="https://straightpathsql.com/backup-a-second-this-isnt-a-sql-server-post-my-journey-into-postgresql-backups/">Backup a second… this isn’t a SQL Server post? My journey into PostgreSQL backups</a> appeared first on <a href="https://straightpathsql.com">SQL Server Consulting - Straight Path Solutions</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">I have been working with SQL Server since 2005, and while I love SQL Server, I also love to learn.&nbsp; One of the platforms I’ve been hearing more about lately is Postgres.&nbsp; It is being referenced more in blog posts, conference sessions, and I even noticed some SQL Server engineers at Microsoft moving over to the Postgres team.&nbsp;</p>



<p class="wp-block-paragraph">Those couple of events piqued my interest so a few months ago I dipped my toes into the Postgres pool.&nbsp; I started this adventure looking for ways to apply my 20+ years in SQL Server to Postgres so that I can start to help people who are also new to the platform.&nbsp; One of the very first things I learned about in SQL Server was backups, so I thought it would be fitting to start there with Postgres.</p>



<p class="wp-block-paragraph">Most of the readers of this post likely know how SQL Server backups work.&nbsp; You can create a backup of an individual database with a full backup, a differential backup, and a log backup.&nbsp; You can then use those backup files to restore the database onto the same server or a different server.</p>



<p class="wp-block-paragraph">With Postgres, there are two categories of backups: a logical backup, and a physical backup.&nbsp; The logical backup is essentially an export of one or more objects in the database to a file.&nbsp; The contents of that file could have anything from the scripts to create the objects to the insert statements to reload the data into a table.&nbsp; But that is all you can really do with a logical backup &#8211; create a copy of something in a database and restore it somewhere else.&nbsp; Useful for certain tasks, but this cannot be used for other administrative tasks like point in time recovery or building physical standby replicas.</p>



<p class="wp-block-paragraph">A physical backup is where you would start if you needed to perform a point in time restore of a database.&nbsp; Comparing this to SQL Server this is where you’d restore a full backup, then maybe a diff backup, and then roll log backups until you get to your desired end time.&nbsp;</p>



<p class="wp-block-paragraph">One of the big differences between SQL backups and physical Postgres backups is with SQL Server you backup one database; with a physical Postgres backup, you capture the entire Postgres cluster.&nbsp; One of the reasons for this is that all the databases on the Postgres cluster share the same Write-Ahead Log (WAL) file. Because all databases share the WAL file, everything on the cluster is needed for Postgres to guarantee a database is transactionally consistent.&nbsp; If there were objects missing from the cluster, it could cause failures while transactions are being replayed from the WAL file backups.</p>



<p class="wp-block-paragraph">This was a big difference for me when comparing SQL Server and Postgres. With SQL Server I only need to worry about a couple database files and if there is space on the server, but with Postgres there is so much more to take into consideration when preparing to do a point in time restore of a database.&nbsp;</p>



<p class="wp-block-paragraph">Looking forward to learning more about the differences between the two platforms and if there are any similarities.</p>
<p>The post <a href="https://straightpathsql.com/backup-a-second-this-isnt-a-sql-server-post-my-journey-into-postgresql-backups/">Backup a second… this isn’t a SQL Server post? My journey into PostgreSQL backups</a> appeared first on <a href="https://straightpathsql.com">SQL Server Consulting - Straight Path Solutions</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://straightpathsql.com/backup-a-second-this-isnt-a-sql-server-post-my-journey-into-postgresql-backups/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>We Finished SOC 2 Type I (What this is and isn&#8217;t)</title>
		<link>https://straightpathsql.com/we-finished-soc-2-type-i-what-this-is-and-isnt/</link>
					<comments>https://straightpathsql.com/we-finished-soc-2-type-i-what-this-is-and-isnt/#respond</comments>
		
		<dc:creator><![CDATA[Mike Walsh]]></dc:creator>
		<pubDate>Mon, 28 Sep 2026 17:09:13 +0000</pubDate>
				<category><![CDATA[DBA as a Service]]></category>
		<category><![CDATA[Buying DBA Services]]></category>
		<category><![CDATA[Compliance]]></category>
		<category><![CDATA[security]]></category>
		<category><![CDATA[SOC2]]></category>
		<guid isPermaLink="false">https://straightpathsql.com/?p=5371</guid>

					<description><![CDATA[<p>We received our official and final SOC 2 Type I report from Linford &#38; Company, an independent CPA firm, covering our Managed SQL Server Services as of September 15, 2026 today. I&#8217;m proud of it. I&#8217;m also a little wary of how these announcements usually go, because I&#8217;ve read a lot of vendor press releases ... <a title="We Finished SOC 2 Type I (What this is and isn&#8217;t)" class="read-more" href="https://straightpathsql.com/we-finished-soc-2-type-i-what-this-is-and-isnt/" aria-label="Read more about We Finished SOC 2 Type I (What this is and isn&#8217;t)">Read more</a></p>
<p>The post <a href="https://straightpathsql.com/we-finished-soc-2-type-i-what-this-is-and-isnt/">We Finished SOC 2 Type I (What this is and isn&#8217;t)</a> appeared first on <a href="https://straightpathsql.com">SQL Server Consulting - Straight Path Solutions</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">We received our official and final SOC 2 Type I report from Linford &amp; Company, an independent CPA firm, covering our Managed SQL Server Services as of September 15, 2026 today. I&#8217;m proud of it. I&#8217;m also a little wary of how these announcements usually go, because I&#8217;ve read a lot of vendor press releases that make a SOC 2 report sound like a force field. So I want to walk through what we actually did, what the report says, what it doesn&#8217;t say, and why we&#8217;re already on the hook for the next one.</p>



<h3 id="h-no-client-asked-us-to-do-this" class="wp-block-heading">No client asked us to do this</h3>



<p class="wp-block-paragraph">That&#8217;s the first thing I want people to know. Nobody made us. We&#8217;ve been doing this since 2011 and we&#8217;ve passed plenty of vendor questionnaires without a SOC report. Maybe the desire to do a couple less vendor questionnaires motivated me, but then I learned that we&#8217;ll still get them &#8211; but I also learned that our managed service provider for IT and MS365 and security will also fill those out for me. So that&#8217;s still a win.</p>



<p class="wp-block-paragraph">When you hire us, you&#8217;re handing us the keys to the kingdom. Our DBAs get privileged access to SQL Servers that hold patient records, member accounts, customer orders, payroll (the stuff that keeps your business running and keeps people&#8217;s lives in order). We help clients get through audits and security reviews all the time. It felt a little hypocritical to keep asking you to trust our answers when we&#8217;d never had anyone outside the company check them and keep watching.</p>



<h3 id="h-what-we-actually-did" class="wp-block-heading">What we actually did</h3>



<p class="wp-block-paragraph">We&#8217;re a 22-person company. Hiring a full-time CISO didn&#8217;t make sense for our size, and the &#8220;buy a compliance platform and click through the checklist&#8221; route didn&#8217;t give me what I wanted, which was someone who knew our business telling me where we were weak. I don&#8217;t want a rubber stamp &#8211; this was not a cheap expense &#8211; and it is a new ongoing line item &#8211; the managed security services and the annual audit we&#8217;ll have to keep our SOC2 Type II up once we (hopefully) achieve that in 6 months is an expense. The extra time to do some things, the process, the forced patching reboots. It&#8217;s all a cost &#8211; but it&#8217;s worth it.</p>



<p class="wp-block-paragraph">So we leaned on <a href="https://www.mstech.com/">Mainstay Technologies</a>, who already run our managed IT and security monitoring. Erin Mealey guided the SOC 2 work start to finish, and internally Evan Corbett (our COO) drove the follow-through while Buck Woody brought a lot of hard-won data security and incident response experience from his roles at Microsoft for the past nearly 20 years.</p>



<p class="wp-block-paragraph">The work itself was a lot of turning things we already did into things we could prove we do: documenting controls, formalizing policies, running every vendor through the same review, security training with evidence behind it, and testing our response plans. We also pulled our monitoring platform, Skopos, and the software we write into scope, because that&#8217;s part of how we serve clients and leaving it out would have made the report look tidier than reality.</p>



<p class="wp-block-paragraph">I expected more misery than we got. The part I figured would be pure box-checking was the disaster tabletop exercises. It wasn&#8217;t. Walking through those scenarios surfaced real risks, and we changed some of our approaches and policies because of them. Turns out we had some homework. I&#8217;d rather find that out in a conference room than at 2 a.m. on a client&#8217;s server.</p>



<h3 id="h-what-a-soc-2-type-i-actually-is" class="wp-block-heading">What a SOC 2 Type I actually is</h3>



<p class="wp-block-paragraph">SOC 2 is an examination framework from the AICPA. An independent CPA firm looks at a company&#8217;s description of its system and its controls against a set of criteria. We were examined against the Security criteria, which is the required baseline for every SOC 2.</p>



<p class="wp-block-paragraph">A Type I is a snapshot <strong><em>only</em></strong>. It says that on a specific date, our controls were in place and suitably designed to meet those criteria.</p>



<p class="wp-block-paragraph">I spent years as a firefighter and EMT, so here&#8217;s how I think about it. A Type I is the inspector walking the building and confirming the smoke detectors are installed, wired correctly, and in the right rooms. A Type II is the inspector coming back and checking the logs to see that they were tested every month and actually went off when there was smoke, and the folks followed the evacuation plan months later.</p>



<h3 id="h-what-it-doesn-t-mean" class="wp-block-heading">What it doesn&#8217;t mean</h3>



<p class="wp-block-paragraph">This is the part I care about most, because transparency matters, it&#8217;s the whole point behind the Buying DBA Services guide posts I&#8217;ve been sharing. Don&#8217;t let our &#8220;SOC2 Achieved!&#8221; woo you into letting your guard down. Even when we hopefully pass our Type II audit.</p>



<ul class="wp-block-list">
<li><strong>It isn&#8217;t a certification.</strong> There&#8217;s no such thing as being &#8220;SOC 2 certified,&#8221; even though you&#8217;ll see vendors say it everywhere. It&#8217;s an attestation report from a CPA firm. We&#8217;ll try hard not to call it a certification, and if you catch us doing it, tell us.</li>



<li><strong>It doesn&#8217;t prove our controls worked over time.</strong> That&#8217;s what Type II is for, and we&#8217;re not there yet.</li>



<li><strong>It doesn&#8217;t mean nothing bad can happen.</strong> No report eliminates risk. Anyone who tells you otherwise is selling something.</li>



<li><strong>It doesn&#8217;t cover your servers.</strong> The report is about how Straight Path runs. We don&#8217;t host your data in our environment. The security of your SQL Servers is still a shared job, and the report even lists things clients are expected to do on their side (auditors call these complementary user entity controls, apparently). We&#8217;ll help you with those, but they&#8217;re yours. We think the time is right for you to have a PAM tool, as much as the DBA in me cringes typing it, but that&#8217;s your decision and a CUEC suggests it &#8211; we can tell you how others have done it but this is up to your security team.</li>



<li><strong>It doesn&#8217;t replace your due diligence.</strong> It gives you better evidence to work with. You should still ask us hard questions, ask our competitors hard questions, get to know the team, and decide if we&#8217;re the right fit.</li>



<li><strong>It doesn&#8217;t mean we changed who we are.</strong> We&#8217;re still the same bunch of SQL Server geeks. We just have more evidence behind the promise and more documentation, process and checkboxes for the team to follow behind the scenes.</li>
</ul>



<h3 id="h-why-it-s-still-worth-it" class="wp-block-heading">Why it&#8217;s still worth it</h3>



<p class="wp-block-paragraph"><strong><em>The</em></strong> <strong><em>SOC 2 (or ISO27001) journey</em></strong> <strong><em>can absolutely be an expensive paperwork exercise that makes a company look secure without making it more secure. I&#8217;ve seen that happen.</em></strong></p>



<p class="wp-block-paragraph">What made it worth it for us came from a few places:</p>



<p class="wp-block-paragraph"><strong>We found our unknown unknowns.</strong> We already had solid basics in place (MFA, background checks, managed devices, active monitoring, phishing tests, perimeter security, see something say something policies, etc.). The value was in the questions we didn&#8217;t know to ask ourselves, and the tabletop drills were the best example. Or pushing the same questions and process on our own vendors was a good takeaway &#8211; rigidity up and down.</p>



<p class="wp-block-paragraph"><strong>The team&#8217;s defaults changed.</strong> I&#8217;ve watched people make more secure-by-default decisions without anyone prompting them. This team was already mature and security already mattered here, but now I can see it in how everyday choices get made.</p>



<p class="wp-block-paragraph"><strong>Rules for everyone make life easier.</strong> When we were five people, a lot of how we worked lived in my head and a couple of other heads. Having clear policies that apply to everyone, me included, has made things simpler than the early days.</p>



<p class="wp-block-paragraph"><strong>Your vendor reviews get easier.</strong> If you&#8217;re a credit union, you&#8217;re expected to do real due diligence on third-party providers and your examiners will ask about it. If you&#8217;re in healthcare, you&#8217;re asking vendors how they protect PHI. Now we can hand you independent evidence instead of a well-written questionnaire answer alone.</p>



<p class="wp-block-paragraph"><strong>The monitoring already proved itself once.</strong> Before the formal SOC 2 work even started, some activity on my laptop tripped an automated response falsely. My laptop got isolated, my account got locked, and Mainstay&#8217;s security team called me. It turned out to be harmless. I was annoyed for about an hour, and then really glad, because that&#8217;s exactly what I want to happen when something looks wrong.</p>



<h3 id="h-why-we-re-already-in-the-type-ii-phase" class="wp-block-heading">Why we&#8217;re already in the Type II phase</h3>



<p class="wp-block-paragraph"><em>A Type I tells you we designed things well on one day. That&#8217;s a real milestone, <strong>but it&#8217;s a starting line</strong>. The question anyone serious about vendor risk will ask next is &#8220;did you keep doing it?&#8221;</em> <em>Even &#8220;are you going to keep doing it diligently forever?&#8221;</em></p>



<p class="wp-block-paragraph">Yeah we are &#8211;> Our six-month Type II observation period with Linford is now underway or about to be (not officially sure how it works &#8211; but it&#8217;s next and we are waiting 6 months to have enough of a period to catch us doing something wrong, and move it to 2027 so we can go annual after that.) During that window we have to operate the controls we described, keep the evidence, and then let the auditors test random samples across the whole period.<strong><em> If a control slips, the report will say so, we can&#8217;t do anything about it. That&#8217;s the point of it.</em></strong></p>



<h3 id="h-why-annual-audits-are-in-our-budget" class="wp-block-heading">Why annual audits are in our budget</h3>



<p class="wp-block-paragraph">This wasn&#8217;t a one-time project, and we&#8217;ve budgeted it that way. After the Type II, we plan to be examined every year.</p>



<p class="wp-block-paragraph">A few reasons:</p>



<ol class="wp-block-list">
<li><strong>Reports age.</strong> A report that covers a period that ended a year ago tells you less and less every month. Auditors themselves recommend producing them annually so there&#8217;s no gap between reporting periods.</li>



<li><strong>Your reviews are annual.</strong> Most of our regulated clients re-review their vendors every year. We should have something current to hand them.</li>



<li><strong>Discipline decays without an outside deadline.</strong> I know myself alllllll too well. Good habits hold up a lot better when someone independent is coming back to check. Outside accountability helps. Plus it makes the process the bad guy, not me with all our process and procedures and security.</li>



<li><strong>It matches how we already do business.</strong> We don&#8217;t lock clients into long-term contracts, because we think we should have to earn your business every quarter. It would be a little strange to then ask you to trust a snapshot from years ago.</li>
</ol>



<p class="wp-block-paragraph">It&#8217;s a line item now, like insurance and training. I&#8217;m okay with that.</p>



<h3 id="h-what-this-means-if-you-work-with-us-or-are-thinking-about-it" class="wp-block-heading">What this means if you work with us (or are thinking about it)</h3>



<p class="wp-block-paragraph">If you&#8217;re a client and your compliance team wants to see the report, reach out to us and we&#8217;ll get it to you, you&#8217;ll see it on your next vendor questionnaire round if you are one of the many who send the links to them. If you&#8217;re evaluating us, ask for it, and ask us anything else too. What we train on, what happens when something goes wrong, what our policies actually say. <strong>Those are fair questions, and you should ask them of every vendor who touches your data.</strong></p>



<p class="wp-block-paragraph">We really care about the data we look after. Behind every row in those tables are people, families, customers, and livelihoods. This report is one piece of evidence that we mean it. The rest we&#8217;ll keep earning the same way we always have &#8211; earning the next renewal by proving ourselves to be a part of your team, not just another vendor.</p>



<p class="wp-block-paragraph">Have a SQL Server environment you want an honest conversation about? <a target="_blank" rel="noopener" href="https://straightpathsql.com/contact">Let&#8217;s talk.</a></p>
<p>The post <a href="https://straightpathsql.com/we-finished-soc-2-type-i-what-this-is-and-isnt/">We Finished SOC 2 Type I (What this is and isn&#8217;t)</a> appeared first on <a href="https://straightpathsql.com">SQL Server Consulting - Straight Path Solutions</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://straightpathsql.com/we-finished-soc-2-type-i-what-this-is-and-isnt/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>Who Would I Use for DBA as a Service If Straight Path Wasn’t an Option?</title>
		<link>https://straightpathsql.com/who-would-i-use-for-dba-as-a-service-if-straight-path-wasnt-an-option/</link>
					<comments>https://straightpathsql.com/who-would-i-use-for-dba-as-a-service-if-straight-path-wasnt-an-option/#respond</comments>
		
		<dc:creator><![CDATA[Mike Walsh]]></dc:creator>
		<pubDate>Tue, 22 Sep 2026 15:25:36 +0000</pubDate>
				<category><![CDATA[Database Administration]]></category>
		<category><![CDATA[Buying DBA Services]]></category>
		<guid isPermaLink="false">https://straightpathsql.com/?p=5125</guid>

					<description><![CDATA[<p>Whenever you are shopping, you should look at a few options. I sometimes forget that step, and then regret it afterwards a bit too often. It&#8217;s really important to do that when it comes to choosing the firm who will be your Remote DBA or DBA as a Service partner. I want to do something ... <a title="Who Would I Use for DBA as a Service If Straight Path Wasn’t an Option?" class="read-more" href="https://straightpathsql.com/who-would-i-use-for-dba-as-a-service-if-straight-path-wasnt-an-option/" aria-label="Read more about Who Would I Use for DBA as a Service If Straight Path Wasn’t an Option?">Read more</a></p>
<p>The post <a href="https://straightpathsql.com/who-would-i-use-for-dba-as-a-service-if-straight-path-wasnt-an-option/">Who Would I Use for DBA as a Service If Straight Path Wasn’t an Option?</a> appeared first on <a href="https://straightpathsql.com">SQL Server Consulting - Straight Path Solutions</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">Whenever you are shopping, you should look at a few options. I sometimes forget that step, and then regret it afterwards a bit too often. It&#8217;s really important to do that when it comes to choosing the firm who will be your Remote DBA or DBA as a Service partner.</p>



<p class="wp-block-paragraph">I want to do something a little unorthodox here, I’m going to list a few firms I’d actually consider if we weren’t in the picture (or our <a href="https://straightpathsql.com/sql-server-consulting/dba-as-a-service/" data-type="page" data-id="189">Remote DBA services</a> weren&#8217;t right for you). <strong>These are companies I respect. Some of the founders are friends. We’ve referred work back and forth over the years</strong> with a few of the firms.</p>



<p class="wp-block-paragraph"><strong>I’m not ranking them. <em>And I’m deliberately not putting Straight Path on this list.</em></strong></p>



<p class="wp-block-paragraph"><em>I also left out the big national and global providers. Those firms generally serve a different part of the market than the specialist shops I’m talking about here. If you’re looking for a large enterprise provider, global teams, or a broader outsourcing relationship, some of them may absolutely belong in your search. That’s just not the comparison I’m making in this article.</em></p>



<p class="wp-block-paragraph"><strong>Here’s my short list.</strong> I may be missing a firm that I know and respect, wasn&#8217;t trying to be exhaustive but go with the ones that come to mind right now, and I left the solo DBA shops or solo DBA plus one jr. backup out for this comparison.</p>



<p class="wp-block-paragraph"><strong><a href="https://theserogroup.com/" target="_blank" rel="noreferrer noopener">Sero Group</a></strong> Joe Webb’s company. Smaller team. Values-first and trust-first. Joe has been in the SQL Server community a long time and runs the firm the way a lot of us wish more companies were run. They take compliance seriously (including going on the SOC 2 journey). We’re finishing up our own SOC 2 process right now with our draft report in hand waiting for the final, so I’ve been talking to Joe a bit about his journey. He does it well, and I trust him and his team even without their SOC 2 report. If you want a high-touch specialist shop, Sero is worth a conversation. Joe is one of my favorite people in the SQL Server community, too.</p>



<p class="wp-block-paragraph"><strong><a href="https://procuresql.com/">Procure SQL</a></strong> I know and trust the founder and a bunch of the people on their team. Not the smallest team on this list, but not as large a team as Fortified, SQL Watchmen or us. They lean a little more into the broader data platform side (architecture, integration, reporting, analytics) than pure operational DBA work based on what they put on their site first, but they have excellent DBAs and can absolutely do managed DBA services. If your needs sit closer to the development and data platform side of the house, they’re a strong option. </p>



<p class="wp-block-paragraph"><strong><a href="https://dallasdbas.com/">Dallas DBAs</a></strong> Smaller firm. Generally sits at a lower price point than most of the others on this list. Solid coverage and a practical SQL Server focus. We’ve sent some work to them and they’ve sent work to us. Their model is often a good fit when what you really need is lighter fractional coverage with a good, smaller, mid-level team, or a solid emergency backup.</p>



<p class="wp-block-paragraph"><strong><a href="https://sqlwatchmen.com/">SQLWatchmen</a></strong> Austin-based. Pure SQL Server focus. Founder-led. US-based team. They’ve been doing remote DBA work for a long time and keep the model relatively simple. Another solid specialist option if you want a focused SQL Server shop.</p>



<p class="wp-block-paragraph"><strong><a href="https://www.fortifieddata.com/">Fortified Data</a></strong> A bit larger than the others on this list. Multi-platform, and they&#8217;ve built a commercial monitoring software/product side (Fortified WISdom) in addition to services that they sell, and they have more of an enterprise-oriented feel than some of the smaller specialist shops here. If you need broader database platform coverage or getting into multi-platform support beyond just SQL Server and PostgreSQL that we cover, or a larger operational model, I’d put them on the list of companies to talk to. </p>



<p class="wp-block-paragraph">As with any provider (including us), I’d make sure you understand the contract terms, service levels, what’s included, how changes to the relationship work and changes between levels work, and what happens if you eventually need to leave. Check out all of the posts with the <a href="https://straightpathsql.com/tag/buying-dba-services/">buying DBA services</a> tag &#8211; you can think of questions to ask any of us and get some thoughts on pricing, fit and what to look for in a firm. Next week, I&#8217;ll talk about the question we sometimes hear, &#8220;Can our MSP be our DBA team? Should they?&#8221; It depends and I&#8217;ll talk more about it. Then after that one I&#8217;ll be putting all of these posts in this tag into a guide for folks to read and give a few checklists. Subscribe to the newsletter to keep up.</p>



<p class="wp-block-paragraph"><strong>How I’d Think About the Short List</strong></p>



<p class="wp-block-paragraph">There’s plenty of overlap between these companies and even our own, so don’t treat this as a ranking or assume one sentence captures everything a company does. But if I were starting the conversations today, this is roughly how I’d think about them:</p>



<ul class="wp-block-list">
<li>Want a smaller, high-touch specialist relationship with a smaller bench but good experience and compliance chops and one who also works with financial institutions like we do? <strong>Talk to Sero Group.</strong></li>



<li>Need broader data platform and development capabilities or architecture as a service and some help with PowerBI and Fabric resources directly on the team? <strong>Talk to Procure SQL.</strong></li>



<li>Looking for lighter fractional coverage, more keep the lights on support, or more price sensitivity? <strong>Talk to Dallas DBAs.</strong></li>



<li>Want a focused SQL Server specialist model? <strong>Talk to SQLWatchmen.</strong></li>



<li>Need broader database platforms or a larger operational model? <strong>Talk to Fortified Data.</strong></li>
</ul>



<p class="wp-block-paragraph">Services change. Teams change. Pricing changes. Talk to them and ask questions rather than treating any of this as final answers.</p>



<p class="wp-block-paragraph"><strong>What About Pricing?</strong></p>



<p class="wp-block-paragraph"><em>Most of these firms don’t publish full pricing the way we do, so you’ll need to fill out quote requests, maybe talk to them to get current numbers and understand what is actually included. Dallas DBAs has historically been one of the more transparent on that front.</em></p>



<p class="wp-block-paragraph"><strong>And frankly, don’t compare these companies on the quoted price alone.</strong></p>



<p class="wp-block-paragraph">Ask what the price buys. Does it include monitoring? Who responds to alerts? What happens after hours? Do you get a named DBA? How much actual DBA time is included? What costs extra? Are projects handled differently? What’s the contract commitment? What happens when you need more or less help? What&#8217;s the true SLA?</p>



<p class="wp-block-paragraph"><em>Two companies can both call something “DBA as a Service” or “Remote DBA” and be selling pretty different relationships.</em></p>



<p class="wp-block-paragraph">We’ve written quite a bit about those questions elsewhere (the pricing post, the problems post, the first 90 days post, the FTE vs DBA as a Service post) because I think they matter more than trying to reduce every provider to an hourly rate.</p>



<p class="wp-block-paragraph"><strong>Why Am I Publishing a List of Our Competitors?</strong></p>



<p class="wp-block-paragraph">Because if you’re seriously considering DBA as a Service, you should probably talk to more than one provider and I’d rather tell you who I respect than pretend we’re the only company capable of doing this work well.</p>



<p class="wp-block-paragraph">If after looking at these options you still think Straight Path is the best fit, we’re happy to talk. If we aren&#8217;t? I get it, talk to those shops, you can&#8217;t go wrong. </p>



<p class="wp-block-paragraph">The goal here is the same goal I’ve tried to keep across this whole series. The bad-fit post. The problems post. The full-time DBA vs DBA as a Service post. The first 90 days post. All of it.</p>



<p class="wp-block-paragraph"><strong>Your SQL Server environment should end up with the right team. <em>Not necessarily always our team.</em></strong></p>



<p class="wp-block-paragraph"></p>
<p>The post <a href="https://straightpathsql.com/who-would-i-use-for-dba-as-a-service-if-straight-path-wasnt-an-option/">Who Would I Use for DBA as a Service If Straight Path Wasn’t an Option?</a> appeared first on <a href="https://straightpathsql.com">SQL Server Consulting - Straight Path Solutions</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://straightpathsql.com/who-would-i-use-for-dba-as-a-service-if-straight-path-wasnt-an-option/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>The Straight Path to PostgreSQL</title>
		<link>https://straightpathsql.com/the-straight-path-to-postgresql/</link>
					<comments>https://straightpathsql.com/the-straight-path-to-postgresql/#respond</comments>
		
		<dc:creator><![CDATA[Buck Woody]]></dc:creator>
		<pubDate>Thu, 17 Sep 2026 14:40:43 +0000</pubDate>
				<category><![CDATA[DBA as a Service]]></category>
		<category><![CDATA[PostgreSQL]]></category>
		<category><![CDATA[Company News]]></category>
		<category><![CDATA[Growing]]></category>
		<category><![CDATA[learning]]></category>
		<category><![CDATA[Postgres]]></category>
		<guid isPermaLink="false">https://straightpathsql.com/?p=5359</guid>

					<description><![CDATA[<p>At Straight Path Solutions, we offer a white-glove experience for database management with our DBA as a Service and other offerings. We have some of the best technical professionals in the industry that are laser-focused on understanding everything we can about the Microsoft SQL Server database engine. We have wide expertise in everything from Performance ... <a title="The Straight Path to PostgreSQL" class="read-more" href="https://straightpathsql.com/the-straight-path-to-postgresql/" aria-label="Read more about The Straight Path to PostgreSQL">Read more</a></p>
<p>The post <a href="https://straightpathsql.com/the-straight-path-to-postgresql/">The Straight Path to PostgreSQL</a> appeared first on <a href="https://straightpathsql.com">SQL Server Consulting - Straight Path Solutions</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">At Straight Path Solutions, we offer a white-glove experience for database management with our <a href="https://straightpathsql.com/sql-server-consulting/dba-as-a-service/" data-type="page" data-id="189">DBA as a Service</a> and other offerings. We have some of the best technical professionals in the industry that are laser-focused on understanding everything we can about the Microsoft SQL Server database engine. We have wide expertise in everything from Performance to Replication to Availability groups and Clustering, on platforms from on-premises to Colo Hosting to Cloud platforms like Microsoft Azure and Amazon Web Services. </p>



<p class="wp-block-paragraph">But while the technical expertise is important, <strong><em>it&#8217;s the white-glove part that really provides our value</em></strong>. We learn what we can about our client&#8217;s environments, how they work, and where they need us to help. In some cases, we are their only data and database professionals. We handle everything from performance to HADR. In other cases, we are the specialists that handle the calls their database professionals make. We&#8217;ve added Microsoft Azure Architect services, as well as a Data Architect level of services in an advisement role as well &#8211; always with a focus on enablement, not just advising. <strong>The real value is caring about what happens at the client, and taking an ownership mentality to help them succeed. We&#8217;re extremely proud and very jealous about guarding those systems and providing the highest level of service we can.</strong></p>



<p class="wp-block-paragraph"><strong>As part of that understanding of our customers, we&#8217;ve heard loud and clear that many are planning to migrate to PostgreSQL</strong>. Its powerful engine, flexible query languages, and extension architecture allows it to do just about anything they need in their data estate. It does not have the same licensing costs (if any) that Microsoft&#8217;s platform requires. And it runs on multiple platforms and clouds &#8211; both as a bare-metal install and a global level service. Some clients aren&#8217;t migrating what they have, they are eyeing PostgreSQL for future projects. Some have third-party solutions that require a PostgreSQL back-end.</p>



<p class="wp-block-paragraph">In all these cases, we&#8217;ve seen the requirements our clients have, and in line with meeting their needs, we&#8217;ve started a &#8220;Postgres Tiger Team&#8221; within the company. These technical professionals are currently training and implementing PostgreSQL solutions on Windows, Linux, Containers and Clouds. We are taking SQL Server tickets and issues we have, and one team member will &#8220;break&#8221; their PostgreSQL installation and assign a ticket to another team member to fix, just like we would with SQL Server. They are writing&nbsp;blogs, teaching classes, and keeping the rest of the company up to date on PostgreSQL. And they are learning some interesting things along the way. You&#8217;ll see some&nbsp;blog&nbsp;posts here shortly about their journey. You&#8217;ll understand a little more about who they are, and you&#8217;ll get very frank and honest impressions about the good, the bad, the process, the learnings and much more as they take on this extra responsibility in their professional training.</p>



<p class="wp-block-paragraph"><strong>As a company, we&#8217;ll keep our focus on Microsoft SQL Server as we add new platforms our customers ask for. SQL Server is an amazing product with fantastic capabilities, and we&#8217;re committed to have the best technical support for it. Personally, I think SQL Server has a juggernaut of a path forward into the future. As a former SQL Server Microsoft team member, some of my blood, sweat and tears are in that codebase, and I am very excited about the new features I see coming out.</strong></p>



<p class="wp-block-paragraph">We hope you enjoy this series, and learn a little something along the way. I&#8217;ll be presenting a full one-day, hands-on workshop this Fall at the Live 360 conference. I hope you can join us there.<br><a href="https://nam12.safelinks.protection.outlook.com/?url=https%3A%2F%2Flive360events.com%2Fevents%2Forlando-2026%2Fsessions%2Ffriday%2Fdpf01-hol-wksp-postgresql.aspx&amp;data=05%7C02%7Cmike%40straightpathsql.com%7Cf44108accb024169eed208df10102f0d%7C037f3b9a86b84db88cc97669513e7e74%7C0%7C0%7C639247333884834194%7CUnknown%7CTWFpbGZsb3d8eyJFbXB0eU1hcGkiOnRydWUsIlYiOiIwLjAuMDAwMCIsIlAiOiJXaW4zMiIsIkFOIjoiTWFpbCIsIldUIjoyfQ%3D%3D%7C0%7C%7C%7C&amp;sdata=tWWjIXhty9csSFm5N3QGqqJOGpqo3cRqA3QYT7AD9Vo%3D&amp;reserved=0">https://live360events.com/events/orlando-2026/sessions/friday/dpf01-hol-wksp-postgresql.aspx</a></p>
<p>The post <a href="https://straightpathsql.com/the-straight-path-to-postgresql/">The Straight Path to PostgreSQL</a> appeared first on <a href="https://straightpathsql.com">SQL Server Consulting - Straight Path Solutions</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://straightpathsql.com/the-straight-path-to-postgresql/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
		<item>
		<title>What Should Happen in the First 90 Days of a Remote DBA Relationship</title>
		<link>https://straightpathsql.com/what-should-happen-in-the-first-90-days-of-a-remote-dba-relationship/</link>
					<comments>https://straightpathsql.com/what-should-happen-in-the-first-90-days-of-a-remote-dba-relationship/#respond</comments>
		
		<dc:creator><![CDATA[Mike Walsh]]></dc:creator>
		<pubDate>Tue, 15 Sep 2026 14:08:00 +0000</pubDate>
				<category><![CDATA[Database Administration]]></category>
		<category><![CDATA[DBA as a Service]]></category>
		<category><![CDATA[Buyers Guide]]></category>
		<category><![CDATA[Buying DBA Services]]></category>
		<category><![CDATA[Remote DBA Services]]></category>
		<guid isPermaLink="false">https://straightpathsql.com/?p=5123</guid>

					<description><![CDATA[<p>In the first 90 days of a healthy DBA as a Service relationship, the provider should have a thorough understanding of your environment, establish reliable access and monitoring, identify and plan for your most serious risks, begin reducing recurring disasters, and settle into a working rhythm with clear priorities and communication. By Day 90 you ... <a title="What Should Happen in the First 90 Days of a Remote DBA Relationship" class="read-more" href="https://straightpathsql.com/what-should-happen-in-the-first-90-days-of-a-remote-dba-relationship/" aria-label="Read more about What Should Happen in the First 90 Days of a Remote DBA Relationship">Read more</a></p>
<p>The post <a href="https://straightpathsql.com/what-should-happen-in-the-first-90-days-of-a-remote-dba-relationship/">What Should Happen in the First 90 Days of a Remote DBA Relationship</a> appeared first on <a href="https://straightpathsql.com">SQL Server Consulting - Straight Path Solutions</a>.</p>
]]></description>
										<content:encoded><![CDATA[
<p class="wp-block-paragraph">In the first 90 days of a healthy DBA as a Service relationship, the provider should have a thorough understanding of your environment, establish reliable access and monitoring, identify and plan for your most serious risks, begin reducing recurring disasters, and settle into a working rhythm with clear priorities and communication. </p>



<p class="wp-block-paragraph">By Day 90 you should feel less blind and less on your own with SQL Server. Our clients describe it as the ability to sleep at night without worrying about their SQL Servers. You&#8217;re onboarding with a vendor, but it shouldn&#8217;t feel like it.</p>



<p class="wp-block-paragraph">This post talks about what a healthy first 90 days should look like and where things commonly get harder than the sales conversation implied so you can be aware of it, look to make your part smoother and call out where it feels off. This is part of our <a href="https://straightpathsql.com/tag/buying-dba-services/">Buying DBA Services series of posts</a>. Whether you buy from us or a friend in the business, we want you to be equipped as you make that selection.</p>



<p class="wp-block-paragraph"><strong>Prefer to watch?</strong> I sat down with Evan, our COO and the person who oversees our onboarding process, to talk through what actually happens after a new DBA as a Service client signs, what tends to slow onboarding down, what happens when there&#8217;s already a fire, where we&#8217;ve gotten onboarding wrong, and what should feel different by Day 90.</p>



<div class="wrapper-video">
<div style="position: relative; padding-top: 56.25%;">
  <iframe
    src="https://customer-zfb3lxtijbv9qz8k.cloudflarestream.com/409b9f050b6d4fcb1cd14c554011a952/iframe?poster=https%3A%2F%2Fcustomer-zfb3lxtijbv9qz8k.cloudflarestream.com%2F409b9f050b6d4fcb1cd14c554011a952%2Fthumbnails%2Fthumbnail.jpg%3Ftime%3D%26height%3D600"
    loading="lazy"
    style="border: none; position: absolute; top: 0; left: 0; height: 100%; width: 100%;"
    allow="accelerometer; gyroscope; autoplay; encrypted-media; picture-in-picture;"
    allowfullscreen="true"
  ></iframe>
</div>
</div>



<div data-wp-context="{ &quot;autoclose&quot;: false, &quot;accordionItems&quot;: [] }" data-wp-interactive="core/accordion" role="group" class="wp-block-accordion is-layout-flow wp-block-accordion-is-layout-flow">
<div data-wp-class--is-open="state.isOpen" data-wp-context="{ &quot;id&quot;: &quot;accordion-item-1&quot;, &quot;openByDefault&quot;: false }" data-wp-init="callbacks.initAccordionItems" data-wp-on-window--hashchange="callbacks.hashChange" class="wp-block-accordion-item is-layout-flow wp-block-accordion-item-is-layout-flow">
<h3 class="wp-block-accordion-heading has-icon has-icon-right"><button aria-expanded="false" aria-controls="accordion-item-1-panel" data-wp-bind--aria-expanded="state.isOpen" data-wp-on--click="actions.toggle" id="accordion-item-1" type="button" class="wp-block-accordion-heading__toggle"><span class="wp-block-accordion-heading__toggle-title">&#8230; Click to expand to see full video transcript</span><span class="wp-block-accordion-heading__toggle-icon" aria-hidden="true">+</span></button></h3>



<div aria-labelledby="accordion-item-1" data-wp-bind--hidden="state.isHidden" data-wp-on--beforematch="actions.handleBeforeMatch" id="accordion-item-1-panel" role="region" class="wp-block-accordion-panel is-layout-flow wp-block-accordion-panel-is-layout-flow">
<h3 id="h-full-video-transcript" class="wp-block-heading">Full Video Transcript</h3>



<p class="wp-block-paragraph"><em>This transcript has been lightly edited with ChatGPT for readability. We left the conversation itself alone.</em></p>



<p class="wp-block-paragraph"><strong>Mike:</strong> So hey, Evan. As you know, we&#8217;re doing a bunch of blog posts and videos about the journey of buying DBA services. One of the things I wanted to write about and talk about was what onboarding should look like.</p>



<p class="wp-block-paragraph">I know that&#8217;s a loaded question because every onboarding looks different, but I spend a lot of time talking to our customers about what DBA as a Service is. You&#8217;re on those calls too. And then I sell them something, and you have to implement it and make it work.</p>



<p class="wp-block-paragraph">Hopefully I&#8217;m not making your job too difficult. You&#8217;re on the calls, so you can catch me if I&#8217;m saying something I shouldn&#8217;t be saying. But who better to talk to about what onboarding should look like than you? As our operations officer, you&#8217;re like the chief onboarding person too, for lack of a better title. You know what it looks like.</p>



<p class="wp-block-paragraph">So happy to talk to you. You&#8217;re here voluntarily and willingly, right?</p>



<p class="wp-block-paragraph"><strong>Evan:</strong> That&#8217;s right.</p>



<p class="wp-block-paragraph"><strong>Mike:</strong> Perfect. Good.</p>



<p class="wp-block-paragraph">I just want to ask maybe six questions and run through them. Maybe I&#8217;ll ask questions as follow-ups if something comes up, but we&#8217;ll see where it goes.</p>



<p class="wp-block-paragraph">Let&#8217;s just pretend I signed a new DBA as a Service client. Actually, we did just sign one. We signed a contract today.</p>



<p class="wp-block-paragraph">What happens now? What&#8217;s happening for that client? Don&#8217;t say their name, obviously, but what&#8217;s going on with them?</p>



<p class="wp-block-paragraph"><strong>Evan:</strong> As soon as they sign, our office administrator, Sheila, starts moving extremely quickly to get them assigned a Lead DBA. She works with you and me on that because once we&#8217;ve determined who the Lead DBA is, really the next thing that happens for the customer is the kickoff call.</p>



<p class="wp-block-paragraph">We also send over their onboarding document. That&#8217;s a set of information that tells them a little bit about how we work. It tells them about the different things we&#8217;re going to be doing, like installing our tools in their environment and collecting data from their servers so we can assess them.</p>



<p class="wp-block-paragraph">It also gives them an opportunity to provide us with information that helps us move forward more quickly with the onboarding. That might be the primary contacts we should communicate with for things like building a VM for us to install our tools on, or who the decision-maker is if we see something we really need to call out right away.</p>



<p class="wp-block-paragraph">We also get information about the group of people we&#8217;ll be working with. Maybe there&#8217;s a distribution list we can send our daily health check reports to. Or if we&#8217;re responding to an alert, we can send an email there and know they&#8217;re going to get it as a team and be able to jump on it as quickly as possible.</p>



<p class="wp-block-paragraph">The kickoff call getting scheduled is the most critical thing as soon as they sign. Once that happens, they&#8217;ve been given the opportunity to ask questions. They&#8217;ve heard from us about how we operate, and they&#8217;ve also given us an idea of what they feel success would look like in the first 90 days.</p>



<p class="wp-block-paragraph">If we&#8217;re onboarding a new client, we might have an idea in our mind of what we think should be done in the first 90 days. But if the client has a different idea in their head and we don&#8217;t speak that expectation, or they don&#8217;t have the opportunity to, we might knock it out of the park in our minds with the onboarding but miss a critical piece.</p>



<p class="wp-block-paragraph">Maybe they had a SQL Server we didn&#8217;t discuss right away for whatever reason. Although if it&#8217;s causing them pain, we probably did.</p>



<p class="wp-block-paragraph">But maybe they just had an expectation we didn&#8217;t draw out of them during that onboarding phase. We think we&#8217;ve had a successful onboarding, but they were left a little disappointed because we missed something, whether it was communicated or not.</p>



<p class="wp-block-paragraph">So the kickoff call is really important for us to understand what success should actually look like, so we can look back after 90 days and know it was a successful onboarding.</p>



<p class="wp-block-paragraph">The kickoff call and the onboarding document are the two things that happen.</p>



<p class="wp-block-paragraph"><strong>Mike:</strong> And the kickoff call is where they meet the Lead DBA we&#8217;ve assigned, right?</p>



<p class="wp-block-paragraph"><strong>Evan:</strong> Correct. Yep. The Lead DBA gets the opportunity to ask questions about their environment, their team, their pain points, so they can start building a relationship with them that hopefully is going to last for a really long time and be really productive.</p>



<p class="wp-block-paragraph"><strong>Mike:</strong> Perfect. What do you think slows onboarding down the most? I already know the answer to this question probably, but I&#8217;m curious what you say.</p>



<p class="wp-block-paragraph"><strong>Evan:</strong> I think we&#8217;ve blogged about it before and probably always will, but it&#8217;s access.</p>



<p class="wp-block-paragraph">We&#8217;re being given privileged access to critical environments. Especially in cases where there isn&#8217;t an immediate need, there&#8217;s going to be some red tape around getting that access provisioned.</p>



<p class="wp-block-paragraph">As you know, a customer who&#8217;s in pain because of their environment&#8230;</p>



<p class="wp-block-paragraph"><strong>Mike:</strong> Throws the keys to everything.</p>



<p class="wp-block-paragraph"><strong>Evan:</strong> Things just open up a little bit more quickly for the people who can fix the pain.</p>



<p class="wp-block-paragraph">But especially if it&#8217;s an environment where it&#8217;s more proactive of them to reach out to us for help, the red tape around getting that access provisioned is usually the biggest challenge.</p>



<p class="wp-block-paragraph">We harp on that. Even before our kickoff meeting or the onboarding document gets sent along, we really try to help them understand what we need and how important it is to get it for us.</p>



<p class="wp-block-paragraph">Inevitably, maybe once or twice a year, we bring in a customer where they seem to understand the access piece, but it&#8217;s different than we expected and it still drags along.</p>



<p class="wp-block-paragraph"><strong>Mike:</strong> We&#8217;re getting better at it, though. We send a security questionnaire ahead of time to many clients where we can tell it&#8217;s going to be access or firewall connection problems and all that.</p>



<p class="wp-block-paragraph"><strong>Evan:</strong> Exactly. Sometimes we know when it&#8217;s going to drag along and we do our best to prevent that.</p>



<p class="wp-block-paragraph">But that&#8217;s the biggest thing that slows it down because until we can get in there and start solving problems, discovering problems, and installing our monitoring, we&#8217;re blind to the environment and our hands are tied behind our back.</p>



<p class="wp-block-paragraph">Even if we know something is wrong through a screen share, email communication, or a phone call, we really can&#8217;t do a whole lot. So it&#8217;s definitely the access.</p>



<p class="wp-block-paragraph"><strong>Mike:</strong> Okay. This is a loaded question because it really differs, and maybe you can talk about the &#8220;two trains on the tracks&#8221; thing that I always tell people on our calls.</p>



<p class="wp-block-paragraph">What are we really trying to accomplish in the first, say, 30 or maybe 60 days of the relationship?</p>



<p class="wp-block-paragraph"><strong>Evan:</strong> On our side, we&#8217;re trying to understand their environment, and we&#8217;re trying to solve any problems that, as you always say, you can&#8217;t go to sleep at night knowing about.</p>



<p class="wp-block-paragraph">On their side, we want them to be confident in the first 90 days that there&#8217;s nothing in their environment they don&#8217;t know about. There are no skeletons in the closet that haven&#8217;t been discovered, and we have our monitoring going.</p>



<p class="wp-block-paragraph">A big part of that is getting our daily health check report process going with our support team. Then they&#8217;re hearing from us every day, and they can check their email first thing in the morning and understand whether there&#8217;s anything they really need to worry about on the SQL side that day.</p>



<p class="wp-block-paragraph">Building the confidence and trust between us and the customer is the number one thing. That comes through communication. It comes through our monitoring. It comes through the questions we&#8217;re asking them.</p>



<p class="wp-block-paragraph">So building the confidence is really important.</p>



<p class="wp-block-paragraph">Then number two is resolving any of the immediate pains they came to us because of. Sometimes that&#8217;s really acute, and it&#8217;s something we address within the first week because it&#8217;s so important to them and causing them so many issues.</p>



<p class="wp-block-paragraph">Or maybe it&#8217;s just their top priority. It isn&#8217;t hurting them badly at the moment, but it&#8217;s their top priority, and we really want to drive forward and solve that within the first 90 days if we can.</p>



<p class="wp-block-paragraph"><strong>Mike:</strong> Or we see they have no backups and they didn&#8217;t know it.</p>



<p class="wp-block-paragraph">I still get surprised when I see that. Do you get surprised? I probably shouldn&#8217;t be.</p>



<p class="wp-block-paragraph">Do you get surprised when you do an onboarding and see, &#8220;Oh, you haven&#8217;t had backups in years,&#8221; or the backups you thought you were taking aren&#8217;t?</p>



<p class="wp-block-paragraph"><strong>Evan:</strong> Yeah, I do.</p>



<p class="wp-block-paragraph">I get more surprised as AI becomes more prevalent in everyone&#8217;s workflow because even when we come into companies that don&#8217;t have a dedicated DBA, or they have somebody who&#8217;s the dedicated DBA by attrition, they&#8217;re just assigned to that role because&#8230;</p>



<p class="wp-block-paragraph"><strong>Mike:</strong> They can spell SQL, I always say on the sales calls.</p>



<p class="wp-block-paragraph"><strong>Evan:</strong> They&#8217;re the sysadmin. They can spell SQL.</p>



<p class="wp-block-paragraph">And as AI becomes more prevalent, it&#8217;s one prompt you&#8217;d need to write that says, &#8220;Hey, I just got saddled with the responsibility of taking care of our company&#8217;s SQL Servers. What are the main things I need to worry about?&#8221;</p>



<p class="wp-block-paragraph">It gets more surprising over time because that prompt would be really simple to write. But whether it&#8217;s busyness or just a lack of awareness, it&#8217;s still a thing.</p>



<p class="wp-block-paragraph">We still come into environments that don&#8217;t have backups.</p>



<p class="wp-block-paragraph">The other big one is integrity checks. We run into that all the time, maybe more than backups.</p>



<p class="wp-block-paragraph"><strong>Mike:</strong> Oh yeah, a lot more.</p>



<p class="wp-block-paragraph"><strong>Evan:</strong> Those are just foundational pieces of managing a SQL Server environment.</p>



<p class="wp-block-paragraph"><strong>Mike:</strong> Or the too-many-backups problem with Veeam and all.</p>



<p class="wp-block-paragraph"><strong>Evan:</strong> Yeah. We have conflicts in the backup chain, and ultimately it comes down to not having a restore strategy.</p>



<p class="wp-block-paragraph">People have a backup strategy, but maybe they don&#8217;t have a restore strategy. Backups are one piece, but can you actually recover using them?</p>



<p class="wp-block-paragraph">Those are big questions we hope to solve within the first 90 days too.</p>



<p class="wp-block-paragraph"><strong>Mike:</strong> And I know this almost never happens, so you can tell me sarcastically: What happens when we find a client on fire in the first 30 days?</p>



<p class="wp-block-paragraph">I should just say it almost always happens because people don&#8217;t call us very often and say, &#8220;Hey, I don&#8217;t know if we&#8217;re good or bad, but can you just come and be our DBA team because we realize we should have one?&#8221;</p>



<p class="wp-block-paragraph">They normally have something going on.</p>



<p class="wp-block-paragraph">So talk about the two trains on the tracks and what we do with that. Because we care about the basics, but they care about their application not working and their website timing out.</p>



<p class="wp-block-paragraph"><strong>Evan:</strong> Right. The two trains on the tracks is a good way of putting it because we don&#8217;t want to slow down the first train.</p>



<p class="wp-block-paragraph">The first train is the onboarding. It&#8217;s getting our monitoring tools in place. It&#8217;s doing a deep-dive assessment of at least a handful of their SQL Servers to get an idea of what&#8217;s going on.</p>



<p class="wp-block-paragraph">That&#8217;s not always the immediate pain. That&#8217;s base configurations, backups, integrity checks. Those are the standard items we want to look for in any environment.</p>



<p class="wp-block-paragraph">We want to make sure we&#8217;re discovering those things on that first track during onboarding, and we don&#8217;t want to slow it down because something else came up.</p>



<p class="wp-block-paragraph">So when something else does come up, which it almost always does, we throw a second train on the tracks.</p>



<p class="wp-block-paragraph">The best way I&#8217;ve found to handle that is to segregate responsibilities a little bit. Our support team does a great job with the onboardings, and I still help out with that as well to take some of the load off the support team.</p>



<p class="wp-block-paragraph">But if we discover something serious, like a client in the real estate industry that we brought on recently, they had serious performance issues. They had applications going down frequently that were tied to SQL Server.</p>



<p class="wp-block-paragraph">We kept that onboarding track going, but we brought in their Lead DBA. You jumped into the fray a little bit. We were solving those problems simultaneously with a separate communication cadence so we could keep the onboarding moving while also solving that immediate problem.</p>



<p class="wp-block-paragraph"><strong>Mike:</strong> Technically speaking, their onboarding isn&#8217;t even supposed to start until October 1st.</p>



<p class="wp-block-paragraph"><strong>Evan:</strong> Yeah. They haven&#8217;t even technically started their onboarding.</p>



<p class="wp-block-paragraph">Although with a client like that, and really any client when we have the bandwidth, we start the onboarding as soon as they&#8217;ve signed because that gives us maybe even more than 90 days to hit that target of making them feel comfortable and building confidence in us in the first 90 days.</p>



<p class="wp-block-paragraph">The two trains on the tracks has been a great tool for us because it shows the client we&#8217;re not going to force them to go through this standard, rigid onboarding process before we can actually start solving the problems hurting them today.</p>



<p class="wp-block-paragraph">But it also allows us to accomplish those foundational things that make for a good relationship, give us eyes on their environment, and provide all the other pieces that come with DBA as a Service.</p>



<p class="wp-block-paragraph">So we can solve the immediate fire and make them feel better right away, but also build confidence that we&#8217;re going to take great care of their whole environment and not just the one SQL Server causing the pain today or this week.</p>



<p class="wp-block-paragraph"><strong>Mike:</strong> Is there a moment when a relationship feels like it&#8217;s no longer onboarding and they&#8217;re now a part of our team?</p>



<p class="wp-block-paragraph">Our clients stay with us, knock on bald guy&#8217;s head, as I always say, for a long time. But when does it feel like we&#8217;re their partner and not just their onboarding strangers?</p>



<p class="wp-block-paragraph"><strong>Evan:</strong> It depends. The DBA answer.</p>



<p class="wp-block-paragraph">If we have a client that comes in with their hair on fire and we&#8217;re able to solve that, we burn the midnight oil with their team. We&#8217;re having those conversations that happen at 2:00 AM on a Teams call while you&#8217;re solving a high-priority problem.</p>



<p class="wp-block-paragraph">That can happen really quickly.</p>



<p class="wp-block-paragraph">You can build those relationships in the trenches and have a partnership with a customer within a week. If you come in and you&#8217;re a key piece of solving something essentially grinding their business to a halt, it can happen right away.</p>



<p class="wp-block-paragraph">In a more normal onboarding where that doesn&#8217;t happen, I think it&#8217;s after our initial assessments have been completed, we&#8217;ve delivered them in a meeting with the key people at the customer, and the recommendations we&#8217;ve made have been implemented.</p>



<p class="wp-block-paragraph">Once that has happened and our monitoring is in place, they&#8217;re hearing from us daily. They know their environment isn&#8217;t on fire, and they&#8217;re seeing improvement from the changes we&#8217;ve recommended with our initial assessments.</p>



<p class="wp-block-paragraph">Then we start to shift our focus to how we can help them move forward down the road.</p>



<p class="wp-block-paragraph">What&#8217;s coming up? Are we going to start upgrading to a newer version of SQL Server? Do you have a migration project that&#8217;s going to help you consolidate and save money?</p>



<p class="wp-block-paragraph">Those are more proactive things that a lot of times a client comes in not having the bandwidth to think about.</p>



<p class="wp-block-paragraph">As soon as we&#8217;ve made it so they&#8217;re very comfortable with where their environment is, there aren&#8217;t things breaking all the time, and we&#8217;ve delivered those assessments and implemented those recommendations, sometimes that&#8217;s as soon as the second monthly check-in. So that could be halfway through, or maybe two months into, their first quarter.</p>



<p class="wp-block-paragraph">Sometimes it&#8217;s a little longer because enough things turn up during the health check process that it might take a quarter to get them all implemented. Some of those changes aren&#8217;t easy.</p>



<p class="wp-block-paragraph"><strong>Mike:</strong> Especially&#8230;</p>



<p class="wp-block-paragraph"><strong>Evan:</strong> Especially if you have a really busy environment and it&#8217;s difficult to get a maintenance window.</p>



<p class="wp-block-paragraph">On average, I&#8217;d say it happens by the end of the first quarter because we&#8217;ve had a chance to meet with them quite a few times. We&#8217;ve reviewed their environment, made sure they&#8217;re aware of everything that might need to be changed, and they&#8217;ve started getting into a regular cadence of communicating with our team and working with us to solve problems.</p>



<p class="wp-block-paragraph">They trust us by the end of that first quarter, usually. That is the goal.</p>



<p class="wp-block-paragraph">So I&#8217;d say by the end of the first quarter is when that starts to happen.</p>



<p class="wp-block-paragraph"><strong>Mike:</strong> That goes into my last question, I think, anyway.</p>



<p class="wp-block-paragraph">By Day 90, what should feel different for the client? Obviously the relationship is there, but what else do we expect to be different for that client after 90 days that wasn&#8217;t true at the beginning?</p>



<p class="wp-block-paragraph"><strong>Evan:</strong> It&#8217;s the confidence.</p>



<p class="wp-block-paragraph">It&#8217;s the confidence, and I think for many clients it&#8217;s having the bandwidth to worry about other parts of their job that maybe they were having to disregard because SQL was on fire.</p>



<p class="wp-block-paragraph">Or maybe it&#8217;s having the bandwidth to think about the future of SQL Server. How are we going to upgrade? How are we going to consolidate? Whatever their goals are, they now have the freedom to think about that because the day-to-day anxiety of whether things are okay is on us.</p>



<p class="wp-block-paragraph">We&#8217;ve hopefully proven they don&#8217;t have to worry about that because if something is wrong, we&#8217;re going to let them know within 15 minutes and we&#8217;re going to be on it.</p>



<p class="wp-block-paragraph">So confidence is what changes in the first 90 days.</p>



<p class="wp-block-paragraph">For many clients, that&#8217;s a tangible thing because there are a lot of clients that come to us where one of the first things we hear is that their DBAs are spending a bunch of time overnight and on weekends checking on things because maybe they have processes that are so bad and slow that they have to be monitored almost 24/7, and they&#8217;re doing that manually.</p>



<p class="wp-block-paragraph">If we&#8217;re able to allow a client&#8217;s DBA to sleep, that&#8217;s super impactful.</p>



<p class="wp-block-paragraph">It feels great to make that kind of difference. And the sleep is ultimately coming from the confidence that their environment is taken care of.</p>



<p class="wp-block-paragraph">So again, it&#8217;s the confidence piece.</p>



<p class="wp-block-paragraph"><strong>Mike:</strong> That makes sense.</p>



<p class="wp-block-paragraph">Let me ask a bonus question. We&#8217;re trying to be transparent with all these. I have the post talking about the ways it can go wrong and the ways I&#8217;ve messed it up.</p>



<p class="wp-block-paragraph">When you think about onboardings, what are lessons we&#8217;ve learned? Or lessons you wish maybe I still had to learn?</p>



<p class="wp-block-paragraph">Here&#8217;s your chance to give me a complaint about something. Maybe it&#8217;s something I promised a client in the past that we stopped doing. Maybe it&#8217;s the access thing.</p>



<p class="wp-block-paragraph">Where have we gotten it wrong, and what have we done about it? Or are we still getting it wrong anywhere?</p>



<p class="wp-block-paragraph"><strong>Evan:</strong> I think a lot of the time in the past, it&#8217;s been not effectively putting those multiple trains on the tracks when we&#8217;ve needed to.</p>



<p class="wp-block-paragraph">You and I both have this desire to understand what a client&#8217;s problems are and help solve them. So when a client comes to us with immediate pain, whether we&#8217;re in the sales process or early in onboarding, we&#8217;re naturally going to gravitate toward solving that.</p>



<p class="wp-block-paragraph">I&#8217;ve been doing operations here for a handful of years. I don&#8217;t know how long. But while I&#8217;ve been involved in the onboarding process, our documentation and our process mindset have always been evolving.</p>



<p class="wp-block-paragraph">Especially early on, we would get hyper-focused on those immediate problems.</p>



<p class="wp-block-paragraph"><strong>Mike:</strong> The fun things.</p>



<p class="wp-block-paragraph"><strong>Evan:</strong> Yeah.</p>



<p class="wp-block-paragraph">And that would mean the boring part of onboarding, that first track, wasn&#8217;t moving the way it needed to.</p>



<p class="wp-block-paragraph">Maybe we solve the fire and realize we&#8217;re a month and a half into onboarding, but we don&#8217;t have our assessments done. Or our monitoring tools still have roadblocks that need to be cleared so we can really watch the whole environment.</p>



<p class="wp-block-paragraph">Those basics could get skipped or delayed because, for lack of a better term, we got distracted by the thing that was on fire.</p>



<p class="wp-block-paragraph">That&#8217;s one of the things I think we&#8217;re still prone to if we&#8217;re not careful. But we&#8217;ve made a lot of effort toward making sure we protect the basic part of onboarding even while those other things are going on.</p>



<p class="wp-block-paragraph">Ultimately, the main way we can fail in an onboarding is communication.</p>



<p class="wp-block-paragraph">If a client has expectations we&#8217;ve given them that we don&#8217;t meet, or expectations that just weren&#8217;t discussed, that&#8217;s a communication issue. That&#8217;s the number one way I think any relationship can get off on the wrong foot or sour over time.</p>



<p class="wp-block-paragraph"><strong>Mike:</strong> Any kind of relationship, yeah.</p>



<p class="wp-block-paragraph"><strong>Evan:</strong> Yeah. So communication is the big one.</p>



<p class="wp-block-paragraph">Then just delivering on what we&#8217;ve promised is the other big thing.</p>



<p class="wp-block-paragraph">If we promise we&#8217;re going to get eyes on the environment and have our daily health checks going, and then that doesn&#8217;t happen, even if it was for noble reasons, that&#8217;s the biggest reason we could fail or not meet what we strive to meet as far as an onboarding being successful.</p>



<p class="wp-block-paragraph"><strong>Mike:</strong> Yeah, that&#8217;s right.</p>



<p class="wp-block-paragraph">And that&#8217;s why we try to limit ourselves to two or three onboardings at most per month.</p>



<p class="wp-block-paragraph">It happens that we have three onboardings right now, but that&#8217;s our max for October, and all of them started some earlier version of the process.</p>



<p class="wp-block-paragraph">But the fourth one, I promise you, I&#8217;d say no to. I&#8217;d push it into November because we can only put so many trains on the tracks. We have the other 130 customers we support and have to keep doing that work, so we don&#8217;t want anything to get lost.</p>



<p class="wp-block-paragraph"><strong>Evan:</strong> Yeah, absolutely.</p>



<p class="wp-block-paragraph"><strong>Mike:</strong> And I think in the past, maybe in the early days, I said yes a lot more to clients too, even when they weren&#8217;t great fits.</p>



<p class="wp-block-paragraph"><strong>Evan:</strong> Yeah. As we&#8217;ve grown, it&#8217;s always been an effort to make sure the structure is there to support all the different things we&#8217;re trying to do for a customer.</p>



<p class="wp-block-paragraph"><strong>Mike:</strong> Cool. Anything else you want to add about onboardings or what the first 90 days should look like?</p>



<p class="wp-block-paragraph"><strong>Evan:</strong> I think if you&#8217;re a customer and you&#8217;re looking for a DBA as a Service provider, being able to define what it is you hope to get out of the relationship is really helpful.</p>



<p class="wp-block-paragraph">If you&#8217;re going to work with a good DBA as a Service provider, it could be us, it could be any number of other ones, being able to define what you hope to get and your expectations from the relationship gives your provider a target to shoot for.</p>



<p class="wp-block-paragraph">Anybody worth their salt is going to do their absolute utmost to meet that.</p>



<p class="wp-block-paragraph">So if you&#8217;re able to clearly define it, you&#8217;re setting yourself and the DBA as a Service provider up for success.</p>



<p class="wp-block-paragraph">That&#8217;s the only thing I&#8217;d add.</p>



<p class="wp-block-paragraph"><strong>Mike:</strong> Perfect. I love it.</p>



<p class="wp-block-paragraph">Well, thanks for your time. You should probably get back. Sheila literally sent us a bunch of messages about that new client onboarding.</p>



<p class="wp-block-paragraph"><strong>Evan:</strong> Yeah, I&#8217;ve got a bunch of onboarding to work on.</p>



<p class="wp-block-paragraph"><strong>Mike:</strong> So you&#8217;ve got to do some onboarding work now.</p>



<p class="wp-block-paragraph">Thanks, Evan.</p>



<p class="wp-block-paragraph"><strong>Evan:</strong> Yeah, absolutely.</p>
</div>
</div>
</div>



<h3 id="h-define-what-success-looks-like-before-you-start" class="wp-block-heading">Define What Success Looks Like Before You Start</h3>



<p class="wp-block-paragraph">This is something pretty important and it should be part of your kick-off call. Evan got to this in the video and I wanted to add it to the post. Whether you work with us or another provider:</p>



<p class="wp-block-paragraph"><strong>You should tell your DBA provider what success looks like to you.</strong></p>



<p class="wp-block-paragraph">That sounds obvious, but it&#8217;s easy to skip. Your provider may have a perfectly good 90-day onboarding checklist. They may get monitoring installed, review your backups, find configuration problems, check integrity, document the environment, and feel like they knocked the onboarding out of the park.</p>



<p class="wp-block-paragraph">Meanwhile, you&#8217;re wondering why nobody fixed the performance problem that caused you to hire them in the first place.</p>



<p class="wp-block-paragraph">That&#8217;s a failed onboarding, even if every box on the provider&#8217;s checklist is green.</p>



<p class="wp-block-paragraph">Before you start, I&#8217;d make sure both sides can answer this question:</p>



<p class="wp-block-paragraph"><strong>&#8220;Ninety days from now, what needs to be different for us to consider this relationship a success?&#8221;</strong></p>



<p class="wp-block-paragraph">The answer might be fewer outages. It might be getting your DBA out of the 2 AM alert business. It might be knowing whether your backups can actually be restored. It might be getting a specific performance problem under control. Or it might simply be understanding the risks you don&#8217;t know about today.</p>



<p class="wp-block-paragraph"><strong><em>The provider should have an onboarding process. But your definition of success needs to be part of it.</em></strong></p>



<p class="wp-block-paragraph"></p>



<h3 id="h-what-happens-immediately-after-signing" class="wp-block-heading">What happens immediately after signing?</h3>



<p class="wp-block-paragraph">Onboarding with us doesn&#8217;t always wait for the official start date.</p>



<p class="wp-block-paragraph">After signing, a provider typically sends welcome and contact information, schedules a kickoff meeting, provides onboarding documentation and forms for you to use for access. They begin identifying key contacts, and usually start access work as soon as you are ready. In many cases the client can already reach the team for advice or issues, and monitoring or health-check work can begin as soon as usable access exists even if it&#8217;s a bit ahead of the &#8220;official start date.&#8221;</p>



<p class="wp-block-paragraph">At Straight Path, we like to start each DBA as a Service retainer on the first of a month and we limit ourselves to two to three active onboardings per month, so no one falls behind.</p>



<p class="wp-block-paragraph">Signing on August 15 for a September 1 start does not automatically mean everyone sits idle until September 1. Many providers (including us) would rather begin solving access and visibility earlier and effectively give the first quarter a little extra runway than spend the first several weeks of the official engagement still blind.</p>



<h3 id="h-what-access-does-a-remote-dba-team-need" class="wp-block-heading">What access does a Remote DBA team need?</h3>



<p class="wp-block-paragraph">A DBA team needs sufficient access to actually perform DBA work. That commonly includes remote connectivity, appropriate SQL Server permissions (SA access is really necessary to truly effectively be your DBA team. We can use a PAM tool and have non-admin and admin accounts, but it&#8217;s just necessary to succeed.) Jump-servers need to be setup for many providers, including us, and coordination around MFA/PAM/VPN needs to happen. Firewall internal and external connectivity for monitoring needs to be solid.</p>



<p class="wp-block-paragraph"><strong>Effective working access</strong> is one of the biggest variables in onboarding speed.</p>



<p class="wp-block-paragraph"><strong>How customers can make this easier</strong></p>



<ul class="wp-block-list">
<li>Identify who owns VPN and security access before kickoff </li>



<li>Test credentials before sending them</li>



<li>Document VPN, MFA, and PAM procedures</li>



<li>Determine who can grant SQL-level access</li>



<li>Bring the MSP, network, or security team into the process early when needed</li>



<li>Know who actually owns administrative access to vendor-managed systems</li>
</ul>



<p class="wp-block-paragraph">A real-world pattern worth noting: some organizations discover during onboarding that they do not actually possess the level of SQL Server access they thought they did, especially around vendor-managed applications.  We&#8217;ve seen this happen at Credit Unions and a couple radiology practices that have &#8220;over-protective&#8221; vendors. That discovery itself can surface risk.</p>



<p class="wp-block-paragraph"><strong>How us providers can make this easier</strong></p>



<ul class="wp-block-list">
<li>Provide options for shared access and use a SOC/HIPAA/PCI compliant tool that a client can use as an option with logging, MFA and controls already</li>



<li>Document your needs ahead of time and get that to the clients before a sales decision is made</li>



<li>Provide a secure portal to share information consistently</li>



<li>Suggest an access kick off meeting &#8211; sort of a pre-kick off kickoff meeting where the access is squared away.</li>



<li>Ask the provider to test the access first, remind them that onboarding eats into billable hours and we want to use those hours to make a difference.</li>
</ul>



<h3 id="h-days-1-30-stop-being-blind" class="wp-block-heading">Days 1–30: Stop being blind</h3>



<p class="wp-block-paragraph">The primary job in the first month is visibility. Visibility for the Remote DBA provider and with their tools, hopefully much more visibility for you and your support teams.</p>



<p class="wp-block-paragraph">Clients often hire a DBA provider because of a problem that is seen by all and obvious to the business&#8230;<em> Performance, migration, upgrade, recurring outages, a recent ransomware, a failed compliance or regulatory exam, capacity, or technical debt</em>. <strong>Those matter</strong>. But before spending the bulk of the engagement tuning a query, the provider should understand whether the environment is fundamentally recoverable and safe enough to work on. <strong>I always call that, &#8220;the things that we can&#8217;t sleep at night knowing you have wrong.&#8221;</strong></p>



<p class="wp-block-paragraph">Initial work should look for high-risk issues such as missing or broken backups, including the ever-present &#8220;rogue backup&#8221; we find with <a href="https://straightpathsql.com/sp_check/sp_checkbackup/" data-type="sp_check" data-id="1581">sp_CheckBackup</a>, restore/recoverability problems, corruption, missing integrity checks, serious configuration issues, broken maintenance, capacity or storage threats, obvious HA/DR risk, and dangerous preexisting conditions (Yes I mean it&#8217;s not normal to get a stack dump and failover every day when change tracking cleans up with the busier afternoon cleanup&#8230;)</p>



<p class="wp-block-paragraph"><strong>Two trains on the tracks</strong></p>



<p class="wp-block-paragraph">Sometimes we have to do what I call &#8220;putting two trains on the tracks&#8221; in sales and onboarding calls&#8230; We have a team for a reason and we can multi-task even for one client.</p>



<p class="wp-block-paragraph">One train deals with the scary things capable of causing data loss, outages, or serious business risk. The other deals with the reason the client originally called.</p>



<p class="wp-block-paragraph">A good provider should not refuse to touch the performance problem until a 97-point checklist is complete. It also should not spend 30 hours tuning queries while nobody notices the database has not had a valid backup in six weeks. It&#8217;s balancing those that makes a difference. The best tuned database doesn&#8217;t matter when Murphy swings by and breaks it all hard because we all agreed to save that &#8220;boring&#8221; stuff for later.</p>



<p class="wp-block-paragraph"><strong>When should monitoring be installed?</strong> Ideally very early, even before the official start date is what we strive for when the access is good and we sign early enough. Installing monitoring is not the same thing as managing the environment, though. Once data starts flowing, someone still has to review it, understand what matters, tune noise, escalate real risk, learn what is normal for this environment, and prevent recurring alerts from becoming “the one we ignore.” That first month we are titrating alerts, negotiating on which errors are really &#8220;acceptable&#8221;, fixing maintenance, and trying to make the daily checks more green and make your server become a happier, quieter server in our dashboards.</p>



<p class="wp-block-paragraph"><strong>What happens if something dangerous is found immediately?</strong> There is no true catch-all answer. Every company has different change-management expectations. Some say “just fix it.” Even then, a good provider will explain what was found, why it matters, and what is about to change. Anything requiring downtime needs an approved plan or window. If something is truly dangerous and the client is not responding, escalation may move from tickets to emails to phone calls to increasingly more <em>direct</em> communication. Part of onboarding is learning how your company makes technical decisions and approves change.</p>



<p class="wp-block-paragraph"><strong>How are priorities decided?</strong> A useful model is the one I talked about in the <a href="https://straightpathsql.com/why-sql-server-health-check-findings-dont-get-implemented/">health check blog post</a> last month: Finding → Risk → Priority → Owner → Action. In practice the provider and client has their own priorities, but a provider also is coming at this from being burned a LOT. Corruption, for example, is rare for most folks &#8211; but a SQL Server consultancy sees it all the time and gets those phone calls where the answer is &#8220;sorry we can&#8217;t do anything, you should have called us last week.&#8221; The provider may be most concerned about recoverability; the client may be most concerned about the performance issue users feel every afternoon. <strong><em>Both matter. Sometimes work can proceed in parallel. Sometimes available hours or severity mean lower-priority work genuinely has to wait.</em></strong></p>



<p class="wp-block-paragraph"><strong>How many DBA hours does onboarding consume?</strong> It varies substantially. For many engagements it falls in the 5–10 hour range, but access problems, security processes, multiple teams approving the various accounts and VPNs and firewalls, poorly documented VPN/PAM systems, vendors with SA access approving access, and unavailable customer resources can stretch it.</p>



<p class="wp-block-paragraph">Sometimes the right answer for us is to delay the formal onboarding date rather than burn a client’s paid DBA hours fighting an access problem they are not yet ready to solve.</p>



<p class="wp-block-paragraph"><strong>What should be different by Day 30?</strong> Green everywhere is not the test. But the big risks absolutely should be calming down.</p>



<p class="wp-block-paragraph">By approximately Day 30, monitoring and daily reporting should be flowing, major access issues should largely be resolved, the primary relationship should be established, the scariest findings should be decreasing, backup and recoverability gaps should be understood and being addressed or, frankly, solved where the provider can just fix it, missing maintenance should be improving, and overall stability should be moving in the right direction. A terrible environment may still have plenty of red. It should simply be safer than Day 1.</p>



<p class="wp-block-paragraph"><strong>How disruptive is onboarding to your team?</strong> There is some disruption. Someone (or 3 teams) on your side will need to help with access, answer environment questions, and participate in prioritization. We&#8217;ll send inventory documents that your team needs to fill out identifying owners and purposes of servers. The better providers keep that load as reasonable as possible, but it is not zero. It does go down with time once we are onboarded. We do a check-in call at least monthly and the more folks impacted by the SQL Servers and who impact it that show up, the better. Though we find it a lot easier with one owner on the client side ultimately responsible for the final answer and direction.</p>



<p class="wp-block-paragraph"><strong>What if a major incident happens in week 3?</strong> A provider that has already established access and started the process of learning the environment should be able to respond without starting from zero. The response will still be constrained by the access, change control, and vendor relationships that exist at that moment, but that&#8217;s why you hired us &#8211; and the DBA life is a fun life with new challenges and problems &#8211; a good team is jumping in and helping, but success may not come as quickly as it would have on day 67. </p>



<h3 id="h-days-30-60-stabilize-and-begin-solving-the-original-problem" class="wp-block-heading">Days 30–60: Stabilize and begin solving the original problem</h3>



<p class="wp-block-paragraph">The second month should start moving forward in a more steady way. </p>



<p class="wp-block-paragraph">You are still remediating findings, reducing scary risks, cleaning up remaining access issues, tuning alerts, and challenging recurring “acceptable” errors. The support team has stabilized much of the environment, best practices are becoming the norm, the most critical servers are good, the other ones are getting the checks. The Lead DBA is meeting at least monthly and the performance, migrations, upgrades, architecture, technical debt, or projects you brought the DBA as a Service team in for are being addressed and planned.</p>



<p class="wp-block-paragraph">This is the transition from pure onboarding and discovery toward normal managed DBA work and a DBA relationship.</p>



<p class="wp-block-paragraph"><strong>When does the Lead DBA actually know your environment?</strong> There is no magic date. Context begins accumulating immediately through sales notes, kickoff, onboarding data, and early tickets. “Knowing the environment” does not mean memorizing every database name. It means understanding the applications, business priorities, unusual vendor requirements, maintenance windows, decision-makers, recurring issues, known landmines, architecture, what absolutely cannot go down, and what the client is trying to accomplish. </p>



<p class="wp-block-paragraph">You should not have to reintroduce your company every time you open a ticket and the consistency from the lead DBA being involved and meeting regularly really helps that. And the full team is made aware of what is going on with the clients because we let our team take vacations.</p>



<p class="wp-block-paragraph"><strong>What happens if the plan is clearly undersized once the real backlog is visible?</strong> This can happen. At Straight Path we often talk about that risk in sales calls where we have our discussions about managed DBA services pricing. A good provider raises that potential directly instead of waiting for the &#8220;Oh crap&#8221; moment. Options usually include adjusting the plan, extending the timeline, or accepting that some items will remain lower priority. It should depend on the needs and budget of the client &#8211; and that&#8217;s why we used to call our service &#8220;FlexDBA&#8221; &#8211; clients can still flex up or down when the needs dictate.</p>



<h3 id="h-days-60-90-heading-towards-a-normal-rhythm" class="wp-block-heading">Days 60–90: Heading towards a normal rhythm</h3>



<p class="wp-block-paragraph">By the third month you are learning what the real ongoing relationship looks like. You should have met with your main contact at least a few times towards the end of that 90 days.</p>



<p class="wp-block-paragraph">Initial firefighting should be declining. There is actual evidence of how many hours the environment consumes, what recurring responsibilities exist, what projects are coming, how much technical debt remains, and whether the current service level is properly sized.</p>



<p class="wp-block-paragraph">This is the natural point to ask what success looks like three, six, and twelve months out, and whether the service level still makes sense for the next quarter. And at Straight Path that&#8217;s what we do &#8211; we want to plan for the future with you. &#8220;Where do you want to be in a year?&#8221; is something we should know by the end of the first quarter and a plan should be formed that helps get there. Titrated to the budget and your competing priorities and the time we need.</p>



<h3 id="h-what-can-make-the-first-90-days-go-badly" class="wp-block-heading">What can make the first 90 days go badly</h3>



<p class="wp-block-paragraph"><strong>Common failure patterns:</strong></p>



<ul class="wp-block-list">
<li><strong>Access is not ready</strong>. Credentials untested, no clear owner, security teams not aligned</li>



<li><strong>Nobody can approve anything</strong>. Risk is found but remediation cannot be authorized</li>



<li><strong>Prolonged email tennis between provider, MSP, sysadmin, and security</strong>. When that happens, stop emailing and get the right people into a meeting</li>



<li><strong>Fun with Software Vendors. </strong>An application vendor complicates ownership and no one is sure where vendor responsibility ends</li>



<li><strong>Expectations were never set and aligned.</strong> </li>



<li><strong>The client expects the provider to “take everything over tomorrow”</strong>. That is fine but we need the access yesterday for that to happen</li>



<li><strong>The plan is undersized relative to the real backlog</strong>. This is a real risk, it&#8217;s why often in sales calls when we price per hour &#8211; I&#8217;ll suggest a lot of clients move to Gold or Diamond the first quarter and give them a one time rollover of all unused hours one quarter &#8211; 45 hours with Gold saves the client about $1,500 over 45 hours with Silver and overage. </li>
</ul>



<h3 id="h-what-you-should-expect-by-day-90" class="wp-block-heading">What you should expect by Day 90</h3>



<p class="wp-block-paragraph">From a healthy DBA as a Service relationship by Day 90:</p>



<ul class="wp-block-list">
<li>The provider understands the environment at a useful level</li>



<li>Access is established</li>



<li>Monitoring is producing useful information</li>



<li>Serious risks are known and being addressed</li>



<li>Urgent problems are less frequent</li>



<li>Priorities are understood</li>



<li>Communication has a workable rhythm</li>



<li>There is a forward plan</li>



<li>You know who to call; they know who you are</li>



<li>The relationship no longer feels new</li>
</ul>



<p class="wp-block-paragraph">They should begin to feel like part of your team rather than a vendor or ticket queue. If you&#8217;ve ever watched a pet cat or dog go to sleep, you know that deep sigh they do right before they fall asleep? Content, happy, calm? You should be able to do that (for a brief moment, before you wake up and remember we&#8217;re only there for your database world. Sorry&#8230;)</p>



<p class="wp-block-paragraph"><strong>How transparent should the provider be about remaining risk at Day 90?</strong> Very. A useful conversation includes what is improved, what is still outstanding, what is deferred and why, and where residual risk remains. “Everything is fine” is rarely accurate. Honesty and transparency go a long way to a long-term relationship. You should know the risks that still exist and the plan around them.</p>



<h3 id="h-what-this-looks-like-at-straight-path" class="wp-block-heading">What this looks like at Straight Path</h3>



<p class="wp-block-paragraph">The expectations above are what any healthy DBA as a Service relationship should produce. How individual providers deliver them varies.</p>



<p class="wp-block-paragraph">At Straight Path the model includes a named Lead DBA, support from the broader team, structured daily review processes, and deliberate attention to relationship continuity and internal accountability so context does not live in only one person’s head.</p>



<p class="wp-block-paragraph">This is not the only valid way to deliver the service. It is how we have chosen to do it.</p>



<h3 id="h-closing" class="wp-block-heading">Closing</h3>



<p class="wp-block-paragraph">The first 90 days should not be measured by whether every health-check item has turned green.</p>



<p class="wp-block-paragraph">Measure whether you are less blind. Measure whether the most dangerous things are becoming less dangerous. Measure whether recurring problems are starting to disappear. Measure whether the DBA team understands what actually matters to your business. And measure whether you are beginning to spend less time worrying about SQL Server and can sleep even just a bit better.</p>



<p class="wp-block-paragraph"><strong>By Day 90 you should not feel like you are still onboarding a vendor. You should feel like you have added a DBA team to your existing team.  You should feel confident in the health of your database estate. Otherwise you just onboarded one more thing to worry about.</strong></p>



<p class="wp-block-paragraph"></p>
<p>The post <a href="https://straightpathsql.com/what-should-happen-in-the-first-90-days-of-a-remote-dba-relationship/">What Should Happen in the First 90 Days of a Remote DBA Relationship</a> appeared first on <a href="https://straightpathsql.com">SQL Server Consulting - Straight Path Solutions</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://straightpathsql.com/what-should-happen-in-the-first-90-days-of-a-remote-dba-relationship/feed/</wfw:commentRss>
			<slash:comments>0</slash:comments>
		
		
			</item>
	</channel>
</rss>
