Usually RedHat Linux has automount, which mounts the CD after the CD-ROM door is closed, but in case this has to be done manually, here it is briefly.
Invoke a terminal window and become superuser. Leave the terminal open during the course of the installation. It will become handy in time.
Place the first CD in your CD-ROM device. Check if you have a directory to mount the CDs in. Usually it should be /mnt/cdrom, but if this is not your favorite, just name it as you wish. Now execute the following command (assuming that the mount directory is /mnt/cdrom):
mount /dev/cdrom /mnt/cdrom
This will mount your CD onto the /mnt/cdrom directory. This will be your source installation directory.
During the installation, Oracle Universal Installer will ask for a CD change, so if the CD can't be unmounted automatically, go to your root terminal and do the following:
cd /mnt
eject
This will unmount the CD and open your CD-ROM. Now place the next CD and close the CD-ROM. Use the mount command again if the CD is not mounted automatically and switch to your installation screen to continue with the process.
After mounting the first disk, invoke a new terminal window and change directory to /mnt/cdrom. This is your installation mount point. From here run:
./runInstaller &
Additionally the file index.html from the same directory can be opened in a browser and from there you can read and follow Oracle documentation during the installation procedure.
Oracle Universal Installer 2.2 has a simple and intuitive interface. You may choose to skip this section of the Installation item and follow your instincts, which might be a very good decision. The screens are self-explanatory and very nicely ordered in a good, logical queue.
In case you want to verify where you are in the installation, just compare your process with the following descriptions of screens and steps.
>From the welcome screen you may select to install or uninstall products. If this is the first installation, click Next to continue.
A new dialog window (Inventory Location) appears. It prompts you for an inventory directory for the installation(s) now and in the future. Click OK if you agree, otherwise enter the desired inventory directory.
This screen asks for your Oracle Installation Group, which by default is ointsall. If you wish to change this name or use another (special) group for further installation, now is the time to tweak the groups. Otherwise enter ointsall and click Next. A dialog appears, showing that you have to use your root terminal (remember when we opened it before). Go to the root terminal and follow the instructions on the screen, which are simply to execute the script in /tmp/ called orainstRoot.sh
If successfully run, you should see on the screen:
Creating Oracle Inventory pointer file (/etc/oraInst.loc)
Changing groupname of /u01/app/oracle/oraInventory to oinstall.
Now switch back to the dialog and click Continue.
This screen shows the source and destination file locations for the installation process. If your environment variables are okay you should not change anything, but if you wish to do so, do it carefully and know what you are doing! You can simply click Next.
What follows is a long reading of the disk and a progress bar on the top right of this screen. Just be patient.
This screen shows the available products in this installation set. Since we are installing only the database, the first option (which is the default) is the one that is interesting to us. It actually includes some of the products listed in the next sections. Click Next.
Since our example shows Standard Edition Installation, click Standard Edition. You may select Enterprise, but the path from this point on might be different and you might need to select other options. Anyway, it is the choice of the person who is installing.
Click Next. Another pause (not long) and then you will go to the next step.
This screen allows the operator to select what purpose the database will serve, so that the installation will be able to adjust parameters accordingly. I've chosen General Purpose and clicked Next. There is another wait period (short also).
Here the operator is prompted to enter a global database name. The text on this screen is quite explanatory. For our example I entered:
ORTD.zeus
since my database server's hostname is zeus. Use your hostname in its place and click Next.
This screen prompts you to enter the location where the physical database files will be situated. It also recommends you put the data files on a separate disk (directory). That's why I entered:
/u02/oradata
instead of the default value. Click Next when done.
This screen allows you to choose different character sets for your database. I have left it as it is: Use the Default Character Set. Click Next.
If you see this screen, your preparation for the installation process with the OUI is done. Now you may browse the contents of the installation tree and see what you have chosen. This might make you go back and fix stuff, if you don't agree with the list. Otherwise click Install, and the installation process will start.
This is a very long-lasting, boring screen, which requires CD changing from time to time. It displays a progress bar and counts the percentage to display the overall progress by items.
The installation process is very long. First the software components are installed and then everything is linked.
Just find something to kill some time with and from time to time peek at the screen to see if the CD needs changing.
IMPORTANT! In my case (I did the installation twice) there was an Error screen around 79% in the linkage process. The error dialog showed the following information:
Error in invoking target install of makefile
/u01/app/oracle/product/9.2.0.1.0/ctx/lib/ins_ctx.mk
I clicked Ignore and in both installations it seemed there was no problem to finish the linkage.
A dialog is popped up when the linkage is finished. It prompts for some terminal commands that have to be executed before the installation process completes. Basically, there is a script called root.sh in the $ORACLE_HOME directory, which should be executed as root, from your root terminal. The execution itself takes some time and a lot of HDD activity, so be patient and don't worry.
The configuration tools screen tries to execute 3 tasks and reports failures for all of them. Here is how I solved the problem. In the $ORACLE_HOME directory there is a link, named JRE, which links to the Oracle JRE directory. Delete this link and create one to your own JRE distribution, which was described earlier. Here is the list of commands:
rm -f JRE
ln -s /usr/local/jre/ JRE
After executing these commands, try selecting one by one the items in the Tool Name column of the table and clicking Retry. If this does not work, don't worry. These are optional in the installation session and you can do them later.
If the last (optional) tasks do not execute, I have a special set of instructions on how to do at least two of them. But first, I want to stress on having Oracle documentation handy, and that you try to read between the lines sometimes when you troubleshoot your installation. If the conditions are right, you should not get any serious errors in your session, but in case you get one, check all the initial conditions, file and directory permission,s and disk space.
You can easily delete everything and start from scratch if you just purge the contents of the Oracle mount point directories (/u01, /u02, etc.), and delete the file oratab in the /etc directory. There is one more set of files you may need to delete so that there is no trace of Oracle on your system. They are in the /usr/local/bin directory and the names are oraenv, coraenv and dbhome. However you may leave them there and on your next installation the installer will ask you if you want to keep them.
Now the optional tasks:
To run this, go to the $ORACLE_HOME/bin directory and from there just execute:
./netca &
This application will setup one of four tasks. Listener is what you really want to set. The others are not as important, but try setting them as well. Before setting the listener, you might have a listener already running. Check this by executing the following command:
ps afx | grep LISTEN | grep -v grep
If you get a line similar to:
15922 ? S 0:00 /u01/app/oracle/product/9.2.0.1.0/bin/tnslsnr LISTENER
you've got a listener running. Stop the listener with the following command from the $ORACLE_HOME/bin directory:
./lsnrctl stop
You might need to also delete the existing listener and create a new one. This depends on you completely. Just follow the natural flow of the application. At the final round the new listener will be started if created a new one of course.
To run this, go to $ORACLE_HOME/bin and execute:
./dbca &
This application is probably the most important in the set. It helps you create and configure your database. If a database was not created during the installation session or a restart of the applications, as mentioned before, this is the one you would want to run to create your database.
While you have not used the database yet, you might want to delete and recreate it. You may do it from here. This document can not include all the functionality of the application, but since it is a GUI, it is fairly easy to perform tasks with it.
Personally I prefer to create it from here, so that I have control of all the parameters needed, especially the directories where the data files will be created. Choose Typical when prompted for the database parameters. The next screen, with the tree-like structure allows you to set the location of your database files. Instead of {ORACLE_BASE}, you can put /u02 for example. This will put the database files to be used in your /u02/oradata/SID directory. This is just an example. It is up to you to decide how to spread your database(s) directory tree.
At the end of the database creation you will be prompted for passwords for the users SYS and SYSTEM. Enter them (with confirmations), remember them, and exit (this works as OK if you haven't guessed it already). That should be it. Now execute:
ps afx
and the screen should contain lines similar to the following:
PID TTY STAT TIME COMMAND 1 ? S 0:04 init 2 ? SW 0:01 [keventd] ..... Lots of other lines we are not interested in... 11665 ? S 0:00 ora_pmon_ORTD 11667 ? S 0:00 ora_dbw0_ORTD 11671 ? S 0:00 ora_lgwr_ORTD 11673 ? S 0:00 ora_ckpt_ORTD 11675 ? S 0:00 ora_smon_ORTD 11677 ? S 0:00 ora_reco_ORTD 11679 ? S 0:00 ora_cjq0_ORTD 11681 ? S 0:02 ora_qmn0_ORTD 11683 ? S 0:00 ora_s000_ORTD 11685 ? S 0:00 ora_d000_ORTD 11812 pts/1 S 0:00 /u01/app/oracle/product/9.2.0.1.0/bin/tnslsnr LISTENER -inherit
If you see this picture, this is your database instance running. The last line in the above example is the listener (it might be somewhere else on your screen).
Congratulations! You've successfully finished your installation!
The following is an update, courtesy of Rene Bauer. You may encounter problems with the following items:
The JRE compatibility problem was not reported only by Rene, but I've got few more emails about it. The problem exists because RedHat 8 and 9 come with gcc version 3.2.x, but some older versions of JRE are compiled with gcc 2.9.x. The solution is to download the latest JRE version. At the time of this update the version is 1.4.1, and since there is no jre executable, run the following command to create the proper sym link:
ln -s $JRE_DIR/bin/java $JRE_DIR/bin/jre
where $JRE_BIN is your jre bin directory.
The second update is in regard to a missing configuration file after database creation. The file init{ORACLE_SID}.ora should be created by default in your $ORACLE_HOME/dbs/ directory.
Rene's solution is: The installer creates a file called spfile{ORACLE_SID}.ora, so a sym link can be created to mimic the missing file. Change your working directory to be $ORACLE_HOME/dbs/ and execute:
ln -s spfile{ORACLE_SID}.ora init{ORACLE_SID}.ora
My solution:
There is always a file after the installation with database creation
called init.ora
. I simply copied this file to
init{ORACLE_SID}.ora. Change your working directory to be $ORACLE_HOME/dbs/
and execute:
cp init.ora initORTD.ora
The third problem is in regard to Oracle's installation process,
installing Legato Single Server Version. I did not have this sort of
problem, but here is Rene's version, which I'll try to make as short as
possible: The last root.sh
file, executed on Oracle
installation's request had caused an error while attempting to install LSSV.
According to Rene, RedHat 8 and 9 come with ncurses5, but by default
the ncurses4 compatibility package is not installed, so after it is
installed, the LSSV installation problem disappears.
These may be not the last problems to be solved, so I encourage any comments and additions, which I can add to the Troubleshooting section. I'd appreciate any feedback, which can improve quality of this document.