Eleven Critical Skills for the Beginning DBA

I have been in the Oracle Database Administration business since about the year 2000 now, so at this point I feel like I am ready to write my first article ever on the basic DBA skills for a beginning DBA.

These are eleven critical skills every beginning DBA should master quickly if she expects to continue in the business. Please note this is not intended to be comprehensive, no doubt there are other important skills. These are just eleven skills I see as very important.

  1. Install Oracle software.

This means install it using the gui, install it using silent install, install it on Windows, Linux, AIX, and install it through OEM Cloud Control. There are several different methods that might be used to install the Oracle software, and you need to know all of them.

  1. Troubleshoot SQL Code.

You don’t need to be the SQL code guru, that’s for the senior DBA and senior developers but you do need to be able to understand what the SQL is doing, and make suggestions on how to improve it. That does mean you have to be able to get an ‘explain plan’, and identify the problems.

  1. Backup a database

You should know how to back up a database through RMAN, and at least one other method, whether its exp, expdp, or OS utilities. Every good DBA should have two good backups and something in his back pocket to recover data.

  1. Backup a table

You need to know how to back up a single table, just like you need to know how to back up a database. There are several different ways to do this, you should know at least three.

  1. Restore a database to current/alternate location

This is a critical skill. You must have a good back up, and you must be able to restore the database. When your hardware crashes, you as the DBA better have a plan in place to restore your database. If you don’t, you should put a plan in place to get a new job.

  1. Restore tablespace to alternate location

People are fallible, they corrupt their data all the time. It will be your job as a DBA to restore that tablespace and reload those corrupted tables.

  1. Restore a table.

When you make a backup of a single table, because you are making changes, you better have a plan in place to restore it. There are several ways to do this, you need to know at least three.

  1. Create a user and grant appropriate privileges and quotas.

This is a basic skill, and not hard. But make sure you don’t default to giving everyone unlimited tablespace. Make sure you know how to grant users access to only the tablespaces they need.

  1. Read an alert log.

Does that line in the alert log mean anything? I just had a log switch, is it switching logs too frequently? You need to be able to review the last hundred or so lines in the alert log, and figure out right away if you have a problem.

  1. Write a shell script.

This is probably the skill the most beginning DBA’s lack. You need to be able to write a shell script (most Oracle installations are on a Unix variant), put it in cron, and know how to send the output to the recipients who need to see it. Whether it is a report or an alert, you need to know this skill.

  1. Create a dataguard standby

Failover/HA is big business these days. Oracle dataguard is a very common solution. Be familiar with it.

Those are the skills I see as most important. Some of these topics are discussed in my earlier blog entries. In the future, I will be covering each of these points in more detail, and giving my viewpoints on each of these, from the perspective a DBA that has worked in consulting, as well as in small and large companies.

One Response to “Eleven Critical Skills for the Beginning DBA”

  1. Dave Herring Says:

    Andrew, for “Troubleshoot SQL Code” (in my opinion) a more general phrase would work better, such as “Troubleshooting / Logic Skills”. What I’m finding is that although DBAs may know a bit about various aspects of Oracle, many either spend little time troubleshooting or just don’t have that skill.

    For example, a DBA runs into an issue, error or otherwise. Just because a quick search in MOS or a simple search engine comes up with a relative hit that says the problem is a bug doesn’t really mean it is a bug. They need to investigate all aspects of the situation and make some logical decisions about why it happens, what causes it, how to reproduce it, etc. Sure, it could be a bug but I’ve found that’s a much lower percentage than people assume.

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s

%d bloggers like this: