Feeds:
Posts
Comments

Um, We Have a Problem…

This last weekend was pretty rough for my entire team. One of our most critical production systems took a dive on Friday morning. Meaning, the database went down unexpectedly and wouldn’t come back up. When I got the call Friday night around 8 pm that we would be working in shifts and I was needed at work that night, I knew it was bad, very bad. This was the first time in three years (that I could remember) that I had to go into work after hours for a production issue. That’s actually pretty good, in my opinion, considering I know other DBAs end up doing quite a bit of after hours support for their systems. I don’t like to speak for others but it seemed pretty rough on all four of us. I don’t think anyone got much sleep the entire weekend; however, we managed to get through it and the system was back up and running by Monday afternoon. I really am lucky to be part of such a great team. My co-workers put in quite a bit of long hours starting on Wednesday which is just amazing to me. I wasn’t involved until Friday night and I was exhausted after only three nights. I can only imagine how they’re feeling.

Should I?

Night #3... Observations...

To be honest, I’m not sure I should even be writing a blog post about this issue for various reasons. One reason being that my role was that of minimal support. This is an Oracle system which is new for us and I know very little about Oracle administration. So my main role was to be a second set of eyes for my manager who worked the night shift with me. I’m very thankful she was there with me.  It also really helped that she has prior Oracle experience and has had some training which I’m so very thankful for. I really didn’t do much except to double-check what my manager was doing, answer phone calls from Oracle support, and type in whatever commands the support people asked  me to. Hmm… That may explain the odd voices that told me to do strange things when my manager stepped away. Yes, I did my best to take note of what it is they were asking me to do which was mostly querying things… thankfully.

Secondly, we worked in shifts with me being on the night shift. Add to that my limited knowledge of Oracle, it was difficult for me to keep track of everything that was going on the entire time except for knowing we were having quite a few issues with the system. So I don’t have a lot of technical details that I’m sure some people would love to hear about. Sorry about that.

But Why?

So why am I writing this? I thought it would be good to document what we went through, at least in general, in case anyone else experiences the same or similar issues. I also thought it would be a somewhat decent way to share what I learned. Granted, it’s not much but it’s something. Also, I’m not placing blame anywhere or pointing fingers. Every system experinces issues (at least I would think so) at some point. This is just one of those times.

Disclaimer

Since I’m still pretty tired, hopefully what I write makes at least some sense. I have limited knowledge of Oracle and the every day workings of the system so please keep that in mind. Right now I’m mainly supporting SQL Server but am slowly learning more about Oracle. If I get something wrong, please let me know. This blog post is from my point of view so it’s possible I got something wrong somewhere. If I did, I apologize and will fix it as quickly as I can.

So What in Server Name Happened?

Night #4... Midnight Ramblings

First, I’ll state that this occurred on an Exadata machine with Oracle RAC (Real Application Cluster). It’s been in production since December and we’re running Oracle 11gR2.

From what I understand, the whole issue seems to have started on Wednesday when users were reporting inconsistent query results. They would run a query and get back a certain number of results. They would run the exact same query again and get 0 records back. This would happen repeatedly. One of my co-workers who is great with and knows Oracle pretty well researched and worked on it for quite some time and contacted Oracle support about it. I believe the theory was that it had something to do with the optimizer.

At some point on Thursday, ASM (Automatic Storage Management) went down but then it came back up. It sounds like it had something to do with a flash disk error. An engineer was sent out, and I understand the issue was fixed.  Note:  ASM is basically a file storage system.

Then for some reason, the database terminated unexpectedly with an ORA-600 error Friday morning and would not open up afterwards. Note:  I was told that ORA-600 errors are generic errors that don’t usually tell you much. Great, huh?

At some point, Oracle determined that a duplicate or bad record was inserted into a system table called props$. As of this moment, no one knows how it got there or when. Since we had no idea this table even existed, we were not auditing it. However, I believe we are auditing it now. Apparently, having this extra record caused the database to not open back up when it terminated unexpectedly on Friday. Note: I believe props$ is basically a database properties table. As my manager explained to me and if I understood her, it’s like having your master database in SQL Server become corrupted. However, getting it back up and running is more complicated in Oracle than it is in SQL Server.

The Plan

Night #5... A Plan is Formed...

So the plan was two-fold. One part was to find a good database backup that did not have that extra record in it so we can restore it to production, if necessary. The second part was to determine how this happened and to see if someone could open up the production database without having to resort to restoring the backup.  Note: we were doing full backups nightly.

In addition to all of this, the Linux box containing our backups wouldn’t mount for some reason. So we had to copy a database backup file to a Windows media server which took about 2 hours. At least that worked and we could see the backup files from the Exadata machine.

