I recently started to work out with a personal trainer. With some medical issues popping up with my mom and older siblings, I decided to start to make a change. Like many others, my nutritional habits are perhaps the worst of anyone that you may know. I am taking little steps to change that. I have asked myself why. My mother for years has tried to get me to eat better. My wife always tries to get me to eat better. Why now would I start to change due to a personal trainer suggesting some things to try? It is the same message, but it is a different source.
Another example of this is when I was on the Fencing Team in college. Essentially, a classic attack in foil fencing is the lunge. It is natural to move your foot, arm, and hand (tip of the foil) all at the same time (and usually miss or be the victim of a counter-attack). Our coach drilled it into us the proper way for this attack is Tip, Arm, Foot IN THAT ORDER. I will not re-hash the reasons why, but that is the succession of a good attack. Of course, nature tends to foul things up. One day a nationally ranked fencer was in town and joined us for practice. For some reason when he told us the exact same message (Tip, Arm, Foot), we all seemed to listen. Did we not believe our coach in the first place?
So I started to think about how this is related to our work with SQL Server. How many times has a "Best Practice" been told to you, but the direction was not heeded until another source said the same thing? How many sources does it take to get an important message across? Here are just a few examples that come to mind from my experiences with various customers:
- Don't use undocumented DBCC commands
- Separate your data and logs on different LUNs
- Don't use "sa" login, instead grant sufficient privileges to other accounts
- Verify your backups
If these few things are not being followed in your organization, consider this message as another "source". Perhaps it will be the one to trigger a change.