The top 5 things every Oracle DBA should know and practice regularly:
Backup and Recovery
Basic Performance Diagnostics / Tuning
Backup and Recovery
Basic database security
Backup and Recovery (seriously)
Also, reading Oracle documentation and trying things out is critical. Be curious. If you work with other DBAs, ask them questions and try to learn from their experience and share your own learning. But don't take everything you read or hear for granted - try to understand to logic and learn to test everything yourself.
Be curious about operating systems, storage, networking etc. Learn to establish good relationships with these teams in your organization. Know what's there are working on - it will affect you.
Also, learn to work with developers, understand their pains and educate them about how to properly work with a database. For example, bind variables - good. For example, grant DBA to every developer - bad. Be patient - there are many programmers and a few DBAs, so this is never-ending.
Also, learn to work well with Oracle Support. It is a skill that needs practicing. While you are at metalink, learn your way around and try some of the new stuff there.
Whenever possible, know the manual way of doing something, as opposed to using a GUI. For example, know how to create a physical standby database using OS commands and utilities; or clone a database by creating an RMAN script and running it command line vs. using Enterprise Manager screens.
Books:
Optimising Oracle Performance - Cary Millsap
Pretty much everything by Thomas Kyte (http://asktom.oracle.com)
Cost-Based Oracle Fundamentals (Jonathan Lewis)
Web sites (if you are dealing with Oracle on Linux):
http://www.puschitz.com - installing oracle on Linux, Linux performance tuning tips
http://www.oaktable.net
...and the oracle websites, metalink etc.
I'll take it to a bit different direction.
The top 5 things every Oracle DBA should know and practice regularly:
Also, reading Oracle documentation and trying things out is critical. Be curious. If you work with other DBAs, ask them questions and try to learn from their experience and share your own learning. But don't take everything you read or hear for granted - try to understand to logic and learn to test everything yourself.
Be curious about operating systems, storage, networking etc. Learn to establish good relationships with these teams in your organization. Know what's there are working on - it will affect you.
Also, learn to work with developers, understand their pains and educate them about how to properly work with a database. For example, bind variables - good. For example, grant DBA to every developer - bad. Be patient - there are many programmers and a few DBAs, so this is never-ending.
Also, learn to work well with Oracle Support. It is a skill that needs practicing. While you are at metalink, learn your way around and try some of the new stuff there.
Hmm... it is enough DBA zen for now :)
tahiti.oracle.com should always be the starting point.
Blogs to follow:
Tanel Poder
Jonathan Lewis
Doug Burns
Kevin Closson
Richard Foote
Thomas Kyte
For the documentation and the blogs alone, you gotta start with http://www.ToadWorld.com.
Whenever possible, know the manual way of doing something, as opposed to using a GUI. For example, know how to create a physical standby database using OS commands and utilities; or clone a database by creating an RMAN script and running it command line vs. using Enterprise Manager screens.
I really liked this article.
Blog from SQL guru Steven Feuerstein