Anyway, the database from the first restore attempt would not open. So they tried another one. To keep a very long story at least somewhat short, they were successful in restoring a backup to our test Exadata machine and recovering data from it and the archived logs in addition to recovering data from the online redo log (kind of like transaction logs, as I understand it) of the corrupted database.  Which means that we only lost 5 minutes worth of data. I think that is just plain awesome considering everything that happened over the weekend. And so far no one knows how this extra record ended up in that table. Hopefully it won’t happen again. I’m crossing my fingers, toes, and eyes. ;-)

A Day to Day Pictorial

Please note that I don’t mean to over simplify the process. It was a very long and manual process to restore and recover the database. Everyone worked very hard on getting this to work. It doesn’t seem like a very straightforward process to me, but that could just be me. Also when I refer to “they”, I’m referring to my team in conjunction with Oracle support. Everyone worked well together to get it figured out.

Overall, it sounds like we also have a few bugs and need to do some patching very soon. The support team we worked with seemed to be very professional and helpful. There were quite a few bumps along the way but we survived and the issue was fixed. That’s the important thing to remember.

Hey! I Learned Something!

On the bright side, I actually learned some useful stuff over the weekend!  I now know:

  • how to use PuTTY (the terminal client, not the oh-so-cool kids toy or paste-like substanceit’s probably a good thing I didn’t have any of the gooey kind in my reach this weekend)
  • leaving sticky notes in someone else’s cube late at night is a great stress reliever and a great way to keep one’s sense of humor intact (note: not all of the sticky notes were written by me; some were written by my co-workers)
  • how to start RMAN (recovery manager):  rman target /
  • that management appreciates sticky notes and saw the humor in it (whew!)
  • what RMAN scripts look like
  • that you can’t have leading spaces in RMAN scripts or bad things happen (mostly just errors)
  • how to set the Oracle environment in Linux: . oraenv
  • where the pfile (parameter file) is and how to edit it along with the init file (scary thought)
  • how to look around the ASM file system:  asmcmd (command line utility)
  • that ASM contains an “M”, not two “S”s (gotta love typos)
  • how to start SQLPlus to run SQL commands: sqlplus / as sqldba
  • to be careful when Google’ing props$ (psst…don’t put a space before the $… seriously, nothing bad happens… just at attempt at wacky late night humor)
  • that not only am I part of a fantastic team who put in tons of hours on this issue, but that we also have a great management staff who were very supporting and helpful during this time.

So that was my weekend. It was rough but we survived and learned some things in the process.  Huh… I can’t believe I wrote this on my lunch hour. Usually it takes me longer than that to write a post.

Hey! Nice RAC!

What? Another post in less than a week? Yep! Don’t faint from shock! ;-)  Besides, I’m overdue for a mostly serious post.  Oh and as for the title of this little post? Trust me. It could have been much, much worse. ;-)  

Since we’ve had Oracle for a few months now and have one production Oracle system, I thought it’s about time to write a little of what I’ve learned so far. Granted, it’s probably enough to fill a thimble since I’m mainly still supporting SQL Server.  It seems a bit funny to me, in a way, but I’m learning about Oracle pretty much how I learned SQL Server – from experienced co-workers, reading, awesome people on Twitter (thank you!), more reading, and good old-fashioned playing around.

In case anyone is wondering, we are now owners of Oracle 11g R2 on Exadata Database Machines. So what’s an Exadata? It’s basically a super duper uber powerful storage server optimized specifically for Oracle Databases to run on. It appears a lot of processing is offloaded to the hardware. I’m not going to regurgitate all the nitty-gritty specs but you can read all about them here.

A Cluster O’ Fun

It's all fun and games until someone loses a node

We also have an Oracle cluster running on said Exadata box, and I believe there is a plan to get a data warehouse going on one as well. That sounds like it could be fun actually. I had also heard something about us possibly supporting SSAS (SQL Server Analysis Services) for a department. No, that won’t get confusing at all! The Oracle cluster is actually referred to as a RAC which stands for Real Application Cluster. It’s composed of something called Oracle Clusterware and Oracle ASM (Automatic Storage Management). Together they comprise the Oracle Grid Infrastructure. As I understand it, the Clusterware is what makes the cluster. No, really? What was your first clue?  That basically means you’ve got a database on shared storage and multiple servers can access it at the same time. If one node (host server) goes down, the other one(s) can still access it.  The ASM part is basically the file system and volume manager. It includes striping (automatic), mirroring (optional), rebalancing and so on. It basically manages the files for you so you don’t have to.

SQL vs Oracle

So what’s an Oracle cluster like compared to a SQL Server cluster? Sorry, but I really can’t tell you just yet. Yeah, I’m bummed too. When it comes to performance, it’s my understanding that there really isn’t anything out there to compare to an Exadata box. It’s fairly unique. Therefore, one can’t really compare this particular cluster to a SQL Server cluster in terms of performance and what have you. I honestly couldn’t tell you anything about its creation or setup since I wasn’t really all that involved. Hey, someone has to make sure the SQL Servers are still behaving. :-) Once I get a better grasp on it, I may be able to write something about it as compared to a cluster from a technical aspect but not performance-wise. Time will tell.  However, I would love to hear from anyone who has Exadata and/or RAC experience. :-)

