Some of the Better Aspects of Oracle 10g
Article by Rampant author Chris Foot
Oracle 10G has been
Oracle's flagship release for some time now. I thought it might
be beneficial to focus on some of the benefits that 10G has to
offer. They aren't in order of importance. Its just a general
list that may help readers remember that there are some pretty
cool features in Oracle 10G. Hopefully you will find it to be
both informational and an interesting read.
I remember the
good old days. When I began my career, the Oracle installers
were just screen painters that forced you to use the TAB key to
navigate back and forth between selections and screens.
Installations used to take hours and
experiencing problem after problem was commonplace. Successfully
installing Oracle became a rite of passage as a DBA. Four hours
after you started the installation (and fighting through errors,
warnings and placing a half dozen CDs in the reader), you would
With each new
release, the installer became easier to use, installation speeds
increased and the number of installation problems decreased.
When our first set of 10G CDs arrived a couple of years ago, the
DBA opened up the package and said "Hey, where's the rest of
them? I think they forgot to send me all of the CDs I need to do
the install." We checked MetaLink and found that Oracle10G only
needs a couple of CDs. One main CD and another called "The
Companion CD" which really should be called "The Companion CD
that is required for all installs" since it pretty much has to
be installed when you install Oracle.
The team here
really likes the fact that the installer now performs
pre-installation requirement checks before laying down the
software. The installer itself now determines if the O/S
environment is configured to correctly run the Oracle software.
Having the installer verify that you have performed "your
pre-installation" duties is very beneficial.
10G Data Pump
I'm a big fan
of 10G Data Pump. Once you become accustomed to the new
environment, it's a pretty good utility. There is a learning
curve - like the first time you try to restart a Data Pump job
by just rerunning the script again. You'll quickly find out that
Data Pump has a command for that. At least it provides you with
the "Master table exists" error message to point you to your
Here's a quick list
of some of the features I like:
The utility IS faster
than Export and Import. Maybe not as much faster as Oracle says
it is - but it is faster. I have personally seen Exports and
Imports run for hours - and days.
I like being able to
use parallelism to improve performance.
You can stop and
restart jobs. The master table knows where you left off so you
don't have to spend all of that time trying to code a new Import
statement that won't duplicate rows in tables that were
successfully loaded. This is really helpful.
Data Pump provides an
option that estimates the output dump file size that would be
created by a Data Pump Export.
What I believe is one
of the best features is the network transfer option that allows
administrators to attach to any source database that can be
accessed from the network, transfer the data and write it to the
target database. No dumpfile required! Administrators use the
NETWORK_LINK parameter to specify a pre-created database link
that points to the source database.
You can use the Data
Pump Flashback feature to go back in time and export data how it
looked in the past. This helps when you get a visit from one of
your developers stating "I think I might have updated 47
production tables by mistake, but I won't know until I see the
data." Use the flashback feature during the Data Pump Export and
use the Data Pump Import utility to pump the data into a new
schema for the developer to review.
You can use the
EXCLUDE parameter to exclude specific objects using custom
syntax. For example, EXCLUDE=INDEX:"LIKE 'DEPT%'" would exclude
indexes that start with the name "DEPT".
provides early warning mechanisms to alert administrators of
possible error conditions. The database itself collects numerous
metrics that were previously collected by 9i's Oracle Enterprise
Manager. Administrators are able to select from dozens of
server-generated alerts. Server generated alerts are activated
by a new background process called MMON. MMON is able to access
the SGA directly and perform the metrics calculations and
10G Grid Control
enhances these capabilities by providing administrators with a
GUI interface to administer alerts and configure notification
mechanisms. Administrators are able to use Grid Control or the
standalone version, Database Control to set up e-mail and pager
notifications. In addition, all server-generated alerts are
displayed on the Database Control/Grid Control home pages.
I'm a huge fan of 10G Grid Control. Although
the database alerts can be set up in the database using the
archaic command line interface, if I can do it using Grid
Control with a few clicks of the mouse, that's the tool I will
Setting up 10G's
"early warning system" places you in the proactive DBA category
as opposed to reactive. The term we us to describe a pure
reactive DBA is "firefighter". That's the DBA or DBA team that
runs from one fire to the next. I will acknowledge that we are
ALL firefighters from time to time.
During my career as
an Oracle instructor, one of the most common recommendations I
used to provide to my Oracle students was the benefits of
database monitoring. My catch phrase was "We monitor by day so
we don't get called at night." By the end of the DBA I class,
all I would have to say is "We monitor by day…" and the class
would respond accordingly. I would then award them with a set of
scripts that allowed them to do database connect checks and
track datafile free space.
10G Grid Control
does all that (and more) for you automatically. The set of
checks range the spectrum, from agent unable to connect to
target (that means either the database, server or agent broke),
to tablespace freespace and alert log errors. As I stated
previously, 10G provides dozens of alert choices and is your
one-stop-shop for proactive database monitoring.