Craig S. Mullins

Return to Home Page

May 2005





The DBA Corner
by Craig S. Mullins

The Tao of DBA

Go with the flow of things, and you
will find yourself at one with
the mysterious ways of the universe.
                                        -Chuang Tzu

The senior DBA rocked back in his chair and smiled. The newly hired apprentice DBA was running back and forth from his terminal to the developer’s cube back to his phone and over to the fax machine. Frustrated, the new hire yelled over at the senior DBA “How can you be so calm? Things are falling apart!”

“Things are always falling apart and yet life goes on,” muttered the senior DBA under his breath. He was a practitioner of Tao.

What is Tao? More accurately, it is the Tao Te Ching and it proposes a model by which the individual and society can embody a philosophy to achieve a harmonious and balanced existence. Written by Chinese philosopher Lao Tzu over 2000 years ago, the Tao (or the Way) allegedly is the universal power through which all life flows. Whether you subscribe to the philosophy of Tao or not, Lao Tzu’s manuscript contains nuggets of wisdom on how to go with the flow of life. Our senior DBA has applied the philosophy of Tao to his job. Let’s continue with our eavesdropping on his on-going situation.

As the apprentice DBA continued running around like a chicken with its head cut off the Taoist DBA calmly glided his mouse across the top of his desk, clicked, and typed something on his keyboard. In a minute or two the apprentice DBA walked into the senior DBA’s office and said, “Boy am I glad that is over. I don’t know what exactly I did to solve that problem, but I am exhausted.”

The senior DBA shook his head and pointed to a printout he had thumb tacked to his wall that read “Don’t Panic!” He showed the apprentice the script he had run and told him why it solved the problem. A good DBA is prepared to resolve issues he has seen before because he has must be a packrat with a good memory. “That means you must learn from every action you take,” said the senior DBA. “Running around like a crazy man when things are going wrong will never help. Remaining calm and taking things one step at a time will help. And always remember the situation and the steps you took to remedy it. Things have a way of repeating themselves.”

The senior DBA continued, “Skill and knowledge are required to be a successful DBA, but sometimes you need to master the art of getting out of your own way. You must learn how to act without forcing conclusions.”

As the apprentice DBA took notes an application programmer walked around the corner and nervously stated “There’s a problem with the database!” The senior DBA muttered “guilty until proven innocent” under his breath. The apprentice DBA wheeled around in his chair and brought up his performance monitor. He clicked and typed and moved through menu after menu shaking his head and muttering to himself. The senior DBA chuckled and clucked out a cryptic acronym: “PEBCAK” he said.

After about 15 minutes or so the apprentice DBA started to grill the application programmer with questions. “What is the problem?” he asked. The programmer replied, “My program worked and ran quickly yesterday and now it just takes forever to finish. I figured you must have changed something in the system, right?”

“No, but what did you change in the program?” asked the apprentice DBA. “Nothing that should matter,” replied the programmer. “It worked yesterday.” The senior DBA, observing the conversation as he sat in the corner like a bemused buddah, said “It is another day.”

Ignoring him the apprentice ran back to his terminal and kept looking for a database problem. The senior DBA looked at the programmer and said “If your changes do not matter, take them out of the program.” The programmer scrunched up his nose and muttered “I can’t do that. I guess they might matter. I’ll double-check things and get back to you.”

The senior DBA walked over to his apprentice and said “We’re not likely to see him again today.” The apprentice turned away from his monitor and asked “I guess it was a program change that caused it after all, huh? By the way, what does PEBCAK mean?”

The senior DBA smiled and nodded, whispering “Problem Exists Between Chair And Keyboard” into his apprentice’s ear.

Slowly, the apprentice was learning the way.





From Database Trends and Applications, May 2005.

2005 Craig S. Mullins,  All rights reserved.