When you reach step four, you will have an
option to enable or not enable the Oracle Enterprise Manager (OEM).
Since I work for Quest Software and most often need to demo our
tools and usually not Oracles, I can forgo installing OEM. That
saves both disk space for the extra data dictionary and SYSAUX
tablespace allocations. Plus, it installs less Linux background
processes to support that database. This second savings is what I
find to be worthwhile if you dont need OEM.
When you reach step six, you will have three
options for the storage mechanism for your Oracle database files:
file system, ASM, or raw devices. As was pointed out in Chapter 4,
you can shave off some performance on the I/Os via either ASM or RAW
devices. But both options add additional levels of complexities as
well (e.g. ASM means you have two instances running). So I generally
recommend the file system option for simplicity and overall ease of
space management.
On step eight shown in Figure 21 (next page),
you will have two key options to decide upon: flash recovery and
archiving. While these probably make good sense in production and/or
test systems, for development or demo databases you probably can do
without these overheads. So for my laptop/notebook demo setup, I say
no to each.
Figure 21:
Recovery Configuration Screen
When you reach nine (Figure 22), you now run
into some very important options that can greatly reduce the data
dictionary size, significantly reduce SYSTEM and SYSAUX tablespace
needs, plus radically reduce the time it takes to actually run the
script to create the database -sometimes by a factor of two or more.
Not to mention that the resulting database will require less
overhead for background processes and significantly less I/O with
archiving turned off. Again, for demos this is typically not a
problem or bad choice. But you will have to decide based upon your
specific needs. For most simplistic demo purposes, you probably can
disable all these options as well as the Standard Database
Components for Oracle JVM, Oracle XML DB, Oracle Multi-Media and
Oracle Application Express. While DBCA will warn you that XML DB is
generally necessary for other pre-installed packages, I have found
that I can quite reliably disable this choice with no ill effects.
As before, you need to decide yourself what to keep or not.
Figure 22:
Step 9 in Database Configuration Assistant
Youll next arrive at step ten (shown in Figure
23), a step where you are probably very accustomed to making some
changes. I have three recommendations here. First, do not allocate
more than 40% of your memory to Oracle (remember, you are doing a
minimal install to get 11g running on a single CPU system with just
1 GB of memory). Second, on the sizing tab, choose a block size of
4K and no more than 300 processes. And third, open the All
Initialization Parameters window and choose the option for Show
Advanced Parameters making sure to visit and set values such as:
-
auditing_trail = NONE
-
cursor_sharing = SIMILAR
-
cursor_space_for_time = TRUE
-
db_file_multiblock_read_count = 2
-
filesystemio_options = SETALL
-
job_queue_processes = 20
-
max_dump_file_size = 10M
-
xml_db_events = DISABLE
Figure 23:
Recommended Settings for Initialization Parameters
That leaves just one key step to complete the
database creation process: defining all the sizes and database
storage parameters for the default tablespaces created. This is the
one key step you will not see if you choose anything other than a
custom database creation. And there are many parameters here worth
settings, as the table below details:
Table 1: Default
Tablespace Sizes and Database Storage Parameters
Tablespace |
Big File |
Allocation |
Logging |
Size |
Auto Extend |
SYSAUX |
YES |
Uniform 1M |
NO |
200M |
20M |
SYSTEM |
YES |
Uniform 1M |
NO |
300M |
20M |
TEMP |
YES |
Uniform 1M |
|
200M |
20M |
UNDOTBS1 |
YES |
|
|
200M |
10M |
USERS |
YES |
Uniform 1M |
NO |
200M |
10M |
Note that setting all the above requires
visiting each tablespace and data file in the tree and selecting
both the general and storage tab for each. Take your time here
because much of the above cannot easily be changed once the database
has been created.
DB Auto-Start
Naturally, you will want to make it so that your
virtual machine running the Linux client operating system and your
Oracle database always auto-starts to keep the demo process easy.
That requires just three easy steps shown below (note that for RAC
setups this script will become a lot more complex).
1.
Create auto start script /etc/init.d directory/dbstart_auto.sh
ORACLE_HOME=/home/oracle/product/10.2.0/db
export ORACLE_HOME
su - oracle -c "$ORACLE_HOME/bin/lsnrctl
start" > /dev/null
su - oracle -c "$ORACLE_HOME/bin/dbstart"
> /dev/null
2.
Create auto stop script /etc/init.d directory/dbshut_auto.sh
ORACLE_HOME=/home/oracle/product/10.2.0/db
export ORACLE_HOME
su - oracle -c "$ORACLE_HOME/bin/lsnrctl
stop" > /dev/null
su - oracle -c "$ORACLE_HOME/bin/dbshut"
> /dev/null
3.
Then execute the following commands to set it all up
ln -sf /etc/init.d/dbshut_auto.sh
/etc/rc0.d/K10dbshut
ln -sf /etc/init.d/dbshut_auto.sh
/etc/rc6.d/K10dbshut
ln -sf /etc/init.d/dbstart_auto.sh
/etc/rc2.d/S99dbstart
ln -sf /etc/init.d/dbstart_auto.sh
/etc/rc5.d/S99dbstart
Conclusion
In this chapter, we created an ideal minimal
Oracle installation and database creation for the purpose of basic
demos on hardware with limited capabilities (e.g. laptops and
notebooks). While the process itself was not that hard, many of the
steps are recommendations for items to turn off or reduce from their
defaults and which are often very easily missed in the haste to
simply press next repeatedly to complete the installation and
database creation as quickly as possible.
This is an excerpt from
Oracle on VMWare:
Expert tips for database virtualization
by Rampant TechPress.