The Verdict?

A cookie by any other name is still a cookie... they just come in different flavors

So what do I think of Oracle so far?  You know how some relationships start off somewhat rocky? Well, this one isn’t any different. However, that’s not necessarily a bad thing. It’s just that I really haven’t had a lot of interaction with it just yet so I really haven’t had enough experience with it to say one way or the other. My initial impression is that it is way more involved and complicated to manage than SQL Server so far. That could just be me, though. Overall, I’m viewing this as a great opportunity to learn something new which is great since I love to learn new things.  :-)   In my opinion, relational databases should be fundamentally the same but with differences. Yes, some are quite different than others but once you have the basic concepts down it’s just a matter of figuring out and learning how to administer and deal with them in their environments which isn’t always that easy. But that’s just my opinion. :-)

Warning!

It’s Friday and I’m feeling a bit wacky (what else is new, right?). So… I thought I would write about something that’s been on my list for a few months now and put an amusing spin on it. Well, at least I find it amusing. :-)

Several months ago, we inherited several database servers from another department. Our job was to bring them up to our standards when they were brought onto our network. Luckily, they all had SQL Server 2005, 2008 or 2008 R2 installed on them. Whew!  It was by far a very enlightening experience considering these servers were not set up by database administrators. However, they didn’t do all that bad of a job considering. Note: These servers were also brought onto our domain from a different one which involved lots of Active Directory account additions which affected accounts on these servers.  

Anyway, to help relieve some of the stress, I couldn’t resist putting together a list of steps to be performed while bringing the servers onto our network and up to our standards. This list does not contain everything we did but it’s somewhat close. On a serious note, many months of planning and hard work went into this project by all of IT. There was quite a bit more that went into it.  This is but a small slice of our part. While this list was written in jest, there may actually be a few useful nuggets of information in there. Disclaimer: I put this list together for fun to release some stress. We did not actually partake of every step outlined. I’m hopeful you can spot the “what we actually did” steps versus the “wishful thinking” steps. ;-)

 Generic Work Breakdown Steps (WBS) for Database Server Integration:

DBA Survival Kit Option #1
  1. Retrieve your DBA Survival Kit. It should contain the following items:
    • 1 shot glass
    • 1-3 large bags of dark chocolate, dependent on the duration of the integration and the number of non-DBAs involved
    • 1 large bottle of your choice beverage
    • 1 tin of breath mints
    • 1-3 rolls of duct tape, dependent on the duration of the integration and the number of non-DBAs involved
    • 1 sarcastic ball (note: it is like a Magic 8 ball but displays sarcastic answers such as “whatever” or “ask me if I care”)
    • 1 pillow and blanket set
    • Music playlist of your choice
  2. Retrieve your stash of chocolate and partake of one piece for quality assurance testing.
    • Test a few more pieces just to be sure it’s worthy.
  3. Open the bottle of your choice beverage. Help yourself to one shot to ensure it’s of good quality.
  4. Obtain all SQL login passwords including the SA account.
  5. Start music playlist.
  6. Ignore the voices in your head.
  7. Verify/add domain account as a local admin onto the server for the Database team to use to manage the servers.
  8. Turn on the SQL Agent, if it’s disabled.
    • If it’s been turned off, smack person responsible upside the head unless they have a good reason why it’s been disabled.
  9. Change all SQL-related service accounts to the domain account dedicated to running the SQL services.
    • If the service accounts were running under any local accounts, find out why.
    • If it’s the wrong answer, smack person responsible upside the head.
    • Help yourself to a piece of chocolate.
  10. Manually back up all databases on all instances to a designated area including all system databases.
    • Make note of where you put them for future reference. Feel free to be descriptive.
    • Note: “where the sun doesn’t shine” doesn’t count.
    • Tell the voices in your head to shut up.
  11. Script all logins and save the script to the network.
    • Again, make note of where you put it.
  12. Add the SQL Server domain account to the SQL Server instance as sysadmin.
  13. If they brought their own chocolate, add your team’s Active Directory (AD) accounts to the SQL Server instances as sysadmin.
  14. Coordinate with the applications team to determine how the applications are connecting to the databases.
    • May need to run Profiler traces.
    • Help yourself to a generous shot of your choice beverage.
  15. Work with the applications team during the changing of all sysadmin SQL account passwords including the SA account since it is possible (and very likely) applications are using those accounts.
    • Have some more chocolate… followed by another shot of your choice beverage… or four…

      DBA Survival Kit Option #2

  16. Work with the application team during the addition of any new accounts and disabling the old accounts to ensure the application still works.
    • Add new AD accounts.
    • Set permissions for new AD accounts.
    • Change database owners.
      • WARNING! WARNING! Changing the database owner may break something!
      • Down one shot of your choice beverage per database owner changed followed by a few more pieces of chocolate.
    • Disable the old AD accounts.
    • Pray to the SQL gods everything still works.
    • Help yourself to another shot of your choice beverage just in case. Down another one to appease the SQL gods. Better safe than sorry, right?
  17. Configure / reconfigure database mail
    • Send a test email to the server admins informing them the database servers have unanimously decided the DBA team is worthy of more chocolate and it would please the database servers greatly if chocolate was sent to the DBAs… preferably good quality dark chocolate… on a regular basis…

      A tutu? Seriously?

  18. Verify the original database assessment.
    • Note any changes or discrepancies.
    • Help yourself to two more shots of your choice beverage – one for you and one for the bacon slinging monkey dancing around on your desk wearing a pink tutu. Keep the duct tape out of the monkey’s reach…
  19. Inform your minions, err… the applications team that they have now been bequeathed permission to allow the peasants, err… users to test their logins to ensure they are able to access the databases through the applications.
  20. Work with them to troubleshoot any database-related issues. Keep the sarcastic ball in reach.
    • Finish off another shot of your choice beverage.
    • Scarf down more chocolate.
    • Repeat until the issues are resolved or you run out of your choice beverage and chocolate, whichever comes first.
  21. Set up maintenance plans, if they don’t exist.
    • Ensure the maintenance plans work.
    • Cross your fingers and toes and everything else you can think of.
    • Finish off your choice beverage and chocolate.

      ahhhh... where's that duct tape? hey! who took my blanket?

  22. Retrieve your blanket and pillow making yourself comfy.
  23. Fling mints at the monkey to keep it from dancing an Irish jig on your bladder.
  24. Apply duct tape to keep yourself from falling off the face of the earth.

