PASS Data Community Summit 2021
A collection of the resources mentioned in my PASS Data Community Summit session Backup Basics with PowerShell and dbatools, including bonus content!
A collection of the resources mentioned in my PASS Data Community Summit session Backup Basics with PowerShell and dbatools, including bonus content!
Over the summer, I spent some (a lot of) time working on updates to a script at work which runs multiple processes in parallel. Everything seemed to work OK for a while, but then everything broke. It broke right around the time dbatools 1.1 dropped, so I started thinking that something must have changed there. As it turns out, it was entirely my fault and I hope this post will help you avoid the same trap.
Kind of a diversion into a Visual Studio Code/Azure Data Studio tip here (this works in both, as well as SQL Server Management Studio). I’m not a regular expression guru - far from it. I use them occasionally, but usually find myself fumbling around for a bit trying to figure out just the right expression to do what I need.
I’ve known for a while that VSCode/ADS had regular expression matching built into its find/replace feature, but did you know you can also replace with it? It can help remove the tedium of doing a large amount of text processing.
I am thrilled to announce that I will be speaking at this year’s PASS Data Community Summit! This year’s event runs November 8th through 12th. I am thrilled to announce that I will be speaking at this year’s PASS Data Community Summit!
For years, I thought that native backups of databases using Transparent Data Encryption (TDE) couldn’t be compressed. Between TDE being limited to Enterprise Edition until SQL Server 2019 and my own lack of experience with TDE in prior positions, I hadn’t really experimented with this myself. Some people have even gone so far as to skip compression in their backup jobs for TDE-enabled databases because there’s no need to burn those CPU cycles if you won’t get any compression, right?
T-SQL Tuesday is a monthly blog party hosted by a different community member each month, and this month Brent Ozar (blog | twitter) asks us to talk about data types.
Your mission: write a blog post about your favorite data type, and schedule it for next Tuesday, March 9.
Mad about money? Feverish about float? Tell us what you use your favorite data type for, and what people need to know before they get started using it. Data types have so many interesting edge cases, like when Aaron Bertrand taught us to use lower case for our data types.
I had a great time speaking at the Kansas City SQL Server User Group on Thursday, February 18th. The more I present my Backup Basics with PowerShell and dbatools session, the more I enjoy it. And each time, I’ve learned something new myself.
In one of the demos I show how Restore-DbaDatabase
selects and restores the most recent backup of a database when pointed at a directory holding several backups of a single database. Dan Maenle (twitter) asked how the function knows which one is the most recent. Timestamps? Filenames? Really good guesses? My takeaway from the session was to confirm the method in use.
I will be presenting my session “Backup Basics with PowerShell and dbatools” this Thursday, February 18th at 2:30 PM Central Time at the Kansas City SQL Server User Group. I’m looking forward to getting this demo-rich session out in front more of folks to show how easy dbatools makes some of these common backup-related tasks.
Come check it out! Or, if you’d like to see this or one of my other presentations at another user group meeting, please drop me a line!
While presenting Backup Basics with PowerShell and dbatools at ONDT, I mentioned a caveat with the -ReplaceExisting
switch for Install-DbaMaintenanceSolution
. This switch drops all of the objects installed by the Maintenance Solution, including the CommandLog
table. If you use that table to produce evidence that the various maintenance tasks are being performed on a regular basis or use it to track performance of those tasks over time, dropping that table presents a problem.
I got a merge a while back that included a change I wasn’t expecting from one of my developers. All they were doing was renaming a column on a table. We had names settled a while ago. What’s up with that?
Turns out, when I created the table, I named one of the fields BrithYear
. This merge request corrected it to BirthYear
. The misspelling slipped past me, past everyone else, it was only discovered because when this developer was building the a new query into their code, they spelled the field as one would expect, and the query threw an error.