Insanity: doing the same thing over and over again and expecting different results. - Albert Einstein
After a couple of months in absentia from T-SQL Tuesday, I went hunting again this month and found Erin Stellato (blog|twitter) asking us to write about a "Day in the Life" on what we did on either July 11th or July 12th, 2012. Since I didn't really look until Wednesday, I chose Thursday.
There's more to a 'Day in the Life' of an exiled DBA that just the DBA stuff. Sometimes, there's some personal things of note to report upon and I thought I'd start this post with some of that.
The second Thursday of the month at 6AM local (Mountain) time is a scheduled maintenance window for one of my customers. Normally, while I'm at home, that means getting up at 5:55AM, stumbling down 2 flights of stairs to my basement (I work from home and telecommute), dialling into a conference bridge so I can coordinate with the server guy and do those maintenance things that usually happen.
This month, however, my family and I are away from home and staying with some friends for a few weeks in the state where my company's office is. So, in order not to wake up every one, I needed to get up earlier to actually be in the office by 6 AM.
I awoke at 4:45AM and headed out of my friend's basement to find my 17 year old son sitting in the living room watching TV
The conversation went something like this.
Me: "What are you doing up so early"
Son: "Mom said I could stay up, but I am not allowed to be grumpy today"
Me: "Aren't you going walking around the zoo today for 3 hours or so?"
Son: "Yes"
Me: "Trust me, go get some sleep"
(For the record, when my wife said "you can stay up", she meant for something resembling an hour, not "all night". I guess you need to be very specific when talking to teenagers on summer break).
Anyway, that aside, let's get back to the work related stuff.
Before we get started, what is it that I do ? My job title is "Senior Technical Consultant". What does that mean? It means I'm a Jack of All Trades (See my post for T-SQL Tuesday #28 if you really care :) ).
I do Oracle stuff, I do SQL Server Stuff, I do Windows Stuff, I do Unix Stuff, I write CMD Scripts, Shell Scripts, I still bravely wade neck deep into COBOL programming waters (no matter how much I try, I can't seem to ditch that one - reminds me of the story of the COBOL programmer who cryofreezes himself and gets woken up in 9999 AD in time to save the world from the Y10K bug because it says on his bio that he knows COBOL) and I also do system administration / troubleshooting on an ERP package that my company supports.
Arriving at work by 6AM, got together with the Windows guy and we did our thing. He patched the servers, I cleaned up some wayward security issues in the database and performed some index defragmentation and we got the application and monitoring restarted and continued along with our morning.
With the maintenance over it was time to read the stack of un-opened emails that appears in my inbox every morning. Backups! Check. Scheduled jobs! Check. Disk space and file growth! Check. Everything appeared to work perfectly last night.
Around mid morning I realized that an important thing had been missed today. Caffeine! After getting appropriately caffeinated, the day continued.
Drudgery time! Anyone who needs to keep up with timekeeping needs to find some time to enter their time sheet data (and I always seem to be a day behind with that). Mid-morning seemed to be as good a time as any to catch up on this chore.
Next up today (which like any other days appears to be heading down the path of controlled chaos) is a call about a web application that isn't responding. A check of the database shows me that the DB is responding just fine, no hung Agent jobs, queries returning normally. A short time later someone finds that a timeout setting has been modified when it shouldn't have been on the web server side. A quick change over there and all is well again. This is a fine example of how when things stop working, people immediately suspect the database! Sometimes it is the database of course, but just as often (if not more so) it isn't.
Another project we have in place at the moment is to move what effectively is a small data center from one state to another. Several hours are spent today going over the requirements for the live move and working on debugging the bits and pieces in one of the applications after the test move the day before - this is a very legacy application that was written about a century and a half ago and can be very cantankerous. Making it work after shifting between servers hasn't been easy.
Lunch comes and goes and the stream of chaos is left behind for a half hour.
Plunging back into the current post midday sustenance and it's digging into a malfunctioning trigger after the data conversion of the cantankerous app mentioned above and redoing a part of that data conversion.
A colleague then wants to analyze some data, so a quick extract into Excel later and they go back to their office humming happily over the bits and bytes contained in their pretty new spreadsheet.
The office manager strolls past my office and mentions that it's almost time for Open Enrollment again (my company has open enrollment for insurance for an October to September schedule), so a half hour goes bye bye as plans and costs and what not are reviewed. I hate Open Enrollment. Passionately.
A call comes in from a colleague asking why a report that's worked for the last 5 years isn't working today. I dig down through the code and after a short while realize that the report works fine ... as long as the user connects to the database using the correct login. Funny that. Log in as someone without the required permissions and the report doesn't work. Log in with the correct user (the one with the correct grants) and the report works!
Yesterday (in this context "yesterday" means July 11th - which was also my father's 75th birthday, so a happy birthday shout out to my dear old Dad), late in the day, I had implemented a change in a stored procedure that would allow some time sensitive data to be retained for 60 days instead of the 10 it was originally implemented with. Change Management requires validation of all changes in order to make sure they are successful. The end of my afternoon today is making sure that my change is accumulating data (since we can't prove the "delete" part of this change until 60 days from now).
Finally, as the day winds down, it seems like a good time to sit down and catch up on some of the administration that is needed in keeping track of all of the issues still before me. Machete in hand, it's time to dive into the jungle of the ticketing system and update everything that's been accomplished today, then perform the miracle that is getting the old time sheet updated before going home!
This day is probably not unlike many other people's days - organized chaos, many balls in the air at the same time and all of the tasks due yesterday.
Between the MS Outlook "To Do" List and a notepad that's always at my side, I somehow manage to keep 99.99% of my tasks and to do's tracked.
Which brings me to the end of my day and the end of the story.
Almost.
Let's go back to the opening story about a young boy who didn't want to go to bed.
What happens to a young man at the end of the day after all of about 2 hours of sleep and a 3.5 hour walk around the Denver Zoo (which is one of my favorite places btw) ?
Well, he gets in the car for the drive home, opens his gameboy to play and pass the time and this happens....
I love how the stylus for the Nintendo DS is sitting there in his right hand hand between this thumb and index finger.
Yes, I am a mean old Dad, but it needed to be done.
I'm sure when I show this post to my son he'll be cranky at me, but he will have a chuckle at it and then next time go to bed at a more reasonable hour!
(EDIT: When I showed my son this post he didn't let me down. He had a good chuckle and his response to the going to bed at a more reasonable hour was basically "Or not!")
Today was a fairly typical day. I delved into my Oracle databases (the trigger and the report that didn't work), my SQL Server databases (the maintenance window and the web app), did some scripting (data center move), analyzed some COBOL Code (part of the data center move - there's also a platform change in there somewhere) and even got some non-standard activities in today (Open Enrollment review).
At the end of the day there was also the stories about my son at the zoo. He had warned his younger sister not to bug him because he was tired and my wife countered with "Oh no, no, no. You bug him all you want, he's not allowed to be grumpy today".
Fortunately, I really enjoy doing what I do.
Hopefully your day was less chaotic than mine and if you're still with me, you haven't fallen asleep!
Until next time.