High-Level Guidance and Advice for DBAs

Database administration is a very technical discipline, but it is also a discipline in which the practitioner is very visible politically within the organization. DBAs should be armed with a proper attitude and sufficient technical knowledge before attempting to practice database administration. This column usually covers the many diverse technology issues with which DBAs must deal. But for this month, we are going to take a short diversion and discuss some high-level guidance for DBAs to follow that can make their job easier to deal with.

Document Everything: While performing your job as a DBA, you are likely to encounter many challenging tasks and time-consuming problems. Be sure to document the processes you use to resolve problems and overcome challenges. Such documentation can be very valuable should you encounter the same, or a similar, problem in the future. It is better to read your notes than to try to re-create a scenario from memory.

A corollary of this rule of thumb is to “keep everything.” DBA is just the job for you if you are a pack rat. It is  good practice to store away everything you come across while performing your job. This includes, but is not limited to:

  • Manuals – old and new; PDFs and printed
  • Scripts – to make changes, run reorgs, etc.
  • Programs – quick fix programs, sample programs, etc.
  • Proceedings and Presentations – from user groups and conferences
  • Notes – from design review meetings, specification meetings, team meetings, user groups and conferences, etc
  • Course Books – from any classes you have attended
  • White Papers
  • Reports – from performance monitors, queries, applications, etc.
  • Articles – from magazines or links to web sites (but you might consider printing off some of your favorite web links because sometimes links go dead)
  • Books – for all of your DBMSs and tools

Automate: Why should you do it by hand if you can automate DBA processes? Anything you can do by hand can probably be done better by the computer—if it is programmed to do it properly. And once it is automated you save yourself valuable time—that probably will be spent tackling other problems.

Furthermore, don’t reinvent the wheel. Someone, somewhere, at some time many have already solved the problem you are attempting to resolve. Look to the web for sites that allow you to download and share scripts. Or if you have budget money look to purchase DBA tools from ISVs that can automate and optimize your database environment.

Share Your Knowledge: The more you learn the more you should try to share what you know with others. You can participate in, and share information at, database user groups that meet quarterly (or even monthly). Be sure to attend these sessions to learn what your peers are doing. And when you have some good experiences to share, put together a presentation yourself and help out your peers. Sometimes you can learn far more by presenting at these events than by simply attending because the attendees will likely seek you out to discuss their experiences or question your approach.

Another avenue for sharing your knowledge is using one of many online forums. Web portals and web-based publications are constantly seeking out content for their web sites. Working to put together a tip or article for these sites helps you arrange your thoughts and  document your experiences. And you can garner some exposure with your peers by doing so because most web sites list the author of these tips. Sometimes having this type of exposure can help you to land that next coveted job.

If you have the time, consider publishing your experiences on your own blog, or in collaboration with an industry blog. Doing this can take a considerable amount of time, but it can bring the most exposure.

But the best reason of all to share your knowledge is because you want others to share their knowledge and experiences with you. Only if everyone cooperates by sharing what they know will we be able to maintain the community of DBAs who are willing and eager to provide assistance.

Don’t Panic!: Problems will occur—there is nothing you can do to eliminate every possible problem or error. Part of your job as a DBA is to be able to react to problems with a calm demeanor and analytical disposition. When a database is down, and applications are unavailable, your environment will become hectic and frazzled. The best things you can do when problems occur is to remain calm and go about your job using your knowledge and training.

As the DBA you will be the focus of the company (or at least the business units affected) until the database and applications are brought back online. It can be a harrowing experience to recover a database with your boss and your users hovering behind your computer terminal and looking over your back. Be prepared for such events because eventually they will happen. Panicking can cause manual errors—the last thing you want to have happen when you are trying to recover from an error.

The better you perform up-front planning and the better your procedures, the faster you will be able to resolve problems. And if you are sure of your procedures, you will remain much calmer.

Following these basic maxims will make database administration a much more manageable task within your organization.