Flexibility in DR

Disaster recovery is a topic that many people who work with databases find important. DBAs work to ensure their systems are highly available while practicing the skills needed to recover them in the event of a disaster. While we often practice the failure of a complete server or database, we sometimes forget there can be other issues for which we need to plan.

I ran across a story about a data center outage in London, which was similar to an incident I experienced. In this case, a piece of power equipment failed and systems lost network access. While many of us aren’t responsible for the network, we certainly would still receive complaints if the database wasn’t available.

In my situation, I was in a data center watching some workman service UPS systems. At the time I was a manager of database systems and thought they had things under control. I left the data center and went downstairs, only to audibly notice when the power dropped that all servers seemed to stop running. Similar to the London outage, a switch that was supposed to change power from one set of UPSes to the other failed. Our entire global infrastructure for 10,000+ people and who knows how many customers went down. This was in the pre-cloud era where we acted as our own cloud. And not very well.

There are systems outside of our databases that we depend on. We might not be responsible for them, but we ought to ensure they are a part of our disaster recovery plans and account for various things going wrong. At the very least, we ought to question whether power, network, storage, and more are adequately prepared for major issues.

We also need to think about minor issues. Atlassian had a major outage, at least for some customers, and they realized that they hadn’t planned to recover parts of their databases. A similar issue might occur for any of us, where we might have to restore parts of a database, whether that’s a table, partition, or a series of rows. Corruption or human error might result in a set of data that’s unreadable or even gone. I know I’ve accidentally caused data issues, and I’m careful. I learned to recover from my own mistakes and anticipate those of others. I practice not only full restores but how to copy over part of table from another location.

A disaster is a major problem, but it might only affect a minor part of our systems. We need to ensure we are ready for any size or scale of problem and be ready to adapt our thinking and process to meet the disaster with the appropriate actions.

Steve Jones

Posted in Editorial | Tagged | Comments Off on Flexibility in DR

Daily Coping 8 Jul 2022

I started to add a daily coping tip to the SQLServerCentral newsletter and to the Community Circle, which is helping me deal with the issues in the world. I’m adding my responses for each day here. All my coping tips are under this tag.

Today’s tip is to be willing to ask for help when you need it.

I struggle with this. I rarely ask for help, but when I added this tip to the list a month ago, I started to think about this on a more regular basis. I still don’t do this enough, but I got better.

I was busy at work and asked someone else to handle something for me. In the past, I’d work longer hours and find a way to just handle the stress and workload. Thanks to my co-worker for helping out.

I was putting in some fence recently and took a few minutes to ask a kid to help with the work. Again, I usually just work harder on my own.

Same day, actually was tired (fencing in 90F/30C is hard) and asked another kid to cook dinner. They handled it.

Asking for help isn’t a sign of weakness, but it’s also not my default action, even when I need it. I’m learning to be better.

Posted in Blog | Tagged , , | Comments Off on Daily Coping 8 Jul 2022

Daily Coping 7 Jul 2022

I started to add a daily coping tip to the SQLServerCentral newsletter and to the Community Circle, which is helping me deal with the issues in the world. I’m adding my responses for each day here. All my coping tips are under this tag.

Today’s tip is to adopt a growth mindset. Change “I can’t” into “I can’t yet”.

I don’t say “I can’t” very often. I have not accepted my children saying it, and I don’t like hearing it from the kids I coach.

That being said, I have felt at times that I can’t do something. Something breaks at SQL Server Central or SQL Saturday and I can’t fix it (or get it fixed). Kids don’t or won’t show up for practice.

One thing on my mind right now is I can’t go to Japan. I mean, I could go, but tourism is still limited. It should change soon (or maybe has by now), but I don’t want to go on a tour group. I’m also busy. I’ve had 10 or 11 trips this year with 10 more coming, so I don’t have a place to add in another trip without creating stress.

So I can’t go to Japan.

Yet.

I’ll plan on going next year or the following one with the family.

Posted in Blog | Tagged , , | Comments Off on Daily Coping 7 Jul 2022

Be Smart

An engineer at Google recently claimed that one of the AI chatbots might have become sentient. Great headlines, and whether true or not, this might bring some notoriety to the engineer.. It certainly did, and it also resulted in the engineer being suspended from his job. It’s entirely possible this person might be fired. Perhaps I’m cynical, but I think the more talented he is, the more likely he keeps his job. Less talented, likely fired. This might not be fair, but I am a realist. The more value someone brings, the more tolerance for missteps.

I give a talk on branding, and one of the things I do before giving you practical tips is to remind you to be cautious. A brand can be a very positive asset, but it can be a detriment as well. One of my stories is about Mark Jen, who Google fired after he blogged a few things about his employment. He was highly recruited and worked at Google for only a few days.

At one point I worked in a public company, in a large Operations group of about 20 people. We were listening to the earnings call one quarter when Security staff walked up and escorted a person out of the building that was sitting 2 or 3 cubicles away from me. They security people then returned to box up the employee’s belongings once he was gone. Apparently our boss told us this person had posted some of our earnings results online while the call was going on. They were posted literally minutes (20 or 30) before the numbers were announced, however, that’s illegal and a violation of securities rules.

Most of us know not to post passwords, IP addresses, or other sensitive infrastructure data on the Internet. Most of us should know not to post data, especially on a site like SQL Server Central. If we are looking for help with an issue, we need to mock up a situation. We might not be able to post code, and we might not be able to write about the specifics of our job in our blog. That might vary by company, and we need to understand what the rules are.

I’ve never had an issue with this in over 25 years of blogging and asking/answering questions on forums., but I’ve followed one rule. It’s the same rule I heard someone say was their internal guidance for blogging.

Be Smart.

Don’t post anything that might cause an issue. Whether you are in a forum or on your blog. Even inside your company, some information might be sensitive and compartmentalized. If you have a doubt, ask someone. It’s that simple. Just ask someone who can give you a second opinion.

I do this regularly with SQL Server information and Microsoft. There are times that I am unsure of something is under an NDA, so I ask. This includes words, pictures, and code. I do the same thing at Redgate, as sometimes things on our internal network might not be publicly released yet, so I just ask. On my personal accounts, I might ask my wife if I can post something before I do it. I’ve learned it’s better to ask permission in these cases.

I haven’t always done that in my job. Sometimes rebooting a system or making a minor change without following every rule, but those have been cases where I had a very strong understanding of the situation and the implications of my actions. It’s not something I do lightly, and it’s rare, but there are times to ask for forgiveness rather than permission.

However when dealing with public disclosure of anything, I think you are smarter to ask permission first.

Steve Jones

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

Posted in Editorial | Tagged , | Comments Off on Be Smart