Author: way0utwest

  • How Do You Patch 100 Database Servers?

    In most of the organizations I’ve worked for or consulted with, patching was always a challenge. Patching hasn’t usually been given a priority and is often skipped when operations staff is busy. This has resulted in lots of un-patched, or slowly patched systems. I assume this is one reason Microsoft continues to release RTM-GDR patches because some people won’t patch at all unless there are critical fixes.

    I also know that much of IT management sees patching systems like patching parking lots. Needs to be done, but tomorrow, after we do other important work today.

    Patching isn’t easy, in fact, Allan Hirt says it was never easy, but these days we don’t get the downtime over a weekend to patch, and there is a desire to patch security issues immediately because of the potential reputational (more likely) or regulatory (less likely) risks. Also, we often need to patch dozens, if not hundreds or thousands, of systems.

    So is there a way that most organizations do this? It’s interesting in the piece above that Allan notes that most of us have technical debt, and this debt consists of more than just code and systems. It’s also people, budget, politics, and more. This is even more of an issue if you didn’t write the software. Applications often limit patches or upgrades, and it can be hard enough to get applications certified on new platforms when you control everything. If you purchased something from a vendor, you might be bound by their timelines not your own.

    So how do you patch a lot of systems? There are lots of ideas and potential solutions. I’m sure Allan covered some recently in his session at the PASS Data Community Summit. For me, this boils down to building part of a process, using it, evaluating it, and then rolling it out wider. This might mean I need two processes because some systems will lag behind others for various reasons. I’d probably spend a year or two slowly adding to this process and getting it better, all the while ensuring I used automation as much as humanly possible to process notifications, approvals, and actually deploy code.

    Start small, experiment, test, evaluate, make changes. Always codifying things that I can. It’s a method that has worked for a long time.

    Steve Jones

    Listen to the podcast at Libsyn, Spotify, or iTunes.

    Note, podcasts are only available for a limited time online.

  • Do You Want a Microsoft Solution?

    Microsoft constantly releases new features and products in the data platform space. Many of us have seen the SQL Server product grow in new ways, some of which are very useful to us. As an example the changes from log shipping to clustering to Availability Groups has improved our HA/DR options as well as the capabilities available to us in different situations.

    With that in mind, I saw someone recently that wanted to deploy SQL Server on Kubernetes, which is something that could be a very interesting way of managing your different systems. However, this individual wanted to know when Microsoft would release their own supported solution with a Microsoft operator to manage the instance. There is guidance from Microsoft, but no official operator.

    I saw a recommendation to use DH2i, which has a solution with an operator that can help here. In fact, in the MS docs, there are articles on using DH2i with SQL Server. However, the docs note that DH2i is responsible for supporting their product. The person asking about support didn’t want another vendor and wanted a Microsoft solution.

    Is that something you want? Do you want a Microsoft solution for most (or all) things? Or do you think third parties or bespoke solutions are acceptable? This could be your opinion or a policy/guideline from your employer, but let us know.

    To me, I think third parties are necessary. Microsoft can’t do everything, and they might not provide the support or flexibility that someone else can. Many of us sp_whoisactive, which isn’t an official Microsoft solution. There is a First Responder kit, diagnostic queries, a pressure detector, and plenty of other resources that people have created and shared. There are plenty of tools for SQL Server (and most other products) that various vendors have produced and sell which meet the needs of their customers.

    My view isn’t to choose a Microsoft solution for everything because their solutions aren’t always the best choice for my problem. Even when they work well, they are often incomplete and I need to do some work to get them to fit into my environment. To be fair, most anything often needs a little work (or time) to fit into many environments.

    Let us know today. Do you want official Microsoft solutions for your data platform? Or Oracle ones for Oracle? Who makes you comfortable with PostgreSQL, Aurora, Redshift, Databricks, or other platforms? Or do you only use tools and capabilities inside the platforms?

    Steve Jones

    Listen to the podcast at Libsyn, Spotify, or iTunes.

    Note, podcasts are only available for a limited time online.

  • A New Word: Ochisia

    ochisia – n. the fear that the role you once occupied in someone’s life could be refilled without a second thought, which makes you wish that every breakup would include a severance package, a non-complete clause, and some sort of romantic placement program.

    I struggled with this one. I have had quite a few friends in the last few years that got divorced and my heart goes out to them. Some ended up in financial hardships, so oshisia seems like a poorly-timed joke.

    However, I get the idea. I’ve been attracted to someone, enjoying the dating, and then had it end. I’ve also ended it. I get that there is not only the loss, but the anger, the sadness, the wandering, the fear that someone else can easily replace you.

    I think many teenagers who’ve been in love go through ochisia at some point.

    From the Dictionary of Obscure Sorrows

  • Rename a Database: #SQLNewBlogger

    I had someone ask me how to rename a SQL Server database recently. They were doing some development work and wanted to rename databases to test an application. I thought I remembered, but in this post, I show I learned something.

    Another post for me that is simple and hopefully serves as an example for people trying to get blogging as #SQLNewBloggers.

    Using sp_rename

    I thought sp_rename would work, and sure enough, it did.

    2024-10_0232

    However, I need to object type. If I remove that parameter, it fails:

    2024-10_0233

    The command is looking for an object in the current database by default.

    Technically, I ought to do this to be explicit, naming the parameters.

    2024-10_0234

    I have a better way, however. Note: it’s not sp_renamedb, which is marked for deprecation.

    ALTER DATABASE

    I don’t know when this changed, or if, but you can use ALTER DATABASE to change the database name. There is a MODIFY NAME option for this command that works well. You can see this below.

    2024-10_0235

    This is very clear and seems like better DDL For this process, which can easily be captured as code without worrying about parameters or ordering or anything else. I’d recommend using this.

    SQL New Blogger

    This post took me about 10 minutes to write. Easy. I had done a few experiments and I had code ready (which went to the customer), so I didn’t spend time there. Just rewrote what I did and learned in a few minutes.

    You could do this, add to your blog, and maybe get an interviewer to ask you about this after they saw your post.