John McCormack DBA

SQL Server Databases and Cloud

  • Personal
    • About
  • Free Training
    • SQL Server on Amazon RDS (Free Course)
    • Free practice questions to help you pass DP-900
  • Save money in Azure
    • Azure IaaS SQL Backups – Stop burning money
    • Your Azure SQL Database and Managed Instance is too big
    • Turn the cloud off at bedtime to save 70%
    • Your Azure SQL Virtual Machine might be too big
    • Save money with Azure SQL DB serverless
    • Save up to 73% with reserved instances
    • Delete unused instances to save money in Azure
  • Hire me
    • Take a look at my Sessionize speaker’s profile
    • Let me solve your SQL Server problems – No longer available
  • All posts
    • Guides
    • cost-optimization
    • SQL Server
    • Training
    • Personal
    • Azure
    • T-SQL
    • AWS RDS
    • AWS SQL Server

2020 blog – a year in numbers

18th December 2020 By John McCormack Leave a Comment

Blog Performance

A few thoughts on my blog performance for 2020.

I have more than doubled my page views from 2019 to 2020 so I’m naturally delighted about that. At the time of writing and with 13 days of 2020 to go, I have had 16,773 page views. The average time on each page was 3 minutes and 53 seconds which tells me that real people are reading the content. I wasn’t really tracking this all year so these numbers were a bit of a surprise to me. In the full year of 2019, I only had 7018 page views with an average page viewing time of 3 minutes and 26 seconds.

  • 2019 blog visitors
    2019 blog visitors
  • 2020 blog visitors
    2020 blog visitors

Things are going quite well and I’ve decided to aim for 30,000 page views in 2021. Doubling the numbers again is not going to be easy, but I hope to achieve this with a steady flow of new content and updating some old material. Breaking it down, it is a modest target of 82 page views per day so is achievable if I continue to add good content.

Regular Content

I’ve been trying to put out regular content, although it is not all the same theme. I tend to find that when I solve an interesting problem, I tell myself that it would make an interesting blog post. So I’ve blogged on Azure, PowerShell, Performance tuning and whatever the #tsql2sday topic was that month. My aim for 2021 is to be a bit more specialised so you will see more posts on Azure SQL DB and Managed Instance, as well as performance tuning. These are areas I would like to work more on in 2021. Of course, I’m going to keep going with the #tsql2sday posts because they usually provide an interesting topic I wouldn’t otherwise think of.

Blog successes

One of my recent posts on database mail with managed instances has gained some traction. Although only published in October, it is already in my top 10 page views for the year. My feeling is that this is the sort of thing that people are googling for now, the MS documentation isn’t amazing either and its on trend.

One of my first ever blogs about sending html emails using database mail is at number 9. I find that hard to believe because when I see old dates on blog posts, I tend not to want to read them. I remember publishing this post and wondering if anyone would read it and even worse, if I would be ridiculed for it.

My number 1 post for the 2nd year running was EC2 SQL Server Backups to Amazon S3. I haven’t read it for a while and I think it might be in need of a major update, so I plan to do that in the next few weeks.

My 2nd most popular post, also for the 2nd year running was How to create a table in AWS Athena. I used Athena a lot in my old job and I found the documentation difficult to understand so I put together my own instructions. I can’t believe that it is still one of my most popular posts and in fact, it grew from 768 views in 2019 to 2741 views in 2020. It’s a sign to me that AWS Athena is gaining a lot of popularity. The post is 3 years old though so I think it needs to be refreshed too.

Blog disappointments

I wrote a full video series about SQL Server on AWS RDS. It wasn’t a hit. In fact, it only accounted for 246 page views. The videos are on YouTube as well and have only had 237 views. The videos were all subtitled to help with accessibility and it took me a long time. My son also did some subtitling and he got some pocket money for helping out. I have to learn from this though, I didn’t appear in the videos, they were purely PowerPoint and demos and when I think of the videos that I enjoy watching, they always have an engaging presenter.

I’m currently creating a new video series called fundamentals of Azure SQL DB Managed Instances. I hope to learn from the mistakes of my RDS course, and hopefully it will reach a wider audience.

Filed Under: front-page, Personal Tagged With: blog performance

Why I would like to be mentored

12th August 2020 By John McCormack Leave a Comment

Who wouldn’t want to be mentored?

This blog post is created as a direct result of Paul Randal’s offer to mentor people in the SQL Server community. I’ve had a good think about it and it seems obvious to me. Paul asks “Why would I like to be mentored?” I’m going to set out my personal reasons and although this isn’t one of them, my immediate response is “Who wouldn’t want to be mentored?” If you don’t have a big ego and understand that some people know a lot more than you, and have been in the game for longer, it stands to reason that some mentorship could be of a huge personal benefit.

My reasons

I was a  late-ish bloomer in tech. I had a different career from ages 16 – 32 so I always felt like I was playing catch up when I started as a DBA. At 32, coming out of university, I landed a job with Monster who just happened to have a large DBA team in Glasgow. I was lucky. I had a senior colleague who was only a month older than me. When I saw how good he was and how much he knew, I felt like I had a lot of catching up to do. But I was also inspired. He mentored me a lot over the 6 years I worked at Monster, as did others, and I benefited from that. I felt I was ready to move on to the next challenge and moved into contracting.

Contracting can pay more, it did for me but it can be a lonely game. You don’t always have the same team spirit that you feel as an employee and any choices about personal development are entirely yours. Sometimes, there is so much dazzling new tech that I don’t know what to learn next. I believe a mentor can help me get focussed. Some of my learning options include:

  • Focus more on public cloud vendors like AWS and Azure. (Not just relational databases).
  • Focus more on a specific area of SQL Server that causes people problems and become much better at it.
    • Performance tuning
    • HA/DR solutions
  • Improve my PowerShell competence
  • How to become a better trainer

I am also at a bit of a crossroads in terms of my career. I have the following choices and I don’t know what is best. I hope a mentor can talk me through the pros and cons of each option, and help me honestly evaluate how ready I am for each.

  • Start consulting (Do I have a niche?)
    • Performance consulting
    • Cloud migration consulting
    • Cloud cost optimisation consulting
  • Continue contracting
  • Go back into full time employment but seek a senior position
  • Launch a service offering a remote DBA service
  • Develop and launch a remote healthcheck service to identify pain points
  • Focus on creating engaging online training content
    • How to make money from training content but still benefiting the SQL community
    • I’m already active in the SQL community, and that will continue whether I’m chosen or not; but I do think that the increased confidence that may come after being mentored by Paul will help me improve the quality and quantity of my content.
    • Whether to design and deliver my own content or deliver Microsoft approved courses. (I recently achieved the MCT award but I’m don’t feel ready to deliver MS training yet)

So those are the main reasons that I think an experienced mentor like Paul Randal would be a huge benefit to me and I’d be delighted to be chosen.

Filed Under: Personal Tagged With: mentoring

A month in the life of a DBA contractor

8th February 2019 By John McCormack Leave a Comment

DBA Contractor in GlasgowI left what I considered to be a great permanent job to become a DBA contractor in Glasgow. It was one where I could pick some of my own projects, work with new and interesting technology and work in a team which collaborated well, liked each other and were good at sharing knowledge.

My reasons for moving on were two-fold. First of all, I wanted some career progression and it unfortunately just wasn’t available in my permanent job. Secondly, I wanted to work more with SQL Server and Azure. My last job started out as a SQL DBA but as a lot of people in this line of work will know, the duties have evolved considerably over time. This is mostly due to large scale cloud adoption. In my case, my workplace started heavily using AWS along with other RDBMSs and data platforms. (RDS MySQL & Aurora, ElasticSearch, Elastic Map Reduce (EMR), Glue and Athena). This gives you a lot to learn. Don’t get me wrong, I threw myself into learning about cloud solutions and I loved working with AWS (hopefully I will again) but as time went on, I was worried I would start to lose some SQL Server knowledge.

So what has the first month been like?

I have been working exclusively on the Microsoft Data Platform. At my first client, I’ve worked with SQL Server on-premises, SQL Server running on Azure VMs, Azure SQL DB, Azure Analysis Services and Azure SQL Data Warehouse.

On-Premises