S’More SQL, Please!

Ready for SQL on the Slopes?

If you haven’t already heard, SQL Saturday #104 is coming to Colorado Springs on January 7th, 2012. Woo hoo! Hold onto your beanies (knit hats for those of you wondering)! It’s the first SQL Saturday of the New Year and it’s going to be fantastic! Personally, I’m in awe of the mind-boggling speaker and session line up we have! Kudos to Jeremy (Web | Twitter) and Chris (Blog | Twitter) for the great selection! It could not have been an easy task given all the great submissions. If you haven’t already, check it out now! Please note that the schedule isn’t written in stone and is subject to change. Last year we had 3 session tracks. With all the impressive submissions we’ve received, we’ve expanded to 5 (Yes, 5!) tracks for Business Intelligence, Database Development and Administration! Are you in awe yet? Yes? No? Read on!

Interested in Professional Development? If you said “YES!”, then you’re in luck! We’re also including time slots for you to review your resume with a professional resume writer! Sweet! How do you sign up? No worries! It’ll be easy. When you arrive and check in at the registration table, there will be a sign up sheet for time slots. Please note that it will be on a first come first served basis.

Room to Grow

Sneak Preview... Shhhh!

For those who remember the rooms we used last year, guess what? For SQL Saturday 104, we have claimed a bigger and even better main room that even comes with *gasp* an actual stage! What’s even better news? It’s in a separate area of the facility from which we shouldn’t hear what’s going on outside of the room. That means we shouldn’t hear any mayhem generated by the bumper cars or go karts. Since I really like you guys, I’ll even give you a sneak peak of what it looks like. I snuck a few pictures while we were touring the facility. Yeah, I’m sneaky like that… Keep in mind the configuration / layout of the room may change by then. This is just to give you an idea.

Food for Thought… and for Your Tummy

For SQL Saturday #66, we had a great spread of food (not pizza!), and I bet it’ll be just as good or even better this time.

What makes lunch even better is that we’ll have a few round table discussions including WIT (Women in Technology), Professional Development, and Sponsors. Curious as to who will be at the WIT round table? Can you hazard a few guesses? Yes? No? Joining the WIT round table will be none other than Karen Lopez (Web | Twitter), Meredith Ryan-Smith (Blog | Twitter), myself (scary, I know), and a special guest to be announced soon. And the crowd goes wild! This will be my first time participating in a round table discussion so please be nice and patient with me. :-)

Update: We are very happy to announce that Thomas LaRock (Blog | Twitter) has agreed to participate in the WIT round table! Yay! Also, chances are fairly good I won’t be able to participate. Instead, I’ll probably be running around helping to make sure everything is running smoothly.

Stress Reliever?

Gabe and Doug having way too much fun (is there such a thing?) at Laser Tag during SQL Saturday #66

What about stuff like Laser Tag, Mini Golf, Go Karts and so on, you ask? Have no fear! Since it was a huge success last year, we’re including the fun social interactions once again during breaks. So if you’re up to chasing after fellow SQL peeps during Laser Tag or challenging them to a round of go karts, we’ve got you covered. As for what games we’ll actually be including, you’ll just have to show up to find out! ;-)

#SQL Ski

I’ve heard that Colorado boasts some of the best skiing in the country, but don’t take my word for it. Check it out for yourself! Join us on Sunday, January 8th, as we board the “SQL Bus” to Monarch Mountain for a fun-filled day of skiing! Not much for skiing? Then just hang out and relax! What could be better than watching your fellow SQL peeps fall on their… err, SSAS… ? ;-) Say no more? You’re ready to sign up? Great! Sign up herePlease note that this ski trip is an optional paid outing.

Don’t wait! We need you to register for SQL Saturday so we can get a good idea of how many people to expect and can plan accordingly. Can’t wait to see you there! :-)

Last but most definitely not least, I want to give a huge thanks to our wonderful sponsors. Without them, this wouldn’t be possible. Please take a few minutes of your time to visit their web sites.

SSWUG

SolidQ

Confio

Redgate

idera

PASS

XTIVIA

Tek-Systems

Chris Gosnell Photography

Webucator

Colorado Springs Convention and Visitors Bureau

Gabby Communications

THANK YOU!

Party! Party! Party!

If you’re in the southern Colorado area, please join us for the Colorado Springs SQL Server User Group’s annual Holiday Party on Wednesday, December 7th! We’ll be meeting in the VIP Bowling area at Mr. Biggs starting at 5:30 pm for a great dinner (can you say ribs? Nom nom nom), Bowling and Laser Tag courtesy of our wonderful friends at redgate! Thank you, redgate! Bring your family! We need you to sign up here (it’s free) so we can get a good idea of how many people to plan for. See you there!

Oh and I probably shouldn’t mention there’s a full bar nearby… ;-)

Someone coined the hash tag “#SQLFamily” on Twitter not so long ago. So as part of “Meme Monday”, Thomas LaRock a.k.a. SQL Rockstar (Twitter | Blog) asked for people to write about “What #SQLFamily means to me.” I’ve read some great blog posts so far. I don’t know what more I can contribute or say what hasn’t already been said, but I’ll give it a shot.

In some ways I feel being a part of SQL family is like living in a bag of mixed nuts. It’s probably a very poor analogy and I hope no one takes offense, but I believe we’re all at least a little nuts in some way. Obviously, some people are nuttier than others which can make for very entertaining and enlightening conversations. It can also explain why we all get along so well, for the most part. Say what? What I mean is that no matter how different we all are (peanuts vs.  pecans) or where we come from (from Canada to Slovenia), we have at least one thing in common – a love for SQL Server.

A little squirrelly? Nutty? Why not?

In my opinion (and others), SQL family is about people who are not just willing to help but who enjoy helping others. Their dedication really shows through by being approachable at events to writing articles and answering questions on Twitter. They may exist, but I don’t know of any other technical community where you can get an entire day of fantastic free training such as the SQL Saturday movement.  *cough* <insert shameless plug for SQL Saturday #104> Don’t forget to resister here! Submit your abstracts now! </insert> :-D

As with any large group, you have a variety of nuts… err, people. Some are pretty outgoing and some are fairly shy. You have people with expert level knowledge, those just starting to learn, and others in between.  However, I’ve determined that if you try to make an effort to get to know people regardless of their level of expertise, you can be rewarded with great friendships and ample entertainment. People you can turn to when you have an issue you need help with, whether it’s technical or not and whether it’s at conventions (SQL Rally, PASS, etc) or online such as Twitter, forums or blogs. We argue. We laugh! We cry. We share.  It really is a great thing. *group hug!*

Having said all that, no one is perfect and neither is any family or community. Every group has their share of issues and problems, but what I feel makes the SQL community stand out is their willingness to share their knowledge and how much they enjoy doing so.  It may sound a bit cheesy and even though I’m not quite sure where I fit in (maybe everyone’s nutty little sister), I am proud to be a part of this wonderful family. :-)

I’m Back! 

I apologize that it took me awhile to write again. I’ve been extremely busy between family and work obligations these last few months. While being busy is a good thing, things should be easing up a bit soon.  So I’m hoping I’ll be able to devote more time to writing again.

If you hadn’t heard recently, the Colorado Springs SQL Server User Group (Web | Twitter) will be hosting another SQL Saturday! *and the crowd goes wild* This one will be #104 and will be held on January 7th, 2012. What a great way to start the new year! The one we held last year turned out great, and I’m really excited about this one. If you haven’t done so already, please submit an abstract if you are interested in presenting. Otherwise, we really hope to see you there! :-)

What’s This About a Parody?

Ever have an idea pop into your head that was really hard to let go? Well, that happened to me the other day. I’m not sure what prompted it in the first place, but I couldn’t resist finishing it once the idea took root in my brain. So to get in the spirit of our upcoming SQL Saturday event, I came up with this little parody. I hope you enjoy it! :-)

