Robert G. Freeman, Oracle consultant and
the author of several books, including "Portable
DBA: Oracle" and "Oracle Database 10g New
Features," knows a bit about the highs and lows
of being an Oracle DBA. At next month's
IOUG Live! 2005 conference, Freeman will
share some of what he has learned in his 17
years with those of you who are new to the role,
or considering it, and SearchOracle.com got a
preview. Let's say someone wants to be
a DBA. Where do you tell that person to begin?
RGF: This can be a tough field to get into.
Since DBAs tend to be responsible for a critical
company asset -- data -- they tend to prefer
those with some degree of experience. However,
on the other side of the coin, there is a
certain demand curve that seems to outstrip the
experience supply. That being the case, there is
some opportunity for the junior DBA.
Typically, even the junior DBA will already have
some IT experience, either as a developer or as
a system administrator. So, for the truly new
person, finding such a position is a place to
get your foot in the door. If you are already at
a company that uses Oracle, then it's time to
start looking for opportunity within your
company. For example, if you know your company
is going to have a big Oracle-related
development project gearing up, it's time to put
your hat in the ring to work on it.
Educating yourself is always a good start too.
User events, like my
university session at IOUG-A for beginning DBAs,
other educational classes (such as those offered
by
Burleson Consulting) and reading will all
help you as you search for that Oracle DBA job.
What is the minimum background needed
before companies will even consider someone for
a DBA role?
RGF: For a new hire, if you don't have two years
of previous DBA experience, then it's going to
be difficult. Typically, a minimum of five years
of IT experience, in addition, is going to be
preferred as well. For the newer DBA, OCP
certification is a must if you want to be able
to sell yourself in spite of lack of experience.
Years ago, I knew of at least two DBA
contractors who were hired with no Oracle work
experience, little overall IT experience, who
graduated with an IT degree and got their OCPs.
I don't think you will see that in this day and
age.
Something else to consider is that many
companies already have experienced DBAs on
staff, so they may be looking for a junior type,
at a lower salary, to do things like basic
monitoring and so on. Often these companies will
try to hire from within too. This is the kind of
opportunity that a DBA want-to-be needs to be on
the look out for. While the short-term salary
benefits might not be great, the experience you
will gain will eventually give you an
opportunity for the salaries that experienced
DBAs can demand.
Is certification worthwhile
for new DBAs?
RGF: I think it can't hurt, and it's a good
exercise. There are those who think it's
pointless, and just a memorization exercise. In
the end, it does force you to gather some
information about Oracle, and you do learn
something. It's no substitute for experience,
but it's better than nothing.
What's the best way to learn about administering Oracle databases?
RGF: The best ways to learn how to administer
Oracle databases are:
- Find a mentor who knows Oracle
and who knows how to mentor. I had a great
mentor when I first started working with
Oracle and it makes all the difference in
the world.
- Training is helpful, but I'd suggest you
sit down with Oracle and use if for a
while (create a few tables, a few users, and
learn basic SQL) before you actually go to
training.
- Read, read, read. Load up on
books. Join Oracle related forums and news
groups and read them daily. Forums like
www.dba-oracle.com,
www.quest-pipelines.com,
Oracle-L and
LazyDBA all will provide insight and
education on a daily basis.
- User group meetings, like IOUG-A,
are invaluable to the learning process. It
is in these environments that you can learn
from a large number of people, on a large
number of topics. In addition, you have the
University sessions, such as the one I'm
doing for the beginning DBA, that can be
most helpful in learning about Oracle.
- Finally, don't believe everything you
hear or read, in fact, don't believe
anything you hear. Oracle is about few
absolutes. Every system is different,
and there are many different ways of doing
things. Do not build yourself a box of ideas
that can never change, because that does not
make for the best of DBA's. There are some
best practices, and standards, that are
somewhat absolute, but for the most part,
it's all fluid and situation-dependent.
Is it possible to learn on-the-job DBA tasks
without being on-the-job?
RGF: It is possible to learn on-the-job DBA
tasks, but the real question is can you retain
what you have learned without having the
opportunity to practice it? The job is key
because a lot of what the DBA does is
on-his-feet thinking and responses to
out-of-the-ordinary problems. There are numerous
technologies and varying complexities. This is
hard experience to acquire in a strictly
learning environment.
What are the first few questions new DBAs have when sitting down
with Oracle for the first time?
RGF: That depends on if they have any experience
with databases at all. If not, then the first
question is, where do I start? Things like using
SQL, and SQL*Plus are of prime interest because
until you can actually talk to the database,
there isn't much to do.
If it's a developer who may have done SQL
coding, and had some SQL*Plus experience, then
the questions are more of the order of, "How do
I do the task I've been asked to do?". Then it's
a discussion of how to create a user, a table, a
discussion on grants and privileges, and some
base information to get them started.
When it's an experienced DBA, the first
questions generally are something like, "What's
the Oracle account password, what's the SYS
password, and where is the bathroom and the Coke
machine?". That's the difference between
beginners and experienced DBAs. Experienced
DBA's have time to go to the bathroom and the
Coke machine.
What are the most common mistakes beginners
make?
RGF: Believing that there is a single answer to
a given question. While there are standards that
one should always use, more often than not, the
answer to a given question is, it depends.
Another common mistake is thinking you know
everything after a while. Just when you think
you know everything is the exact moment when you
actually should realize that you don't know
anything. Always rethink your way of looking at
things, and check your reality against the
thinking of other professionals in the field.
Always ask yourself if you are being
closed-minded about things. A DBA is paid to
think, in my opinion, and that requires an open
mind.
What should the top five priorities be for
new DBAs on the job?
RGF:
- Be on fire. You have to want to
learn everything, do everything, consume
everything. So you got the DBA job, now is
not the time to rest in your new chair and
enjoy your success. List out your goals and
what you want to learn. A five year plan is
a great idea.
- Listen! Ask Questions! Be involved!
Don't just sit back waiting for the create
table requests.
- When it comes to theory, don't
believe anything you hear or read until you
have tried it yourself. Database rule
number one, in my opinion, is that no rule
of thumb applies all the time.
- If you are solely responsible for a
database, make darned sure, before you
leave your job on day one, that your
database can be recovered. Nothing else
matters if you can't get that database back.
- Document everything.
And, a baker's half-dozen...
- Learn to use your voice of authority.
You are the DBA, and this database is your
responsibility. As you learn the right way,
and the wrong way to do things (like, say,
database design), you need to be an advocate
for best practices and for good design. If
you succeed, you can enjoy the rapture of
success. If they don't listen, you will get
the joy of "I told you so."
|