Tuesday, April 10, 2007

To be a good oracle dba qustion

Well, I recived the following email through an oracle email list the qusiton is quoted below

" Gurus, We all hear about Oracle books and manuals that we should read. What about non Oracle things we need to know to be a DBA? For eg couple of days ago David Litchfield posted a link to an Oracle paper on log buffer internals. The paper had lots of C code in it. Do I have to learn C to become a good DBA? What is the best place to start?
And I was reading the answerer for that question and I had to say that one of the users on the list replied with a great answer and apply for every thing in this life, the answer is quoted below
Not a guru, but I think one of the most important things for a DBA to know is how to learn - quickly, and just as important for long term success is to have a natural desire or drive to learn. Databases and all the interrelated technologies change so fast that you have to be willing and able to constantly learn, and to be happy with life as a DBA, you have to enjoy that challenge. By knowing how to learn, I mean being able to quickly identify what it is you need to know, where to go to get the necessary knowledge, how to quickly sort through all the BS to zero in on the key concepts that you need, and then how to apply the knowledge to your specific situation. There certainly isn't any fixed set of topics that a DBA needs to know. The label "DBA" describes many different roles in real life and in my particular position, knowing C doesn't really do me any good because I never look at C code. Rather than knowing any specific language, it is more important to understand the concepts of coding and then you can take that skill and pick up the specifics of any language as needed. Obviously you need to be comfortable with the SQL syntax and at least familiar with the procedural code for the RDBMS you are working on. You just have to be as intimate as you can with all the pieces of whatever environment you find yourself responsible for. It is a huge plus to have as much understanding as you can of the operating system and all applications running against your databases, as well as anything else running on the same server. Even an understanding of the hardware and network you are running on can be very helpful. A good understanding of the business you are supporting is always useful too. I think you really have to be a jack of all trades and master of at least one in order to be a really good DBA.

Regarding where to start - there are many paths to enlightenment :-) so just take your pick. Some start as application admins (like me), some as sys (OS) admins, some as developers - all tend to end up with different strengths and weaknesses but I don't think one is inherently better than the others, just different. Whichever path you pick, just try to pick up as much of the others as you can along the way.

To be honest I liked his answer and it gave me a motive



rajesh said...

Even I also like the answer.. also I would like to add..

One should explore various aspects & comnonents of Operating System, Database & application. As an admin of any of these will give a Broader Prespective and understanding. Which lead to becoming him as anytroubleshooter kind of person.

I started My career with explorartion of Operating systems(DOS)Then windows 3.1 then Linux slackware. etc.. etc.. etc.

fhasweh said...

thank you for taking time to share this with us


Sandeep said...

For DBA, it is important to understand OS very much. As with increasing popularity/need for RAC/ASM & other advanced technologies, knowledge of OS/Network/Cluster helps a lot. Also the objective of DBA once he is been a DBA for a while is to specialize in 1-2 areas rather than still continue as DBA. In long run you will stand out more if you have specialization within Oracle Database to showcase.

My 2 cents !!


fhasweh said...

good points sandeep