SQL Saturday

(sung to the tune of Winter Wonderland)

Chris got zinged, are you listening
Place the blame, Gabe is glistening
A rather odd sight
Rebecca’s uneasy tonight
Planning for our SQL Saturday.

Gone awry we SQL nerds
Jason’s crazed have you not heard
He tweets about thongs
As we plod along
Planning for our SQL Saturday.

In the mountains we can chase Speakers
Then pretend that we will simmer down.

They’ll say: Are you crazy?
We’ll say: Umm… err…
But you can ski with us
Now you’re in town.

Later on, we’ll conspire
Look out! Marc’s on fire!
Our nerves are now frayed
The plans that we’ve made
Planning for our SQL Saturday.

In the mountains we can chase Speakers
Then pretend that Troy’s a SQL clown.
We’ll have lots of fun chasing Speakers
Until all the board members fall down.

With Kat’s throws we’ll be chilling
Where it snows, we’ll be willing.
Workaholics at play on a SQL sleigh
Planning for our SQL Saturday.

A Challenge? What?

I know it’s not perfect but it was fun to write. :-) So are you ready for some fun of your own? I’d love to read what YOU come up with! Really! :-) It can be serious or wacky. A short story, a poem, or whatever! Come on. It’ll be fun! Put it on your blog. Tweet about it. Add a comment here. Heck, draw a picture! Just make it about SQL Saturday (preferably #104, of course!) ;-)

A big thank you to my fellow conspirators… err, board members / planners / friends for inspiring this little parody. :-)

Chris Shaw (Blog | Twitter)
Gabriel Villa (Blog | Twitter)
Troy Ketsdever (Blog | Twitter)
Kat Meadows (Twitter)
Marc Beacom (Web| Twitter)
Jason Horner (Web| Twitter)

My First Article!

When I started this blog roughly a year ago, I had absolutely no idea that not only would I end up writing a technical article a year later but that it would also be published on a widely popular web site.  For some it may not seem like a big deal, but this is huge for me.  I love to write. I actually started writing for fun in the sixth grade but stopped after high school since college took up a lot of my time. I hadn’t realized just how much I missed writing until I wrote a little poem for a super cool contest through “SQL Cruise“. :-) After I wrote it and with lots of encouragement from my friends (a.k.a. co-workers and partners in crime), I started this blog and haven’t stopped since.  It may sound corny, but it’s such a great feeling to be able to not only combine my love of SQL Server and writing but then to find out other people actually enjoy reading what I write. :-)

If you haven’t already, please read my article titled “Common Table Expressions: Not Just for Selects” and let me know what you think! Any feedback is greatly appreciated. :-)

I’d Like to Thank…

I know it’s not like an awards show or anything but I do want to thank people for helping me reach this milestone in my career.  So without further ado…

Thank you SSWUG for publishing my first article!

Big thanks to my family and friends for supporting me and putting up with my crazy ramblings. :-)  

Thank you, dear readers, for actually reading my blog and giving me great feedback!

Last but definitely not least… a big shout out to my friend, Chris Shaw, who not only planted the idea of writing said article in my head but for also encouraging me.

Thank you all! :-)

Author’s side note: Here’s a little known tidbit for you. In the sixth grade, I wrote a funny poem about my older brother for a class assignment. Just for giggles, I submitted it in a national writing contest the next year. It actually won a little award and became published in a book. Sadly, the book is out of print and has been for many years.  Hopefully I will find it one day. If I can ever remember the title of it, that is. :-)

The Big O

Some of  you may or may not have heard, but for those who haven’t, we are getting Oracle databases at work. And the crowd goes wild!  I’m really excited and actually looking forward to it. It’s a great opportunity to learn something new which is one thing I love about my job. I’m really happy we’re getting training too. Yay! It will be nice to take some classes for once since I haven’t really had any formal SQL Server training. It’s all been on the job training with the exception of one Reporting Services architecture class. I understand there will be consultants to help us out along the way too. I’m really hoping to learn a lot from them. I’ve had some less than stellar experiences in the past with consultants at other jobs, but I’m going to strive to be positive that it will work out just fine in this case. Call me naive but I really do hope it works out. Crossing fingers and toes and everything else I can think of!

Uhh... sorry, but I'm a little busy right now...

It’s my understanding that we’ll have both Windows and Linux boxes. The Oracle version we’re getting is Oracle 11g R2. I was very excited to hear we’re getting Linux. In one of my past jobs, I did a little roundabout UNIX administration and really enjoyed it.  Feel the power! Muhahahaha… Now I need to dust off the cobwebs. So far Linux is extremely similar to the UNIX I used way back when. Hopefully the learning curve won’t be all that bad. It may help that my husband is currently taking IT classes and this semester it so happens he’s taking a UNIX class. Note to self: need to swipe…err, borrow his UNIX book… Luckily, I have a little experience with Oracle 9i from several years ago. However, it was just writing stored procedures in PL/SQL for reports. Now we need to learn to be Oracle Administrators first and then development comes later on. What is really truly going to help us out is that our manager is Oracle certified (even though it was a while ago) and our newest DBA has experience with Oracle. At this point, I think we need all the help we can get. :-)