The on-prem SQL Servers are mostly for hosting the databases of legacy applications and 3rd party vendor products. Some of the versions are ‘rather old‘ although these instances actually give the business the fewest headaches. I’ve worked on decommissioning unused databases that were still online, server side traces and native backups.

Azure VMs running SQL Server (IaaS)

These host the databases that have the most active development work. I’ve looked at performance issues and SQL Server configurations to help improve performance. I’ve shared best practice with the team in terms of tempdb and helped to reduce the volume of unnecessary emails from servers. (You know the ones which someone set up years ago but never induce any action from the DBAs).

Azure Analysis Services (PaaS)

This was fun. I only did some basic configuration and permissions but as I’ve never used Analysis Services much over the years, it was cool to see what was involved.

Azure SQL Data Warehouse (Paas)

It was great to get my hands on tech like this. I spent time modernising their manual point and click refresh process with PowerShell. This was a bit of a learning curve but extremely rewarding. This process will make future refreshes much easier. (I’ll share the code once I’m confident it’s good, I’d still like a few more run-throughs before doing this). Next month, I’d like to try to implement a self service process for the developers that allows them to do their own refreshes, freeing up DBA time to work on more critical items.

Azure SQL DB (PaaS)

So far, I haven’t had to do too much with Azure SQL DB on this project. I’ve listed out the instances and instance types using PowerShell. My plan is to review if these are right sized or if efficiencies can be made and I’ll also make sure the alerting is set up correctly.

Plans for next month

I’d like to offer some in depth server health reviews and work with the developers to help them make their code run faster. There is a lot of blocking due to long running stored procedures and sub optimal code. Improving a few of the big hitters will make them much happier and will ease the strain on some of our servers – at least that’s the idea.

Further Reading

  • Azure SQL Data Warehouse
  • PowerShell cmdlets and REST APIs for SQL Data Warehouse

Filed Under: Azure, Azure SQL Analysis Services, Azure SQL Data Warehouse, Azure SQL DB, front-page, Personal

SQL Server Glasgow Meetup

14th December 2016 By John McCormack Leave a Comment

sql server replication basicsI had the pleasure of speaking at last night’s SQL Server Meetup in Glasgow. It was a fairly relaxed affair and I hope that the session was enjoyed by those who attended.

I presented “A guide to SQL Server Replication, how to fix it when it breaks and alternatives to replication“. The slides are pitched at a basic level and don’t dive too deep into replication but give an overview of the different types of replication plus the key replication components.

As promised, I have made the slides available for download.

I also enjoyed doing the replication demo which worked but the content of that is not set out in a step by step fashion so I’ll work on that and aim to share it as soon as I get the chance. I focused the demo on setting up transactional replication and the importance of scripting it out so it is repeatable. I also showed how to use Replication monitor, how to use tracer tokens & how to query the distribution database for errors. There’s more info on that in this blog post.

Thanks to all who attended and thanks to Robert French for hosting.

Filed Under: front-page, Guides, Personal

My route to achieving MCSE Data Platform

28th January 2016 By John McCormack 2 Comments

This is my first non technical blog. Rather, it is about career and personal development.

70-462 Administering SQL Server 2012 databasesWhy did I want to achieve MCSE Data Platform?

Well, at first I didn’t. It seemed like a million miles away from where I started. My initial goal was just to pass the 70-462 exam (Administering Microsoft SQL Server 2012 Databases) as my boss had suggested it would be a good thing to learn. This was the first I had heard about Microsoft certifications. From there, with each subsequent exam pass, I just extended my goal to MCSA SQL Server 2012 and then MCSE Data Platform.

Timeline

I had set the target of passing 70-462 by the end of 2013 which would be just over 1 year as a DBA. The great thing about the certification is you can do the 70-461, 70-462 and 70-463 in any order. Since most of my limited knowledge was about Database Administration and the subject I needed to learn most about initially was also Database Administration, this was a no brainer.

[Read more…]

Filed Under: front-page, Personal Tagged With: 70-461, 70-462, 70-463, 70-464, 70-465, certifications, mcp, mcsa SQL Server 2012, mcse data platform, microsoft learning

  • « Previous Page
  • 1
  • 2

John McCormack · Copyright © 2026