Skip to main content

What a week of training!

Last week was a very good week for me from a SQL Server training perspective.

Kevin Kline of Quest Software spoke on Tuesday 10/13 at the Tampa SQL User Group on "Disk I/O Tuning for SQL Server". 40-50 people turned out. Kevin commented appreciatively on the attendance.

Friday 10/16, I attended Buck Woody's pre-SQL Saturday seminar on a performance tuning methodology he calls "Application Path Analysis". An educational and entertaining seminar.  Buck Woody's presentation style seemed to compress the time space continuum.  The day flew by because he was he was so interesting.

Finally, SQL Saturday!  Andy Warren, Jack Corbett and many volunteers pulled off another very successful SQL Saturday. 
I don't think there is a better value for SQL Server training.
We had Microsoft MVPs, regional, and local speakers. 

I attended five sessions and spoke at one session.

The session I attended were:
  1. Kendal Van Dyke's "Performance Tuning With DMVs"
  2. Joe Webb's "Locking and Blocking Made Simple"
  3. Ken Simmons' "Automating Routine Maintenance"
  4. Rodney Landrum "Taking Control of SQL Server Error Logs"
  5. Buck Woody's "SQL Server Resource Governor"
My session was "Database Hardening: Standardization, Optimization, and Automation.

They were all excellent sessions.  I'm talking about the other guys, not bragging about mine.

What typically happens at SQL Saturdays are there are multiple sessions at the same time and I wish that I could be in two places at once.  Thankfully, all speakers upload their decks and scripts to the SQL Saturday web site for the given event.

The highlights for me were Joe Webb's laptop configuration that was called "Daring." by Kendal Van Dyke.  I was very impressed by it. I have a similar configuration on my home machine.

Buck Woody did a great job on Friday and Saturday with his presentations. I've been a fan of his blog for a while but meeting him in person was a real treat.

Rodney Landrum's presentation on errorlog wrangling may solve some audit issues at my own company.

Kendal Van Dyke helped to solidify my knowledge of DMVs.

Ken Simmons' presentation gave me some ideas for the modernization we need to do on our internal DBA automation and that I need to include some pictures in my presentation to lighten things up.

I had a great time meeting with all the SQL Saturday speakers at the Speaker's party on Friday night.

It was a fun week.  Thank you to all the sponsors and volunteers that made it possible.

See you in Tampa in January 2010 for another SQL Saturday!

Comments

Popular posts from this blog

Modifying Endpoint URLs on Availability Group Replicas

I recently had to modify the Endpoint URLs on our SQL Server Availability Group replicas. 

The reason for this blog post is that I could not answer the following questions:

Do I need to suspend data movement prior to making this change? 

Would this change require a restart of the database instance?

I spent enough time searching on my own to no avail that I tossed the question to the #sqlhelp hashtag on Twitter and Slack but didn't get an answer prior to executing the change request.

After reading the relevant documentation, I think it's probably a good idea to suspend data movement for this change.

The T-SQL is straightforward. 

USE MASTER
GO

ALTER AVAILABILITY GROUP [AG1] 
MODIFY REPLICA ON 'SQL2012-1' WITH (ENDPOINT_URL = 'TCP://10.10.10.1:5022');

ALTER AVAILABILITY GROUP [AG1] 
MODIFY REPLICA ON 'SQL2012-2' WITH (ENDPOINT_URL = 'TCP://10.10.10.2:5022');

ALTER AVAILABILITY GROUP [AG2] 
MODIFY REPLICA ON 'SQL2012-1' WITH (ENDPOINT_URL = 'TCP://10…

PowerShell: Quick SQL Server Version Check

I have to keep track of our SQL Server version inventory.  The goal is to reduce the SQL Server 2000 population as fast as possible.


The following PowerShell script will produce a csv file containing the database server name and the version of SQL Server it's running.


1: ## Get SQL Version installed on multiple servers ##2: ## ./sqlver.ps13: $start = get-date4: write-host "Start: " $start5:  6: [reflection.assembly]::LoadWithPartialName("Microsoft.SqlServer.Smo") | out-null7:  8: $FilePath = "C:\Output"9: $OutFile = Join-Path -path $FilePath -childPath ("SQLVersions_" + (get-date).toString('yyyyMMdd_hhmmtt') + ".log")10:  11: # Version inventory12: @(foreach ($svr in get-content "C:\Input\AllLOBServers.txt")13: {14: $s = New-Object "Microsoft.SqlServer.Management.Smo.Server" $svr15: $s | select Name, Version16:  17: }) | export-csv -noType $OutFile18:  19: $end = get-date 2…

AzureRM Templates 101

I've recently started working with AzureRM templates to build new environments.

This document really helped me understand the template structure when I first started looking at them.
https://docs.microsoft.com/en-us/azure/azure-resource-manager/resource-group-authoring-templates

I love examples when I'm trying to learn something new and the Quick Start templates are the mother lode. 
https://github.com/Azure/azure-quickstart-templates

Our goal is to incorporate our templates into an Azure Blueprint so that we can quickly build new environments when needed. AzureRM templates can be artifacts of a blueprint.
https://docs.microsoft.com/en-us/azure/governance/blueprints/overview