Our first big Oracle project just kicked off this last week. The time line is very aggressive and tight with production scheduled for mid September. Plus we have current ongoing projects that will keep moving forward at the same time in addition to any production issues that arise. We’re also taking over the administration of several SQL Servers from other departments that are moving onto our network including one SQL 2008 cluster. That will keep us pretty busy too.  Whew!

Having said all that, it’s time for the bad news. I honestly don’t know how much time I’ll be able to devote to my blog in the near future. I want you all to know I haven’t abandoned writing on this blog, but I will try to post when I can. Beware there may be some Oracle lurking in there somewhere with SQL clustering and what not. You have been warned! :-)

My main purpose of writing this post is that I’m really curious what your experiences with Oracle are.  Please feel free to comment!  I’m looking foward to reading your comments and opinions – the good, the bad and hopefully not too ugly. :-)

If you’ve ever wondered if your servers’ behaviors corresponded with the alignment of the stars and planets, then you’re not alone! Just for fun, Thomas LaRock (a.k.a. SQL Rockstar – Blog | Twitter - founder of Meme Monday) tasked readers to come up with SQLstrology or SQL horoscopes. I decided to try my hand at writing a daily horoscope just for dealing with servers. It’s all in good fun so I hope you enjoy reading it as much as I had in writing it! :-)

Aries (Mar 21 – Apr 20)

Keep your chin up today! While Aries servers tend to be impatient and bore easily, they thrive on adventure. What you may perceive as a pain in the drive, your Aries servers are just having some fun! Granted, it’s probably at your expense. So when those processes hang out in never-never land and commands just don’t seem to work, remember this. Powershell is your friend! Today’s lucky color is whine… err, wine.

Taurus (Apr 21 – May 21)

Being the first earth sign of the zodiac, Taurus servers are very dependable and stable. However, today may not be a good day to patch these servers as you had planned. They are not fond of change and may resist your patches due to their profound fear of the unknown. Deeply sensitive, take care to not insult your servers either or you may find them unresponsive. Bull-headed, persistent, and stubborn, your Taurus server may perform best as a Policy-Based Management server. Lucky color is champagne.

Gemini (May 22 – June 21)

Your Gemini servers tend to be very independent and do not like to be pinned down by anyone or any rules. Hence, you may have difficulties with group policy updates today. However, they are masters of communication. In fact, they are the ultimate social butterfly of the zodiac! So watch out for social media applications popping up unexpectedly on these servers. You may also want to take a closer look at your Twitter followers. Today’s lucky color is Georgia peach.

Cancer (June 22 – July 22)

Prone to wild mood swings, watch out for unpredictable behavior from your Cancer servers today. One minute everything is fine and dandy. The next thing you know, you have deadlocks up the wazoo! While harmony is very important to your Cancer servers, they don’t deal well with conflict. Remember that they’re ruled by the Crab. So don’t forget the cocktail sauce. Lucky color is blue lagoon.

Leo (July 23 – Aug 21)

Drama Queen. Spotlight Hog. All Mighty Powerful King or Queen of the Server Room. Sound familiar? Leo servers love to be the center of attention and in control. While they tend to view the server room as their “kingdom”, they actually work best in a group setting. Midday may bring an important and interesting realization about their imposed function versus what they’re really up to. That slurping sound you hear could be resources being lapped up like um… don’t ask. Keep in mind your Leo servers are ruled by the Lion. So beware of naming any servers after sweet little tasty animals and keeping them too close to your Leo servers. Today’s lucky color is red lion. On second thought, camouflage may be a better choice.

Virgo (Aug 22 – Sept 23)

Focus your energy on your Analysis Services servers today. Don’t dwell on their past mistakes. On a never-ending quest to bring order to chaos, your Virgo servers will become invaluable aiding you with that oh-so important report that is past due. Beware of indecisiveness. It could be your downfall. Trust your instincts and in your servers’ ability to solve problems logically. Avoid heavy lifting and bacon-slinging monkeys. Today’s lucky color is blue monkey.

Libra (Sept 24 – Oct 23)

Today is your lucky day! Your easy-going Libra servers are eager to please you! Today may be the ideal day to bring up that replication idea you’ve been contemplating. No! Not that idea! The other one! The one that won’t get you fired. As the diplomat of the zodiac, your Libra servers strive for harmony and peace. They are adept at seeing multiple points of view. So try your ideas out on them first. Since air is unpredictable and Libras are an air sign, beware of sudden thunderstorms and co-workers quacking like ducks. Think sunshine. Today’s lucky color is purple rain.

Scorpio (Oct 24 – Nov 22)

Keep a close eye on your mysterious Scorpio servers today. While they are resourceful, they can become downright moody for no apparent reason. On the bright side, since they are naturally suspicious of others they will keep a close eye on the other servers for you. Beware of ulterior hidden motives as they are also extremely ambitious, powerfully persistent and determined. Treat your Scorpio servers as the prince or princess they are and you will be dazzled by their brilliance. Lucky color is dark, luscious, velvety chocolate.

Sagittarius (Nov 23 – Dec 22)

Lighten the load on your Sagittarian servers today or you may find they’ve taken an unofficial virtual road trip far, far away. Ruled by the explorer, don’t be surprised to find your GIS (Geographical Information Systems) servers are actually Sagittarians. Their craving for adventure and excitement is part of their drive to learn and explore. Give them freedom, and they’ll give you their best especially when there’s a crisis. Unfortunately for you, they possess a great sense of humor. Today would be a great day to check your backups. Today’s lucky color is sangria.

Capricorn (Dec 23 – Jan 20)

Patience needs to be your virtue today for your Capricorn servers are all about being in control of their surroundings, even if it doesn’t mesh with your ideas about control. Extremely patient, they will wait for the opportune time to do what they want. Your best bet is to introduce new changes slowly so they can get used to it. If all else fails, feel free to employ a sledgehammer. Lucky color is black velvet.

Aquarius (Jan 21 – Feb 19)

Very unpredictable and erratic, Aquarius is the most advanced thinker of the zodiac. Be wary if these servers start to question their own existence… or yours! Don’t worry, though. For all their intelligence, they possess the emotional depth of a turnip. On second thought, maybe you should worry. Their ruling planet is Uranus. Enough said. Today’s lucky color is purple haze.

Pisces (Feb 20 – Mar 20)

Today may be a good day to stay in bed for the planets are surely out of whack. Born under the sign of self-undoing, Pisces servers tend to be their own worst enemies. Their indecisive and overly sensitive nature may lead to self-pitying today. Help them feel more positive about themselves with uplifting comments such as “My! What a big drive you have!” or “No! That case doesn’t make your port look big!” As the last of the water signs, these are the most spiritual servers of all and tend to dabble in the occult and paranormal. Do not be surprised to find ghost programs showing up at odd hours. Lucky color is white lady.

Thomas LaRock (Blog | Twitter) started something fun called “Meme Monday”. This month the topic is “dumb SQL questions”. Normally I would say there isn’t such a thing as a dumb question because it’s all part of the learning process. How will you learn something if you don’t ask? However, there are times when something happens to change my mind. It doesn’t happen often, but it has happened. I know I’ve asked my share of dumb questions but this one someone asked me really stuck out in my mind the most for some reason.

The following dialogue actually happened several years ago. There was actually more to the conversation but it’s not easy recalling a phone conversation from almost 3 years ago verbatim; however, you should get the general idea of what happened.

User: I have to install SQL Server as an operating system, right?

Me:  Umm… no, SQL Server is not an operating system. Just because it has “Server” in its name does not automatically make it an operating system. It’s a relational database management system. You install it on a server that already has an operating system on it, such as Windows Server.

Thought to self: Maybe, just maybe, it would actually help if you took a few minutes to oh, I don’t know, read up on what it is you’re trying to install?

User: Oh.

don’t ask… don’t ask… don’t ask…

Me: What is it you’re trying to do?

User: I’m going to turn one of my desktop computers into a database server for our department to use.

*sigh* Why me? Wait. Maybe it’s not all that bad.

Me: As a play area or for development?

User: No. It’ll be for some production databases.

Me: Can you please hold for a minute?

A few deep calming breaths later after beating my head on my desk several times…

Me:  Yeah, you really shouldn’t try to turn your desktop into a database server for your department to connect to for production stuff. A desktop just isn’t built or configured the same as a production database server. Plus you’ll need not only database backups but you’ll also need to have them backed up to a separate location such as the SAN or possibly to tape.  If something goes wrong and you lose your databases, we may not be able to help you. Let’s discuss this with my manager to see how we can help you.

The Conclusion: All in all, it ended up working out. We put the databases on an actual production database server that we managed. I wish I could recall which edition of SQL Server he had or if he even purchased a license. What’s important is that the user learned something valuable that day and I’m actually glad he called before doing anything. That way we avoided what could have turned into a disaster if he took it upon himself to do all this without any involvement from I.T.

The Moral of the Story: If someone asks you a dumb question, there’s a chance it may be a good thing he/she asked. Otherwise, disaster could strike and you may end up having to deal with the aftermath anyway.

Older Posts »

Follow

Get every new post delivered to your Inbox.