The following procedure is a step-by-step guide (Cookbook) with tips and information for installing Oracle Database 10g on Red Hat Linux.
This guide shows how I installed 10g Database on the following Red Hat systems:
These instructions will also work for Red Hat Enterprise Linux ES 2.1, 3, and 4.
Oracle Database 10g on other Linux Distributions
People recommended this installation guide for:
WhiteBox Linux 3
Validation/Certification
For Validations/Certifications, go to Oracle's Certification Matrices.
Table of Contents:
* Downloading Oracle10g Software and Burning Oracle10g CDs
* Checking Memory and Swap Space
* Checking /tmp Space
* Checking Software Packages (RPMs)
* Checking Kernel Parameters
* Sizing Disk Space for Oracle10g
* Creating Oracle User Accounts
* Setting Shell Limits for the Oracle User
* Creating Oracle Directories
Optimal Flexible Architecture (OFA) for 10g (10.1.0.2)
* Setting Oracle Environments
* Installing Oracle10g
Installing Oracle10g on a Remote Linux Server
Starting Oracle Universal Installer
Using Oracle Universal Installer
Updates after Running Oracle Universal Installer
* Oracle Post-installation Tasks
Startup and Shutdown of the Oracle10g Database
Shutdown of other Oracle 10g Background Processes
* Tips and Hints for Oracle10g on Linux
* Oracle10g/Linux Errors and Problems
* References
http://otn.oracle.com/software/products/database/oracle10g/index.html
NOTE: To install a Oracle Database 10g (without RAC) you only need to download the database file ship.db.lnx32.cpio.gz, or 10201_database_linux_x86_64.cpio etc.
Compute a cyclic redundancy check (CRC) checksum for the downloaded files and compare the checksum numbers against the numbers posted on OTN's website. For example:
Note that 10g R2 won't fit on a single CD since it has over 780MB.
For test sake I tried to install an Oracle Database 10g (Type: General Purpose Database) on a little PC with 256MB of RAM and 1 GB of swap space. I was able to get a 10g database up and running on this little PC without a problem.
To check the size of physical memory, execute:
You also can add temporary swap space to your system by creating a temporary swap file instead of using a raw device. Here is the procedure:
To check the space in /tmp, run:
Before you install an Oracle Database 10g you need to check the system for required RPMs. On my systems I usually install a minimum list of RPMs which usually requires the installation of additional packages for Oracle databases. Always ensure to use the latest RPMs and kernels!
For 10g R2 (64-bit) on RHEL 4 x86_64, the document Oracle Database Installation Guide 10g Release 2 (10.2) for Linux x86-64 lists the following required package versions or higher:
To check if you are running the x86_64 kernel on a x86_64 platform, run:
For 10g R2 (32-bit) on RHEL 4 x86, the document Oracle Database Release Notes 10g Release 2 (10.2) for Linux x86 lists the following required package versions or higher:
To check the RPMs, run:
For 10g R2 (32-bit) on RHEL 3 x86, the document Oracle Database Installation Guide 10g Release 2 (10.2) for Linux x86 lists the following required package versions or higher:
To check the RPMs, run:
For 10g R1 (64-bit) on RHEL 3 x86_64, the document Oracle Database Installation Guide 10g Release 1 (10.1.0.3) for Linux x86-64 lists the following required package versions or higher:
For 10g R1 (32-bit) on RHEL 3 x86, the document Oracle Database Installation Guide 10g Release 1 (10.1) for UNIX Systems lists the following required package versions or higher:
For 10g R1 (32-bit) on RHEL 2.1, the document Oracle Database Installation Guide 10g Release 1 (10.1) for UNIX Systems lists the following required package versions or higher:
The installation of an Oracle 10g Database worked fine without installing any compatibility RPMs (e.g. compat-gcc, compat-libstdc++). However, since it's listed as a requirement for RHEL 3 I'd recommend to install it on RHEL3 and on newer releases as well. It's not a requirement for RHEL 2.1 though.
For RHEL 3 and RHEL 2.1 it is also important to have binutils-2.11.90.0.8-12 or a newer version installed. Make sure you have the binutils RPM installed on other releases as well like Fedora Core:
Installing the RPMs
10g R2 on RHEL AS 4 (x86_64)
On my RHEL AS 4 x86_64 system I installed the following RPMs and dependencies:
For a detailed list of error messages, see Oracle10g/Linux Errors and Problems.
I don't know why the control-center RPM and the xscreensaver RPM are listed as requirements. On my system I did not install these RPMs since I'm against installing desktop stuff on servers, see list below. When I installed 10g R2 I did not experience any problems when these RPMs were missing. But just for completeness I've listed all the RPMs you may have to install if you want to install the control-center and xscreensaver RPMs unless you ignore dependencies:
10g R2 on RHEL AS 4 (x86)
On my RHEL AS 4 x86 system I had to install the following RPMs and dependencies to meet the software requirements:
10g R1 on RHEL AS 4 (x86_64)
NOTE: No certification has been projected for 10g R1 64-bit on RHEL AS 4 (x86_64) at the time of this writing.
On my RHEL AS 4 x86_64 system I installed the following RPMs and dependencies:
For more information, see Oracle10g/Linux Errors and Problems.
10g R1 on RHEL AS 4 (x86)
On my RHEL AS 4 x86 system I had to install the following RPMs and dependencies to meet the software requirements:
The redhat-release RPM should already be installed by default. But note that 10.1.0.3.0 OUI does not recognize RHEL AS 4 as a supported release yet. This means you will have to edit the /etc/redhat-release file, see below, or you apply the 4153257 patch for 10g R1 on RHEL 4. 10g R2 does recognise RHEL AS 4 as a supported platform.
10g R1 and R2 on RHEL AS 3 (x86)
On my RHEL AS 3 x86 system I had to install the following RPMs and dependencies to meet the software requirements:
10g R1 on RHEL AS 3 (x86_64)
On my RHEL AS 3 x86_64 system I had to install the following RPMs and dependencies to meet the software requirements:
Note, if you don't install the i386 XFree86-libs RPM, you will get an error message similar to this one:
10g R1 on RHEL AS 2.1 (x86)
On my RHEL AS 2.1 x86 system I had to install the following RPMs and dependencies to meet the software requirements:
There is no setarch RPM for RHEL AS 2.1.
Also, it's important to install a newer kernel version for RHEL AS 2.1. Definitely don't use a kernel older than 2.4.9-e.25. To check the kernel version run uname -r. For more information on upgrading the kernel, see Upgrading the Linux Kernel.
10g R2 on Fedora Core 4 (x86)
On my FC4 system I had to install the following RPMs and dependencies to meet the software requirements:
10g R1 on Fedora Core 3 (x86)
On my FC3 system I had to install the following RPMs and dependencies to meet the software requirements:
10g R1 on Fedora Core 1 (x86)
On my FC1 system I had to install the following RPMs and dependencies to meet the software requirements:
10g R1 on Red Hat 9 (x86)
On my RH9 system I had to install the following RPMs and dependencies to meet the software requirements:
Checking/Updating the redhat-release File
Verify that the redhat-release RPM is installed on your Red Hat system:
I do not recommend to execute "runInstaller -ignoreSysPrereqs" since this will disable other checks you probably don't want to.
On RHEL AS 4 (for 10g R1), RH9, and FC 1 you have to change the /etc/redhat-release file to make Oracle 10g believe it's running on a supported release.
Regarding RHEL AS 4, the installer for 10g 10.1.0.3 does not recognize RHEL AS 4 as a supported release but 10g R2 OUI does.
To change the /etc/redhat-release file, you can simply copy/paste the following commands:
For Oracle10g, the following kernel parameters have to be set to values greater than or equal to the recommended values which can be changed in the proc filesystem:
On RHEL AS 4 x86, RHEL AS 3 U5 x86, RHEL AS 3 U5 x86_64, RHEL AS 2.1, RH9, FC1, FC3, and FC4 I had to increase the kernel parameters shmmax, semopm, and filemax to meet the minimum requirement. On RHEL AS 4 x86_64 I had to increase shmmax and semopm.
Oracle also recommends to set the local port range ip_local_port_range for outgoing messages to "1024 65000" which is needed for high-usage systems. This kernel parameter defines the local port range for TCP and UDP traffic to choose from.
I added the following lines to the /etc/sysctl.conf file which is used during the boot process:
For more information on shmmax, shmmni, shmmin, shmseg, and shmall, see Setting Shared Memory.
For more information on semmsl, semmni, semmns, and semopm, see Setting Semaphores.
For more information on filemax, see Setting File Handles.
When I did an Oracle 10g Release 1 (10.1.0.3.0) "General Purpose Database" installation (not including any software from the Oracle Database 10g Companion CD), the Oracle software used about 1.3 GB of disk space, and the preconfigured "General Purpose Database" (datafiles, etc.) used about 710 MB of disk space.
So if you install Oracle10g Enterprise Edition and additional software from the Oracle Database 10g Companion CD, then you need about 2.5 GB of disk for the Oracle software. And if you also want to add a preconfigured database on the same filesystem, make sure to add another 1 GB of disk space.
NOTE: If you don't put Oracle10g on a separate filesystems, then make sure the root filesystem "/" has enough disk space. You can check the free space of the root filesystem with the following command:
If you just install a small test database, then you might be ok with the current settings (note that the limits very often vary). But for (larger) production databases, you should increase the following shell limits to the following values recommended by Oracle:
To see all shell limits, execute:
For more information on nofile and how to increase the limit, see Setting Limits for the Maximum Number of Open File Descriptors for the Oracle User. Even though this procedure was written for Oracle9i on RHAS 2.1, it also applies to Oracle10g on RHEL AS 2.1, RHEL AS 3, and other versions.
For more information on nproc and how to increase the limit, see Setting Limits for the Maximum Number of Processes for the Oracle User. Even though this procedure was written for Oracle9i on RHAS 2.1, it also applies to Oracle10g on RHEL AS 2.1, RHEL AS 3, and other versions.
Optimal Flexible Architecture (OFA) for 10g R1 (10.1.0.2)
The OFA standard is a guideline created by Oracle to ensure reliable Oracle installations. For Oracle 10g Database, the OFA recommended Oracle home path has changed.
The home path for the first 10g (10.1.0) database installation on a system would be:
Execute the following commands for the Bash shell which is the default shell on Red Hat Linux (to verify your shell run: echo $SHELL):
Also, the environment variables ORACLE_HOME and TNS_ADMIN should not be set. If you've already set these environment variables, you can unset them by running the following commands:
To have these environment variables set automatically each time you login as oracle, you can add these environment variables to the ~oracle/.bash_profile file which is the user startup file for the Bash shell on Red Hat Linux. To do this you could simply copy/paste the following commands to make these settings permanent for your oracle's Bash shell:
If you don't install Oracle on your local system but on a remote server, then you need to relink X to your local desktop. The easiest way to do this is to use the "X11 forwarding" feature of ssh. This means that you don't have to run xhost and set the DISPLAY environment variable.
Here is an example how to make use of the "X11 forward" feature of ssh. Simply run the following command from your local desktop:
Starting Oracle Universal Installer
Insert the Oracle CD that contains the image of the downloaded file ship.db.lnx32.cpio, or change to the directory that contains the image directory Disk1.
If you install Oracle10g from a CD, mount the CD by running the following commands in another terminal:
Using Oracle Universal Installer (OUI)
The following example shows how to install x86 Oracle 10g Release 1 Database Software and a "General Purpose" database:
(Note, the screens and questions will look different if you install 10g R2 or 64-bit 10g R1 database)
Updates after Running Oracle Universal Installer
After Oracle10g has been installed, make sure that ORACLE_HOME, PATH, and LD_LIBRARY_PATH are set for the oracle account.
Note that the path for ORACLE_HOME might be different on your system!
Also note that LD_LIBRARY_PATH is needed for some Oracle binaries such as sysresv!
For 10g R1 (10.1.0.3) I added the following lines to the ~oracle/.bash_profile file:
NOTE: Do not add a trailing "/" on the ORACLE_HOME environment variable. Otherwise you will get the error "ORACLE not available" when you try to connect to sys, see Oracle10g/Linux Errors and Problems for more information.
Startup and Shutdown of the Oracle10g Database
To startup the database:
- sysoper privileges WITH ADMIN OPTION
- create database
- recover database until
Shutdown of other Oracle 10g Background Processes
If you installed a preconfigured database using OUI, then several Oracle background processes are now running on your server. Execute the following command to see the background processes:
iSQL*Plus
Database Management Processes
Oracle Net Listener
Cluster Synchronization Services (CSS)
To reinstall Oracle10g after a failed installation attempt, you might want to execute the following commands.
Note that most of the issues are due to not following correctly the installation procedure. And some errors are due to not using an Oracle supported Linux OS.
The Installation log file can be found in $ORACLE_BASE/oraInventory/logs.
The Database Creation log file can be found in $ORACLE_BASE/admin/$ORACLE_SID/create.
$ sysresv -i
sysresv: error while loading shared libraries: libclntsh.so.10.1: cannot open shared object file: No such file or directory
Recovery Manager rman hangs
$ ./runInstaller
...
Exception java.lang.UnsatisfiedLinkError: /tmp/OraInstall2005-06-15_07-36-25AM/jre/1.4.2/lib/i386/libawt.so:
libXp.so.6: cannot open shared object file: No such file or directory occurred..
java.lang.UnsatisfiedLinkError: /tmp/OraInstall2005-06-15_07-36-25AM/jre/1.4.2/lib/i386/libawt.so:
libXp.so.6: cannot open shared object file: No such file or directory
at java.lang.ClassLoader$NativeLibrary.load(Native Method)
at java.lang.ClassLoader.loadLibrary0(ClassLoader.java:1560)
at java.lang.ClassLoader.loadLibrary(ClassLoader.java:1477)
...
make -f /u01/app/oracle/OraHome_1/sysman/lib/ins_sysman.mk relink_sharedobj SHAREDOBJ=libnmemso
make[1]: Entering directory `/u01/app/oracle/OraHome_1/sysman/lib'
gcc -o /u01/app/oracle/OraHome_1/sysman/lib/libnmemso.so -m32 ...
...
/usr/bin/ld: crti.o: No such file: No such file or directory
collect2: ld returned 1 exit status
make[1]: *** [/u01/app/oracle/OraHome_1/sysman/lib/libnmemso.so] Error 1
make -f /u01/app/oracle/OraHome_1/sysman/lib/ins_sysman.mk relink_sharedobj SHAREDOBJ=libnmemso
make[1]: Entering directory `/u01/app/oracle/OraHome_1/sysman/lib'
gcc -o /u01/app/oracle/OraHome_1/sysman/lib/libnmemso.so -m32 ...
...
/usr/bin/ld: cannot find -lgcc_s_32
collect2: ld returned 1 exit status
make[1]: Leaving directory `/u01/app/oracle/OraHome_1/sysman/lib'
make[1]: *** [/u01/app/oracle/OraHome_1/sysman/lib/libnmemso.so] Error 1
error while loading shared libraries: libaio.so.1: cannot open shared object file: No such file or directory
$ ./runInstaller
...
Exception in thread "main" java.lang.UnsatisfiedLinkError: /tmp/OraInstall2005-07-24_09-03-19AM/jre/1.4.2/lib/i386/libawt.so:
/tmp/OraInstall2005-07-24_09-03-19AM/jre/1.4.2/lib/i386/libawt.so: cannot restore segment prot after reloc: Permission denied
at java.lang.ClassLoader$NativeLibrary.load(Native Method)
at java.lang.ClassLoader.loadLibrary0(Unknown Source)
at java.lang.ClassLoader.loadLibrary(Unknown Source)
...
You could also disable SELinux which I DO NOT recommend:
Error in invoking target 'all_no_orcl' of makefile '/u01/app/oracle/oracle/product/10.2.0/db_1/rdbms/lib/ins_rdbms.mk'.
See '/u01/app/oracle/oraInventory/logs/installActions2005-11-13_01-07-04AM.log' for details.
Error in invoking target 'all_no_orcl ihsodbc' of makefile '/u01/app/oracle/oracle/product/10.2.0/db_1/rdbms/lib/ins_rdbms.mk'.
See '/u01/app/oracle/oraInventory/logs/installActions2005-07-24_09-25-22AM.log' for details.
On my RHEL 4 U2 x86 system for 10g R2 (10.2.0.1.0) I installed the following RPM to fix this problem:
Error in invoking target 'all_no_orcl' of makefile '/u01/app/oracle/oracle/product/10.2.0/db_1/rdbms/lib/ins_rdbms.mk'.
See '/u01/app/oracle/oraInventory/logs/installActions2005-11-13_01-25-49AM.log' for details.
ORA-12547: TNS:lost contact
$ lsnrctl start
...
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC)))
TNS-12547: TNS:lost contact
TNS-12560: TNS:protocol adapter error
TNS-00517: Lost contact
Linux Error: 104: Connection reset by peer
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=centauri)(PORT=1521)))
TNS-12547: TNS:lost contact
TNS-12560: TNS:protocol adapter error
TNS-00517: Lost contact
Linux Error: 104: Connection reset by peer
Werner's Oracle Linux Page
This guide shows how I installed 10g Database on the following Red Hat systems:
Oracle Database Version | Red Hat OS Version | Architecture | Comments |
---|---|---|---|
Oracle 10g R2 (10.2.0.1.0) |
Red Hat Enterprise Linux Advanced Server 4 Update 2 (RHEL AS 4 U2) |
x86-64 | See also Oracle Database Installation Guide 10g Release 2 (10.2) for Linux x86-64 |
Oracle 10g R2 (10.2.0.1.0) |
Red Hat Enterprise Linux Advanced Server 4 Update 2 (RHEL AS 4 U2) |
x86 | See also Oracle Database Release Notes 10g Release 2 (10.2) for Linux x86 |
Oracle 10g R2 (10.2.0.1.0) |
Red Hat Enterprise Linux Advanced Server 3 Update 5 (RHEL AS 3 U5) |
x86 | See also Oracle Database Installation Guide 10g Release 2 (10.2) for Linux x86 |
Oracle 10g R1 (10.1.0.3) |
Red Hat Enterprise Linux Advanced Server 4 Update 1 (RHEL AS 4 U1) |
x86-64 | No certification projected for 10g R1 64-bit on RHEL AS 4 x86_64 at the time of this writing |
Oracle 10g R1 (10.1.0.3) |
Red Hat Enterprise Linux Advanced Server 4 (RHEL AS 4) |
x86 | See also Oracle Database Release Notes 10g Release 1 (10.1.0.3.0) for Linux x86 |
Oracle 10g R1 (10.1.0.3) |
Red Hat Enterprise Linux Advanced Server 3 Update 5 (RHEL AS 3 U5) |
x86-64 | See also Oracle Database Installation Guide 10g Release 1 (10.1.0.3) for Linux x86-64 |
Oracle 10g R1 (10.1.0.3) |
Red Hat Enterprise Linux Advanced Server 3 Update 5 (RHEL AS 3 U5) |
x86 | See also Oracle Database Installation Guide 10g Release 1 (10.1) for UNIX Systems |
Oracle 10g R1 (10.1.0.2) |
Red Hat Enterprise Linux Advanced Server 2.1 (RHEL AS 2.1) |
x86 | See also Oracle Database Installation Guide 10g Release 1 (10.1) for UNIX Systems |
Oracle 10g R2 (10.2.0.1.0) |
Red Hat Fedora Core 4 (FC 4) |
x86 | Not supported |
Oracle 10g R1 (10.1.0.3) |
Red Hat Fedora Core 3 (FC 3) |
x86 | Not supported |
Oracle 10g R1 (10.1.0.2) |
Red Hat Fedora Core 3 (FC 3) |
x86 | Not supported |
Oracle 10g R1 (10.1.0.2) |
Red Hat Fedora Core 1 (FC 1) |
x86 | Not supported |
Oracle 10g R1 (10.1.0.2) |
Red Hat 9 (RH 9) |
x86 | Not supported |
These instructions will also work for Red Hat Enterprise Linux ES 2.1, 3, and 4.
Oracle Database 10g on other Linux Distributions
People recommended this installation guide for:
WhiteBox Linux 3
- Works exactly like on RHEL AS 3.
- Some files/packages were not included with Mandrake 10 which can be downloaded from:
ftp://ftp.rediris.es/sites/carroll.cac.psu.edu/mandrake-devel/cooker/i586/Mandrake/RPMS/setarch-1.3-1mdk.i586.rpm
ftp://194.199.20.114/linux/contrib/openmotif/linux-rpm/openmotif-2.1.30-1_ICS.i386.rpm
Validation/Certification
For Validations/Certifications, go to Oracle's Certification Matrices.
Table of Contents:
* Downloading Oracle10g Software and Burning Oracle10g CDs
* Checking Memory and Swap Space
* Checking /tmp Space
* Checking Software Packages (RPMs)
* Checking Kernel Parameters
* Sizing Disk Space for Oracle10g
* Creating Oracle User Accounts
* Setting Shell Limits for the Oracle User
* Creating Oracle Directories
Optimal Flexible Architecture (OFA) for 10g (10.1.0.2)
* Setting Oracle Environments
* Installing Oracle10g
Installing Oracle10g on a Remote Linux Server
Starting Oracle Universal Installer
Using Oracle Universal Installer
Updates after Running Oracle Universal Installer
* Oracle Post-installation Tasks
Startup and Shutdown of the Oracle10g Database
Shutdown of other Oracle 10g Background Processes
* Tips and Hints for Oracle10g on Linux
* Oracle10g/Linux Errors and Problems
* References
Downloading Oracle10g Software and Burning Oracle10g CDs
Download Oracle 10g (32-bit and 64-bit) for Linux from OTN to install linux 10g oracle:http://otn.oracle.com/software/products/database/oracle10g/index.html
NOTE: To install a Oracle Database 10g (without RAC) you only need to download the database file ship.db.lnx32.cpio.gz, or 10201_database_linux_x86_64.cpio etc.
Compute a cyclic redundancy check (CRC) checksum for the downloaded files and compare the checksum numbers against the numbers posted on OTN's website. For example:
cksum ship.db.lnx32.cpio.gzUncompress the downloaded file(s):
gunzip ship.db.lnx32.cpio.gzUnpack ship.db.lnx32.cpio:
$ cpio -idmv < ship.db.lnx32.cpio Disk1/stage/Components/oracle.server/10.1.0.3.0/1 Disk1/stage/Components/oracle.server/10.1.0.3.0 Disk1/stage/Components/oracle.server Disk1/stage/Components/oracle.tg/10.1.0.3.0/1/DataFiles Disk1/stage/Components/oracle.tg/10.1.0.3.0/1 Disk1/stage/Components/oracle.tg/10.1.0.3.0 Disk1/stage/Components/oracle.tg Disk1/stage/Components/oracle.assistants.dbca/10.1.0.3.0/1/DataFiles/doc.3.1.jar Disk1/stage/Components/oracle.assistants.dbca/10.1.0.3.0/1/DataFiles/class.jar ...I executed the following command to burn the Disk1 directory on a CD:
# mkisofs -r Disk1 | cdrecord -v dev=0,0,0 speed=20 -(Drives' speed varies; you can get the dev numbers when you execute cdrecord -scanbus).
Note that 10g R2 won't fit on a single CD since it has over 780MB.
Checking Memory and Swap Space
Oracle says that the system must have at least 512MB of RAM and 1GB of swap space or twice the size of RAM. And for systems with more than 2 GB of RAM, the swap space can be between one and two times the size of RAM. You might also want to check out Sizing Swap Space.For test sake I tried to install an Oracle Database 10g (Type: General Purpose Database) on a little PC with 256MB of RAM and 1 GB of swap space. I was able to get a 10g database up and running on this little PC without a problem.
To check the size of physical memory, execute:
grep MemTotal /proc/meminfoTo check the size of swap space, execute:
grep SwapTotal /proc/meminfo
You also can add temporary swap space to your system by creating a temporary swap file instead of using a raw device. Here is the procedure:
su - root dd if=/dev/zero of=tmpswap bs=1k count=900000 chmod 600 tmpswap mkswap tmpswap swapon tmpswapTo disable the temporary swap space execute the following commands:
su - root swapoff tmpswap rm tmpswap
Checking /tmp Space
According to Oracle's documentation, the Oracle Universal Installer (OUI) requires up to 400 MB of free space in the /tmp directory. But OUI checks if /tmp is only greater than 80 MB.To check the space in /tmp, run:
$ df /tmpIf you do not have enough space in the /tmp filesystem, you can temporarily create a tmp directory in another filesystem. Here is how you can do this:
su - root mkdir /<AnotherFilesystem>/tmp chown root.root /<AnotherFilesystem>/tmp chmod 1777 /<AnotherFilesystem>/tmp export TEMP=/<AnotherFilesystem> # used by Oracle export TMPDIR=/<AnotherFilesystem> # used by Linux programs like the linker "ld"When you are done with the Oracle installation, shutdown Oracle and remove the temporary /tmp directory:
su - root rmdir /<AnotherFilesystem>/tmp unset TEMP unset TMPDIR
Checking Software Packages (RPMs)
GeneralBefore you install an Oracle Database 10g you need to check the system for required RPMs. On my systems I usually install a minimum list of RPMs which usually requires the installation of additional packages for Oracle databases. Always ensure to use the latest RPMs and kernels!
For 10g R2 (64-bit) on RHEL 4 x86_64, the document Oracle Database Installation Guide 10g Release 2 (10.2) for Linux x86-64 lists the following required package versions or higher:
binutils-2.15.92.0.2-10.EL4 compat-db-4.1.25-9 control-center-2.8.0-12 gcc-3.4.3-9.EL4 gcc-c++-3.4.3-9.EL4 glibc-2.3.4-2 glibc-common-2.3.4-2 gnome-libs-1.4.1.2.90-44.1 libstdc++-3.4.3-9.EL4 libstdc++-devel-3.4.3-9.EL4 make-3.80-5 pdksh-5.2.14-30 sysstat-5.0.5-1 xscreensaver-4.18-5.rhel4.2Also ensure to install the libaio-0.3.96 RPM or a newer version! Otherwise the OUI prerequisite check will fail.
To check if you are running the x86_64 kernel on a x86_64 platform, run:
# uname -mi x86_64 x86_64To check the RPMs, run:
rpm -q --qf '%{NAME}-%{VERSION}-%{RELEASE} (%{ARCH})\n' \ binutils compat-db control-center gcc gcc-c++ glibc glibc-common gnome-libs \ libstdc++ libstdc++-devel make pdksh sysstat xscreensaver libaioIt is important to have these x86_64 RPMs installed. The above command will list the architecture of each binary package. You will see that some RPMs are installed twice when you run this command (x86 RPM and x86_64 RPM). You need to ensure that all required x86-64 RPMs listed here are installed.
For 10g R2 (32-bit) on RHEL 4 x86, the document Oracle Database Release Notes 10g Release 2 (10.2) for Linux x86 lists the following required package versions or higher:
binutils-2.15.92.0.2-10.EL4 compat-db-4.1.25-9 control-center-2.8.0-12 gcc-3.4.3-9.EL4 gcc-c++-3.4.3-9.EL4 glibc-2.3.4-2 glibc-common-2.3.4-2 gnome-libs-1.4.1.2.90-44.1 libstdc++-3.4.3-9.EL4 libstdc++-devel-3.4.3-9.EL4 make-3.80-5 pdksh-5.2.14-30 sysstat-5.0.5-1 xscreensaver-4.18-5.rhel4.2Also ensure to install the libaio-0.3.96 RPM or a newer version! Otherwise the OUI prerequisite check will fail.
To check the RPMs, run:
rpm -q binutils compat-db control-center gcc gcc-c++ glibc glibc-common gnome-libs \ libstdc++ libstdc++-devel make pdksh sysstat xscreensaver libaio
For 10g R2 (32-bit) on RHEL 3 x86, the document Oracle Database Installation Guide 10g Release 2 (10.2) for Linux x86 lists the following required package versions or higher:
make-3.79.1 gcc-3.2.3-34 glibc-2.3.2-95.20 compat-db-4.0.14-5 compat-gcc-7.3-2.96.128 compat-gcc-c++-7.3-2.96.128 compat-libstdc++-7.3-2.96.128 compat-libstdc++-devel-7.3-2.96.128 openmotif21-2.1.30-8 setarch-1.3-1Also ensure to install the libaio-0.3.96-5 RPM or a newer version! Otherwise the OUI prerequisite check will fail.
To check the RPMs, run:
rpm -q make gcc glibc compat-db compat-gcc compat-gcc-c++ compat-libstdc++ compat-libstdc++-devel openmotif21 setarch libaio
For 10g R1 (64-bit) on RHEL 3 x86_64, the document Oracle Database Installation Guide 10g Release 1 (10.1.0.3) for Linux x86-64 lists the following required package versions or higher:
make-3.79.1 gcc-3.2.3-34 glibc-2.3.2-95.20 glibc-devel-2.3.2-95.20 glibc-devel-2.3.2-95.20 (32 bit) compat-db-4.0.14-5 compat-gcc-7.3-2.96.128 compat-gcc-c++-7.3-2.96.128 compat-libstdc++-7.3-2.96.128 compat-libstdc++-devel-7.3-2.96.128 gnome-libs-1.4.1.2.90-34.1 (32 bit) openmotif21-2.1.30-8 setarch-1.3-1 libaio-0.3.96-3 libaio-devel-0.3.96-3To check if you are running the x86_64 kernel on a x86_64 platform, run:
# uname -mi x86_64 x86_64To check the RPMs, run:
rpm -q --qf '%{NAME}-%{VERSION}-%{RELEASE} (%{ARCH})\n' \ make gcc glibc glibc-devel compat-db compat-gcc compat-gcc-c++ compat-libstdc++ \ compat-libstdc++-devel gnome-libs openmotif21 setarch libaio libaio-develIt is important to have the right x86 and x86_64 RPMs installed. The above command will list the architecture of each binary package. And as you can see in the above list, glibc-devel and other RPMs are listed twice. This means that you have to install packages for both architectures, x86 and x86_64.
For 10g R1 (32-bit) on RHEL 3 x86, the document Oracle Database Installation Guide 10g Release 1 (10.1) for UNIX Systems lists the following required package versions or higher:
make-3.79.1 gcc-3.2.3-34 glibc-2.3.2-95.20 compat-db-4.0.14-5 compat-gcc-7.3-2.96.128 compat-gcc-c++-7.3-2.96.128 compat-libstdc++-7.3-2.96.128 compat-libstdc++-devel-7.3-2.96.128 openmotif21-2.1.30-8 setarch-1.3-1To check the RPMs, run:
rpm -q make gcc glibc compat-db compat-gcc compat-gcc-c++ compat-libstdc++ compat-libstdc++-devel openmotif21 setarch
For 10g R1 (32-bit) on RHEL 2.1, the document Oracle Database Installation Guide 10g Release 1 (10.1) for UNIX Systems lists the following required package versions or higher:
make-3.79.1 glibc-2.2.4-32 gcc-2.96-128 gcc-c++-2.96-128 libstdc++-2.96-128 openmotif-2.1.30-11To check these RPMs, run:
rpm -q make glibc gcc gcc-c++ libstdc++ openmotif
The installation of an Oracle 10g Database worked fine without installing any compatibility RPMs (e.g. compat-gcc, compat-libstdc++). However, since it's listed as a requirement for RHEL 3 I'd recommend to install it on RHEL3 and on newer releases as well. It's not a requirement for RHEL 2.1 though.
For RHEL 3 and RHEL 2.1 it is also important to have binutils-2.11.90.0.8-12 or a newer version installed. Make sure you have the binutils RPM installed on other releases as well like Fedora Core:
rpm -q binutilsNOTE: OUI for x86 will also complain if the openmotif package is missing (don't confuse it with the openmotif21 package). Also, Red Hat changed the version naming schema from openmotif-2.2.2-16 in the original release to openmotif-2.2.3-5.RHEL3.2 in RHEL3 Update 5. This seems to confuse OUI in RHEL3 U5 since it complaining that it can't find the right openmotif version. I ignored this. The openmotif-2.2.3-5.RHEL3.2 is just a newer version of openmotif-2.2.2-16 which worked fine and I didn't have any problems. To check the RPM, run:
rpm -q openmotifAlso, make sure the redhat-release package is installed. Earlier versions of e.g. RHEL 3 didn't install it by default when you selected a minimum system installation:
rpm -q redhat-releaseThe setarch utility is new in RHEL4, RHEL3 and Fedora Core. It is used to tell the kernel to report a different architecture than the current one. It is also used to emulate a 3GB virtual address space for applications that don't run properly with a larger virtual address space. To check the RPM, run:
rpm -q setarch
Installing the RPMs
10g R2 on RHEL AS 4 (x86_64)
On my RHEL AS 4 x86_64 system I installed the following RPMs and dependencies:
rpm -Uvh gcc-3.4.4-2.x86_64.rpm \ gcc-c++-3.4.4-2.x86_64.rpm \ libstdc++-devel-3.4.4-2.x86_64.rpm \ cpp-3.4.4-2.x86_64.rpm \ glibc-devel-2.3.4-2.13.x86_64.rpm \ glibc-headers-2.3.4-2.13.x86_64.rpm \ glibc-kernheaders-2.4-9.1.98.EL.x86_64.rpm rpm -Uvh gnome-libs-1.4.1.2.90-44.1.x86_64.rpm \ compat-db-4.1.25-9.x86_64.rpm \ ORBit-0.5.17-14.x86_64.rpm \ gtk+-1.2.10-33.x86_64.rpm \ imlib-1.9.13-23.x86_64.rpm \ libpng10-1.0.16-1.x86_64.rpm \ gdk-pixbuf-0.22.0-16.el4.x86_64.rpm \ libungif-4.1.3-1.x86_64.rpm rpm -Uvh sysstat-5.0.5-1.x86_64.rpmNote that you also need to install the following i386 and x86_64 RPMs if not already installed, otherwise you will get various different error messages.
For a detailed list of error messages, see Oracle10g/Linux Errors and Problems.
rpm -Uvh xorg-x11-deprecated-libs-6.8.2-1.EL.13.20.i386.rpm \ xorg-x11-libs-6.8.2-1.EL.13.20.i386.rpm \ xorg-x11-Mesa-libGL-6.8.2-1.EL.13.20.i386.rpm \ expat-1.95.7-4.i386.rpm \ fontconfig-2.2.3-7.i386.rpm \ freetype-2.1.9-1.i386.rpm \ zlib-1.2.1.2-1.2.i386.rpm
rpm -Uvh libaio-0.3.103-3.x86_64.rpm rpm -Uvh compat-libstdc++-33-3.2.3-47.3.x86_64.rpm rpm -Uvh glibc-devel-2.3.4-2.13.i386.rpm \ libgcc-3.4.4-2.i386.rpmIf you haven't installed Update 3 or later, don't forget to install an updated binutils RPM from https://rhn.redhat.com/ or from http://oss.oracle.com/projects/compat-oracle/files/RedHat/:
rpm -Uvh --force binutils-2.15.92.0.2-13.0.0.0.2.x86_64.rpmIf you don't install a newer binutil RPM from Oracle or RHN, then you will get the following error message:
/usr/bin/ld: /u01/app/oracle/oracle/product/10.2.0/db_1/lib//libirc.a(fast_memcpy.o): relocation R_X86_64_PC32 against `_memcpy_mem_ops_method' can not be usedwhen making a shared object; recompile with -fPIC /usr/bin/ld: final link failed: Bad value collect2: ld returned 1 exit statusFor more information on this bug, see Bugzilla Bug 679.
I don't know why the control-center RPM and the xscreensaver RPM are listed as requirements. On my system I did not install these RPMs since I'm against installing desktop stuff on servers, see list below. When I installed 10g R2 I did not experience any problems when these RPMs were missing. But just for completeness I've listed all the RPMs you may have to install if you want to install the control-center and xscreensaver RPMs unless you ignore dependencies:
rpm -Uvh control-center-2.8.0-12.rhel4.2.x86_64.rpm \ xscreensaver-4.18-5.rhel4.9.x86_64.rpm \ eel2-2.8.1-2.x86_64.rpm \ gail-1.8.0-2.x86_64.rpm \ gnome-desktop-2.8.0-5.x86_64.rpm \ gnome-icon-theme-2.8.0-1.el4.1.3.noarch.rpm \ libgail-gnome-1.1.0-1.x86_64.rpm \ libxklavier-1.02-3.x86_64.rpm \ metacity-2.8.6-2.8.x86_64.rpm \ nautilus-2.8.1-4.x86_64.rpm \ startup-notification-0.7-1.x86_64.rpm \ xloadimage-4.1-34.RHEL4.x86_64.rpm \ xorg-x11-Mesa-libGLU-6.8.2-1.EL.13.20.x86_64.rpm \ at-spi-1.6.0-3.x86_64.rpm \ desktop-backgrounds-basic-2.0-26.2.1E.noarch.rpm \ eog-2.8.1-2.x86_64.rpm \ gnome-panel-2.8.1-3.3E.x86_64.rpm \ gnome-vfs2-smb-2.8.2-8.2.x86_64.rpm \ hicolor-icon-theme-0.3-3.noarch.rpm \ libexif-0.5.12-5.1.x86_64.rpm \ librsvg2-2.8.1-1.x86_64.rpm \ nautilus-cd-burner-2.8.3-6.x86_64.rpm \ redhat-artwork-0.120.1-1.2E.x86_64.rpm \ scrollkeeper-0.3.14-3.x86_64.rpm \ cdrecord-2.01.1-5.x86_64.rpm \ docbook-dtds-1.0-25.noarch.rpm \ evolution-data-server-1.0.2-9.x86_64.rpm \ intltool-0.31.2-1.x86_64.rpm \ libcroco-0.6.0-4.x86_64.rpm \ libgnomeprint22-2.8.0-3.x86_64.rpm \ libgnomeprintui22-2.8.0-1.x86_64.rpm \ libgsf-1.10.1-1.x86_64.rpm \ libwnck-2.8.1-1.rhel4.1.x86_64.rpm \ mkisofs-2.01.1-5.x86_64.rpm \ samba-common-3.0.10-1.4E.2.x86_64.rpm \ ghostscript-7.07-33.x86_64.rpm \ ghostscript-fonts-5.50-13.noarch.rpm \ gnutls-1.0.20-3.2.1.x86_64.rpm \ libgnomecups-0.1.12-5.x86_64.rpm \ libsoup-2.2.1-2.x86_64.rpm \ openjade-1.3.2-14.x86_64.rpm \ perl-XML-Parser-2.34-5.x86_64.rpm \ sgml-common-0.6.3-17.noarch.rpm \ urw-fonts-2.2-6.1.noarch.rpm \ xml-common-0.6.3-17.noarch.rpm \ VFlib2-2.25.6-25.x86_64.rpm \ chkfontpath-1.10.0-2.x86_64.rpm \ perl-URI-1.30-4.noarch.rpm \ perl-libwww-perl-5.79-5.noarch.rpm \ xorg-x11-font-utils-6.8.2-1.EL.13.20.x86_64.rpm \ perl-HTML-Parser-3.35-6.x86_64.rpm \ xorg-x11-xfs-6.8.2-1.EL.13.20.x86_64.rpm \ perl-HTML-Tagset-3.03-30.noarch.rpm \ ttmkfdir-3.0.9-14.1.EL.x86_64.rpm
10g R2 on RHEL AS 4 (x86)
On my RHEL AS 4 x86 system I had to install the following RPMs and dependencies to meet the software requirements:
rpm -Uvh gcc-3.4.4-2.i386.rpm \ gcc-c++-3.4.4-2.i386.rpm \ libstdc++-devel-3.4.4-2.i386.rpm \ glibc-devel-2.3.4-2.13.i386.rpm \ glibc-headers-2.3.4-2.13.i386.rpm \ glibc-kernheaders-2.4-9.1.98.EL.i386.rpm rpm -Uvh gnome-libs-1.4.1.2.90-44.1.i386.rpm \ compat-db-4.1.25-9.i386.rpm \ ORBit-0.5.17-14.i386.rpm \ gtk+-1.2.10-33.i386.rpm \ imlib-1.9.13-23.i386.rpm \ libpng10-1.0.16-1.i386.rpm \ gdk-pixbuf-0.22.0-16.el4.i386.rpm \ libungif-4.1.3-1.i386.rpm \ alsa-lib-1.0.6-5.RHEL4.i386.rpm \ audiofile-0.2.6-1.i386.rpm \ esound-0.2.35-2.i386.rpm rpm -Uvh sysstat-5.0.5-1.i386.rpm rpm -Uvh libaio-0.3.103-3.i386.rpm rpm -Uvh xorg-x11-deprecated-libs-6.8.2-1.EL.13.20.i386.rpm rpm -Uvh compat-libstdc++-33-3.2.3-47.3.i386.rpmI don't know why the control-center RPM and the xscreensaver RPM are listed as requirements. On my system I did not install these RPMs since I'm against installing desktop stuff on servers. When I installed 10g R2 I did not experience any problems when these RPMs were missing. When you want to install control-center RPM and the xscreensaver, then have fun. The list can be very long with all the dependencies like gnome-desktop, cdrecord etc..
10g R1 on RHEL AS 4 (x86_64)
NOTE: No certification has been projected for 10g R1 64-bit on RHEL AS 4 (x86_64) at the time of this writing.
On my RHEL AS 4 x86_64 system I installed the following RPMs and dependencies:
rpm -Uvh gcc-3.4.3-22.1.x86_64.rpm \ cpp-3.4.3-22.1.x86_64.rpm \ glibc-devel-2.3.4-2.9.x86_64.rpm \ glibc-headers-2.3.4-2.9.x86_64.rpm \ glibc-kernheaders-2.4-9.1.87.x86_64.rpm rpm -Uvh glibc-devel-2.3.4-2.9.i386.rpm rpm -Uvh openmotif-2.2.3-9.RHEL4.1.x86_64.rpm \ xorg-x11-deprecated-libs-6.8.2-1.EL.13.6.x86_64.rpm rpm -Uvh xorg-x11-deprecated-libs-6.8.2-1.EL.13.6.i386.rpm \ xorg-x11-libs-6.8.2-1.EL.13.6.i386.rpm \ xorg-x11-Mesa-libGL-6.8.2-1.EL.13.6.i386.rpm \ expat-1.95.7-4.i386.rpm fontconfig-2.2.3-7.i386.rpm \ freetype-2.1.9-1.i386.rpm zlib-1.2.1.2-1.i386.rpm rpm -Uvh libgcc-3.4.3-22.1.i386.rpmYou will get various different error messages during the installation if not all of these RPMs are installed on your system for 10g R1 64-bit.
For more information, see Oracle10g/Linux Errors and Problems.
10g R1 on RHEL AS 4 (x86)
On my RHEL AS 4 x86 system I had to install the following RPMs and dependencies to meet the software requirements:
rpm -Uvh gcc-3.4.3-9.EL4.i386.rpm \ glibc-devel-2.3.4-2.i386.rpm \ glibc-headers-2.3.4-2.i386.rpm \ glibc-kernheaders-2.4-9.1.87.i386.rpm rpm -Uvh openmotif-2.2.3-6.RHEL4.2.i386.rpm \ xorg-x11-deprecated-libs-6.8.1-23.EL.i386.rpmNote that the 10g 10.1.0.3 OUI Product-specific Prerequisite check will fail for the gcc, binutils, and openmotif versions. You can ignore these failed checks and proceed.
The redhat-release RPM should already be installed by default. But note that 10.1.0.3.0 OUI does not recognize RHEL AS 4 as a supported release yet. This means you will have to edit the /etc/redhat-release file, see below, or you apply the 4153257 patch for 10g R1 on RHEL 4. 10g R2 does recognise RHEL AS 4 as a supported platform.
10g R1 and R2 on RHEL AS 3 (x86)
On my RHEL AS 3 x86 system I had to install the following RPMs and dependencies to meet the software requirements:
rpm -Uvh gcc-3.2.3-52.i386.rpm \ cpp-3.2.3-52.i386.rpm \ glibc-devel-2.3.2-95.33.i386.rpm \ glibc-headers-2.3.2-95.33.i386.rpm \ glibc-kernheaders-2.4-8.34.1.i386.rpm rpm -Uvh compat-db-4.0.14-5.1.i386.rpm \ compat-gcc-7.3-2.96.128.i386.rpm \ compat-gcc-c++-7.3-2.96.128.i386.rpm \ compat-libstdc++-7.3-2.96.128.i386.rpm \ compat-libstdc++-devel-7.3-2.96.128.i386.rpm \ tcl-8.3.5-92.2.i386.rpm rpm -Uvh libaio-0.3.96-5.i386.rpm rpm -Uvh openmotif21-2.1.30-9.RHEL3.6.i386.rpm rpm -Uvh openmotif-2.2.3-5.RHEL3.2.i386.rpm
10g R1 on RHEL AS 3 (x86_64)
On my RHEL AS 3 x86_64 system I had to install the following RPMs and dependencies to meet the software requirements:
rpm -Uvh gcc-3.2.3-52.x86_64.rpm \ cpp-3.2.3-52.x86_64.rpm \ glibc-devel-2.3.2-95.33.x86_64.rpm \ glibc-headers-2.3.2-95.33.x86_64.rpm \ glibc-kernheaders-2.4-8.34.1.x86_64.rpm rpm -Uvh glibc-devel-2.3.2-95.33.i386.rpm rpm -Uvh compat-db-4.0.14-5.1.x86_64.rpm \ compat-gcc-7.3-2.96.128.i386.rpm \ compat-gcc-c++-7.3-2.96.128.i386.rpm \ compat-libstdc++-7.3-2.96.128.i386.rpm \ compat-libstdc++-devel-7.3-2.96.128.i386.rpm \ tcl-8.3.5-92.2.x86_64.rpm \ libgcc-3.2.3-52.i386.rpm rpm -Uvh libaio-0.3.96-5.x86_64.rpm \ libaio-devel-0.3.96-5.x86_64.rpm # RHEL AS 3 x86_64 U5 does not come with a i386 gnome-libs RPM rpm -Uvh gnome-libs-1.4.1.2.90-34.2.x86_64.rpm \ ORBit-0.5.17-10.4.x86_64.rpm \ audiofile-0.2.3-7.1.x86_64.rpm \ esound-0.2.28-6.x86_64.rpm \ gtk+-1.2.10-31.x86_64.rpm \ imlib-1.9.13-13.4.x86_64.rpm \ gdk-pixbuf-0.22.0-12.el3.x86_64.rpm \ libpng10-1.0.13-15.x86_64.rpm \ libungif-4.1.0-15.x86_64.rpm # RHEL AS 3 x86_64 U5 does not come with a x86_64 openmotif21 RPM rpm -Uvh openmotif21-2.1.30-9.RHEL3.6.i386.rpm \ XFree86-libs-4.3.0-81.EL.i386.rpm \ XFree86-Mesa-libGL-4.3.0-81.EL.i386.rpm \ expat-1.95.5-6.i386.rpm \ fontconfig-2.2.1-13.i386.rpm \ freetype-2.1.4-4.0.i386.rpm \ zlib-1.1.4-8.1.i386.rpmMake sure to use the right i386 and x86_64 RPMs as listed above!
Note, if you don't install the i386 XFree86-libs RPM, you will get an error message similar to this one:
/tmp/OraInstall2005-06-15_07-36-25AM/jre/1.4.2/lib/i386/libawt.so: libXp.so.6: cannot open shared object file: No such file or directoryFor more information, see Oracle10g/Linux Errors and Problems.
10g R1 on RHEL AS 2.1 (x86)
On my RHEL AS 2.1 x86 system I had to install the following RPMs and dependencies to meet the software requirements:
rpm -Uvh glibc-2.2.4-32.11.i686.rpm \ glibc-common-2.2.4-32.11.i386.rpm rpm -Uvh gcc-2.96-108.1.i386.rpm \ binutils-2.11.90.0.8-12.i386.rpm \ cpp-2.96-108.1.i386.rpm \ glibc-devel-2.2.4-32.11.i386.rpm \ kernel-headers-2.4.9-e.3.i386.rpm rpm -Uvh openmotif-2.1.30-11.i386.rpm rpm -Uvh redhat-release-as-2.1AS-4.noarch.rpmI had to upgrade glibc in order to pass Oracle's "Product-specific Prerequisite" checks. Oracle's recommended glibc version is 2.2.4.31.7 or higher.
There is no setarch RPM for RHEL AS 2.1.
Also, it's important to install a newer kernel version for RHEL AS 2.1. Definitely don't use a kernel older than 2.4.9-e.25. To check the kernel version run uname -r. For more information on upgrading the kernel, see Upgrading the Linux Kernel.
10g R2 on Fedora Core 4 (x86)
On my FC4 system I had to install the following RPMs and dependencies to meet the software requirements:
rpm -Uvh gcc-4.0.0-8.i386.rpm \ cpp-4.0.0-8.i386.rpm \ glibc-devel-2.3.5-10.i386.rpm \ glibc-headers-2.3.5-10.i386.rpm \ glibc-kernheaders-2.4-9.1.94.i386.rpm rpm -Uvh compat-libstdc++-33-3.2.3-47.fc4.i386.rpm rpm -Uvh openmotif-2.2.3-10.i386.rpm \ xorg-x11-deprecated-libs-6.8.2-31.i386.rpm rpm -Uvh openmotif21-2.1.30-14.i386.rpm rpm -Uvh libaio-0.3.104-2.i386.rpm rpm -Uvh selinux-policy-targeted-1.25.2-4.noarch.rpmNOTE: I also had to patch the SELinux policy by upgrading the selinux-policy-targeted RPM. You can download the latest version from http://download.fedora.redhat.com/pub/fedora/linux/core/updates/4/i386/. If you don't upgrade to a newer version you will get the following error:
Exception in thread "main" java.lang.UnsatisfiedLinkError: /tmp/OraInstall2005-07-24_09-03-19AM/jre/1.4.2/lib/i386/libawt.so: /tmp/OraInstall2005-07-24_09-03-19AM/jre/1.4.2/lib/i386/libawt.so: cannot restore segment prot after reloc: Permission deniedYou could also disable SELinux which I don't recommend. For more information, see Oracle10g/Linux Errors and Problems.
10g R1 on Fedora Core 3 (x86)
On my FC3 system I had to install the following RPMs and dependencies to meet the software requirements:
rpm -Uvh gcc-3.4.2-6.fc3.i386.rpm \ cpp-3.4.2-6.fc3.i386.rpm \ glibc-devel-2.3.3-74.i386.rpm \ glibc-headers-2.3.3-74.i386.rpm \ glibc-kernheaders-2.4-9.1.87.i386.rpm rpm -Uvh openmotif-2.2.3-6.i386.rpm \ xorg-x11-deprecated-libs-6.8.1-12.i386.rpm rpm -Uvh openmotif21-2.1.30-11.i386.rpm rpm -Uvh setarch-1.6-1.i386.rpmThe gcc version that comes with FC3 will not pass Oracle's "Product-specific Prerequisite" checks. I ignored this warning on FC3.
10g R1 on Fedora Core 1 (x86)
On my FC1 system I had to install the following RPMs and dependencies to meet the software requirements:
rpm -Uvh gcc-3.3.2-1.i386.rpm \ glibc-devel-2.3.2-101.i386.rpm \ cpp-3.3.2-1.i386.rpm \ glibc-headers-2.3.2-101.i386.rpm \ glibc-kernheaders-2.4-8.36.i386.rpm \ binutils-2.14.90.0.6-3.i386.rpm rpm -Uvh openmotif-2.2.2-16.1.i386.rpm rpm -Uvh setarch-1.0-1.i386.rpmFC1 is not supported by Oracle and you will have a hard time to find the right RPM version for Oracle10g. I tried to use the RPMs that came with the FC1 CDs which are easily available to everyone. I did not had any problems installing an Oracle Database 10g (General Purpose Database) on FC1 with these RPMs.
10g R1 on Red Hat 9 (x86)
On my RH9 system I had to install the following RPMs and dependencies to meet the software requirements:
rpm -Uvh openmotif-2.2.2-14.i386.rpm rpm -Uvh gcc-3.2.2-5.i386.rpm \ glibc-devel-2.3.2-5.i386.rpm \ cpp-3.2.2-5.i386.rpm \ glibc-kernheaders-2.4-8.10.i386.rpm \ binutils-2.13.90.0.18-9.i386.rpmThere is no setarch RPM for RH9. RH9 is not supported by Oracle.
Checking/Updating the redhat-release File
Verify that the redhat-release RPM is installed on your Red Hat system:
rpm -q redhat-releaseThis RPM is important for RHEL since RHEL AS 4, RHEL AS 3, and RHEL AS 2.1 are Linux releases supported by Oracle. Without this RPM, Oracle 10g OUI won't be able to recognize it as a supported OS. However, the installer of 10g 10.1.0.3 does not recognize RHEL AS 4 as a supported release yet. This means that you will have to edit the /etc/redhat-release file. You also have to change /etc/redhat-release for unsupported releases like Fedora Core and RH9.
I do not recommend to execute "runInstaller -ignoreSysPrereqs" since this will disable other checks you probably don't want to.
On RHEL AS 4 (for 10g R1), RH9, and FC 1 you have to change the /etc/redhat-release file to make Oracle 10g believe it's running on a supported release.
Regarding RHEL AS 4, the installer for 10g 10.1.0.3 does not recognize RHEL AS 4 as a supported release but 10g R2 OUI does.
To change the /etc/redhat-release file, you can simply copy/paste the following commands:
su - root cp /etc/redhat-release /etc/redhat-release.orig cat > /etc/redhat-release << EOF Red Hat Enterprise Linux AS release 3 (Taroon) EOFAfter you are done with the Oracle10g installation, undo the changes you made to /etc/redhat-release:
su - root cp /etc/redhat-release.orig /etc/redhat-releaseNOTE: On FC3 you don't have to edit /etc/redhat-release since the OUI is not very clever. If OUI finds e.g. digit number "3" in the /etc/redhat-release file, you pass the "operating system version" check since it believes it's a RHEL3 system.
Checking Kernel Parameters
To see all kernel parameters, execute:su - root sysctl -a
For Oracle10g, the following kernel parameters have to be set to values greater than or equal to the recommended values which can be changed in the proc filesystem:
shmmax = 2147483648 (To verify, execute: cat /proc/sys/kernel/shmmax) shmmni = 4096 (To verify, execute: cat /proc/sys/kernel/shmmni) shmall = 2097152 (To verify, execute: cat /proc/sys/kernel/shmall) (for 10g R1) shmmin = 1 (To verify, execute: ipcs -lm |grep "min seg size") shmseg = 10 (It's hardcoded in the kernel - the default is much higher) semmsl = 250 (To verify, execute: cat /proc/sys/kernel/sem | awk '{print $1}') semmns = 32000 (To verify, execute: cat /proc/sys/kernel/sem | awk '{print $2}') semopm = 100 (To verify, execute: cat /proc/sys/kernel/sem | awk '{print $3}') semmni = 128 (To verify, execute: cat /proc/sys/kernel/sem | awk '{print $4}') file-max = 65536 (To verify, execute: cat /proc/sys/fs/file-max) ip_local_port_range = 1024 65000 (To verify, execute: cat /proc/sys/net/ipv4/ip_local_port_range)NOTE: Do not change the value of any kernel parameter on a system where it is already higher than listed as minimum requirement.
On RHEL AS 4 x86, RHEL AS 3 U5 x86, RHEL AS 3 U5 x86_64, RHEL AS 2.1, RH9, FC1, FC3, and FC4 I had to increase the kernel parameters shmmax, semopm, and filemax to meet the minimum requirement. On RHEL AS 4 x86_64 I had to increase shmmax and semopm.
Oracle also recommends to set the local port range ip_local_port_range for outgoing messages to "1024 65000" which is needed for high-usage systems. This kernel parameter defines the local port range for TCP and UDP traffic to choose from.
I added the following lines to the /etc/sysctl.conf file which is used during the boot process:
kernel.shmmax=2147483648 kernel.sem=250 32000 100 128 fs.file-max=65536 net.ipv4.ip_local_port_range=1024 65000Adding these lines to the /etc/sysctl.conf file will cause the system to change these kernel parameters after each boot using the /etc/rc.d/rc.sysinit script which is invoked by /etc/inittab. But in order that these new added lines or settings in /etc/sysctl.conf become effective immediately, execute the following command:
su - root sysctl -pStarting with 10g R2 some network settings must be adjusted as well which is checked by OUI. For more information on setting these parameters, see Changing Network Kernel Settings.
For more information on shmmax, shmmni, shmmin, shmseg, and shmall, see Setting Shared Memory.
For more information on semmsl, semmni, semmns, and semopm, see Setting Semaphores.
For more information on filemax, see Setting File Handles.
Sizing Disk Space for Oracle10g
Oracle says that about 2.5 GB of disk space should be reserved for the Oracle software on Linux.When I did an Oracle 10g Release 1 (10.1.0.3.0) "General Purpose Database" installation (not including any software from the Oracle Database 10g Companion CD), the Oracle software used about 1.3 GB of disk space, and the preconfigured "General Purpose Database" (datafiles, etc.) used about 710 MB of disk space.
$ du -m -s /u01 1963 /u01 $ du -m -s /u01/app/oracle/oradata 720 /u01/app/oracle/oradataIf you also install additional software from the Oracle Database 10g Companion CD, then add at least 1 GB of free disk space.
So if you install Oracle10g Enterprise Edition and additional software from the Oracle Database 10g Companion CD, then you need about 2.5 GB of disk for the Oracle software. And if you also want to add a preconfigured database on the same filesystem, make sure to add another 1 GB of disk space.
NOTE: If you don't put Oracle10g on a separate filesystems, then make sure the root filesystem "/" has enough disk space. You can check the free space of the root filesystem with the following command:
df -h /
Using Automatic Storage Management (ASM)
For more information on installing and configuring ASM, see Installing and Configuring Automatic Storage Management (ASM) and Disks. And for information on how to make use of ASM disk groups when running OUI, see Installing Oracle Database 10g with Real Application Cluster (RAC).Creating Oracle User Accounts
To create the oracle account and groups, execute the following commands:su - root groupadd dba # group of users to be granted SYSDBA system privilege groupadd oinstall # group owner of Oracle files useradd -c "Oracle software owner" -g oinstall -G dba oracle passwd oracleFor more information on the "oinstall" group account, see When to use "OINSTALL" group during install of oracle.
Setting Shell Limits for the Oracle User
Most shells like Bash provide control over various resources like the maximum allowable number of open file descriptors or the maximum number of processes available to a user. For more information on ulimit for the Bash shell, see man bash and search for ulimit.If you just install a small test database, then you might be ok with the current settings (note that the limits very often vary). But for (larger) production databases, you should increase the following shell limits to the following values recommended by Oracle:
nofile = 65536 (To verify, execute: ulimit -n) nproc = 16384 (To verify, execute: ulimit -u)The nofile option denotes the maximum number of open file descriptors, and nproc denotes the maximum number of processes available to a single user.
To see all shell limits, execute:
ulimit -aThe following procedures/links show how to increase these parameters for the oracle user account:
For more information on nofile and how to increase the limit, see Setting Limits for the Maximum Number of Open File Descriptors for the Oracle User. Even though this procedure was written for Oracle9i on RHAS 2.1, it also applies to Oracle10g on RHEL AS 2.1, RHEL AS 3, and other versions.
For more information on nproc and how to increase the limit, see Setting Limits for the Maximum Number of Processes for the Oracle User. Even though this procedure was written for Oracle9i on RHAS 2.1, it also applies to Oracle10g on RHEL AS 2.1, RHEL AS 3, and other versions.
Creating Oracle Directories
For Oracle10g you only need to create the directory for $ORACLE_BASE:su - root mkdir -p /u01/app/oracle chown oracle.oinstall /u01/app/oracleBut if you want to comply with Oracle's Optimal Flexible Architecture (OFA), then you don't want to place the database files in the /u01 directory but in another directory/filesystem/disk like /u02. This is not a requirement but if you want to comply with OFA, then you might want to create the following directories as well:
su - root mkdir -p /u02/oradata/orcl chown oracle.oinstall /u02/oradata/orclIn this example, "orcl" stands for the name of the database which will also be the name of the instance. This is typically the case for single instance databases.
Optimal Flexible Architecture (OFA) for 10g R1 (10.1.0.2)
The OFA standard is a guideline created by Oracle to ensure reliable Oracle installations. For Oracle 10g Database, the OFA recommended Oracle home path has changed.
The home path for the first 10g (10.1.0) database installation on a system would be:
/u01/app/oracle/product/10.1.0/db_1If you would install a second Oracle 10g Database 10g (10.1.0) on the same system, the Oracle home directory would be as follows:
/u01/app/oracle/product/10.1.0/db_2If the Oracle10g software is not owned by the user oracle but by the user "oraowner", then the path of the Oracle home directory would be:
/u01/app/oraowner/product/10.1.0/db_1 /u01/app/oraowner/product/10.1.0/db_2The standard directory name for Oracle10g is "app":
/u01/app/oracle/product/10.1.0/db_1Oracle recommends to use mount points such as /u01, /u02, etc. which complies with the OFA guidelines. But others can be used, for example:
/disk_1/app/oracle/product/10.1.0/db_1The subtree for database files not stored in ASM disk groups should be named as follows:
/u02/oradata/<db_name_1> /u02/oradata/<db_name_2> /u03/oradata/<db_name_1> /u03/oradata/<db_name_2>The mount point /u01 should be used for the Oracle software only. /u02, /u03, /u04 etc. should be used for the database files. The db_name stands for the DB_NAME initialization parameter which is typically the same as the SID name for single instance databases.
Setting Oracle Environments
Since the Oracle Universal Installer (OUI) "runInstaller" is run from the oracle account, some environment variables must be configured for this account before OUI is started.Execute the following commands for the Bash shell which is the default shell on Red Hat Linux (to verify your shell run: echo $SHELL):
su - oracle export ORACLE_BASE=/u01/app/oracle export ORACLE_SID=orclNOTE: If ORACLE_BASE is used, then Oracle recommends that you don't set the ORACLE_HOME environment variable but that you choose the default path suggested by the OUI. You can set and use ORACLE_HOME after you finished running OUI.
Also, the environment variables ORACLE_HOME and TNS_ADMIN should not be set. If you've already set these environment variables, you can unset them by running the following commands:
unset ORACLE_HOME unset TNS_ADMIN
To have these environment variables set automatically each time you login as oracle, you can add these environment variables to the ~oracle/.bash_profile file which is the user startup file for the Bash shell on Red Hat Linux. To do this you could simply copy/paste the following commands to make these settings permanent for your oracle's Bash shell:
su - oracle cat >> ~oracle/.bash_profile << EOF export ORACLE_BASE=/u01/app/oracle export ORACLE_SID=orcl EOF
Installing Oracle10g
Installing Oracle10g on a Remote Linux ServerIf you don't install Oracle on your local system but on a remote server, then you need to relink X to your local desktop. The easiest way to do this is to use the "X11 forwarding" feature of ssh. This means that you don't have to run xhost and set the DISPLAY environment variable.
Here is an example how to make use of the "X11 forward" feature of ssh. Simply run the following command from your local desktop:
$ ssh -X oracle@oracle_remote_server_nameNow when you try to run any GUI tool on the remote server, it will automatically be relinked to your local desktop. If this is not working, verify that the ForwardX11 setting is not set to "no" in /etc/ssh/ssh_config on the remote server:
su - root # grep ForwardX11 /etc/ssh/ssh_config | grep -v "^#" ForwardX11 yes #If you are using telnet, however, you will have to set DISPLAY manually, see my other article Starting runInstaller for more information.
Starting Oracle Universal Installer
Insert the Oracle CD that contains the image of the downloaded file ship.db.lnx32.cpio, or change to the directory that contains the image directory Disk1.
If you install Oracle10g from a CD, mount the CD by running the following commands in another terminal:
su - root mount /mnt/cdromFor RHEL AS 4, RHEL AS 3, and FC3 you have to execute:
su - root mount /media/cdromBefore you execute runInstaller, make sure the Oracle environment variables are set, see Setting Oracle Environments. You can verify the settings by running the set command:
su - oracle oracle$ setTo execute runInstaller from the mounted CD, run the following command as the oracle user:
oracle$ /mnt/cdrom/runInstallerOn RHEL AS 4, RHEL AS 3, and FC3 run the following command:
oracle$ /media/cdrom/runInstaller
Using Oracle Universal Installer (OUI)
The following example shows how to install x86 Oracle 10g Release 1 Database Software and a "General Purpose" database:
(Note, the screens and questions will look different if you install 10g R2 or 64-bit 10g R1 database)
- Welcome Screen: - Basic Installation: Checked it which is the default - Oracle Home Location: Use default: /u01/app/oracle/product/10.1.0/db_1 - Installation Type: I used the default: Enterprise Edition - UNIX DBA Group: Use default: dba - Create Starter Databases: I checked it for this example which is the default - Global Database Name: orcl - Database password: Type in the password for SYS, SYSTEM, SYSMAN, and DBSNMP accounts - Advanced Installation: For this article I did not check it Click Next - Specify Inventory directory and credentials: - Full path of the inventory directory: Use default: /u01/app/oracle/oraInventory - Specify Operating System group name: Use default: oinstall Click Next - A window pops up to run the orainstRoot.sh script: Run the script in another terminal: su - root # /u01/app/oracle/oraInventory/orainstRoot.sh Creating the Oracle inventory pointer file (/etc/oraInst.loc) Changing groupname of /u01/app/oracle/oraInventory to oinstall. # Click Continue - Product-specific Prerequisite Checks: Verify that all checks have been passed. Make sure that the status of each Check is set to "Succeeded". On RHEL AS 4 ignore the warnings for binutils, gcc, and openmotif and proceed. If a check failed, see Oracle10g Installation Errors on Linux. Note that the "Retry" button doesn't work after you fixed one of the failed checks. Click Next - Select Database Configuration: I selected "General Purpose". Click Next - Specify Database Configuration Options: - Global Database Name: I used "orcl". - SID: I used "orcl". Click Next - Select Database Management Option: I selected "Use Database Control for Database Management". Click Next - Specify Database File Storage Option: I selected "File System". - File System - Specify Database file location: /u01/app/oracle/oradata/ If you want to comply with OFA, you might want to select another mount point than '/u01', e.g. /u02/oradata. Click Next - Specify Backup and Recovery Options: For my test installation I selected "Do no enable Automated Backups". Click Next - Specify Database Schema Passwords: Make sure that the password(s) don't start with a digit number! Otherwise you will later get error message(s) like "ORA-00988 missing or invalid password". Click Next - Summary: Click Install If Enterprise manager configuration fails due to port allocation problems, check out Oracle10g/Linux Errors and Problems. When a window pops up to run the root.sh script, execute the script in another terminal as root: su - root # /u01/app/oracle/product/10.1.0/db_1/root.sh Running Oracle10 root.sh script... \nThe following environment variables are set as: ORACLE_OWNER= oracle ORACLE_HOME= /u01/app/oracle/product/10.1.0/db_1 Enter the full pathname of the local bin directory: [/usr/local/bin]: Copying dbhome to /usr/local/bin ... Copying oraenv to /usr/local/bin ... Copying coraenv to /usr/local/bin ... \nCreating /etc/oratab file... Adding entry to /etc/oratab file... Entries will be added to the /etc/oratab file as needed by Database Configuration Assistant when a database is created Finished running generic part of root.sh script. Now product-specific root actions will be performed. /var/opt/oracle does not exist. Creating it now. /etc/oracle does not exist. Creating it now. Successfully accumulated necessary OCR keys. Creating OCR keys for user 'root', privgrp 'root'.. Operation successful. Oracle Cluster Registry for cluster has been initialized Adding to inittab Checking the status of Oracle init process... Expecting the CRS daemons to be up within 600 seconds. CSS is active on these nodes. mars CSS is active on all nodes. Oracle CSS service is installed and running under init(1M) # Click OK - End of Installation: Click Exit
Updates after Running Oracle Universal Installer
After Oracle10g has been installed, make sure that ORACLE_HOME, PATH, and LD_LIBRARY_PATH are set for the oracle account.
Note that the path for ORACLE_HOME might be different on your system!
Also note that LD_LIBRARY_PATH is needed for some Oracle binaries such as sysresv!
For 10g R1 (10.1.0.3) I added the following lines to the ~oracle/.bash_profile file:
export ORACLE_HOME=$ORACLE_BASE/product/10.1.0/db_1 export PATH=$PATH:$ORACLE_HOME/bin export LD_LIBRARY_PATH=$ORACLE_HOME/libFor 10g R2 (10.2.0.1.0) I added the following lines to the ~oracle/.bash_profile file:
export ORACLE_HOME=$ORACLE_BASE/oracle/product/10.2.0/db_1 export PATH=$PATH:$ORACLE_HOME/bin export LD_LIBRARY_PATH=$ORACLE_HOME/libAfter that run the following command to set all environment variables in ~oracle/.bash_profile:
$ . ~oracle/.bash_profileThis commmand will add the environment variables to the ~oracle/.profile and source in the file for the current shell by executing ". ~oracle/.bash_profile".
NOTE: Do not add a trailing "/" on the ORACLE_HOME environment variable. Otherwise you will get the error "ORACLE not available" when you try to connect to sys, see Oracle10g/Linux Errors and Problems for more information.
Oracle Post-installation Tasks
Before you continue, make sure you followed the steps at Updates after Running Oracle Universal Installer.Startup and Shutdown of the Oracle10g Database
To startup the database:
oracle$ sqlplus /nolog SQL> connect / as sysdba SQL> startupTo shutdown the database:
oracle$ sqlplus /nolog SQL> connect / as sysdba SQL> shutdownThe slash connects you to the schema owned by SYS. In the above example you will be connected to the schema owned by SYS with the privilege SYSDBA. SYSDBA gives you the following privileges:
- sysoper privileges WITH ADMIN OPTION
- create database
- recover database until
Shutdown of other Oracle 10g Background Processes
If you installed a preconfigured database using OUI, then several Oracle background processes are now running on your server. Execute the following command to see the background processes:
ps -efTo shutdown the Oracle background processes after an Oracle Database 10g installation, you can execute the following commands:
- To stop iSQL*Plus, run:
su - oracle isqlplusctl stop
- During the installation of Oracle 10g, OUI offered two Database Management Options:
If you selected "Database Control for Database Management", then the Oracle Enterprise Manager Database Control (Database Control) can be shutdown with the following command which stops both the agent and the Oracle Containers for Java (OC4J) management service:
su - oracle emctl stop dbconsoleIf you selected "Grid Control for Database Management" which is used for full "Grid Control" installations, then the Oracle Management Agent (standalone agent) for the Oracle Enterprise Manager Grid Control (Grid Control) can be stopped with the following command:
su - oracle emctl stop agent
- To stop the listener, run:
su - oracle lsnrctl stop
- To shutdown Oracle CSS daemon, run:
su - root /etc/rc.d/init.d/init.cssd stop
Tips and Hints for Oracle10g on Linux
- Make sure you first used the De-installation option in OUI.
su - root export ORACLE_HOME=/u01/app/oracle/product/10.1.0/db_1 . $ORACLE_HOME/bin/localconfig delete # stops the Oracle CSS daemon and deletes configuration rm -rf /u01/app/oracle/* rm -f /etc/oraInst.loc /etc/oratab rm -rf /etc/oracle rm -f /etc/inittab.cssd rm -f /usr/local/bin/coraenv /usr/local/bin/dbhome /usr/local/bin/oraenvMake also sure to unset and uncomment ORACLE_HOME from ~oracle/.bash_profile.
Oracle10g/Linux Errors and Problems
Here is a list of common Oracle10g installation problems and other issues.Note that most of the issues are due to not following correctly the installation procedure. And some errors are due to not using an Oracle supported Linux OS.
The Installation log file can be found in $ORACLE_BASE/oraInventory/logs.
The Database Creation log file can be found in $ORACLE_BASE/admin/$ORACLE_SID/create.
Starting Oracle Universal Installer... Checking installer requirements... Checking operating system version: must be redhat-2.1, UnitedLinux-1.0 or redhat-3 Failed <<<< Exiting Oracle Universal Installer, log for this session can be found at ...
- See Checking/Updating the redhat-release File for more information.
Checking for gcc-2.96; found Not found. Failed <<<<
- See Checking Software Packages (RPMs) for more information.
Note that "Retry" in the "Product-specific Prerequisite Checks" window does not work. So you either set it manually to Passed or you restart OUI.
Checking for openmotif-2.1.30-11; found Not found. Failed <<
- See Checking Software Packages (RPMs) for more information.
Note that "Retry" in the "Product-specific Prerequisite Checks" window does not work. So you either set it manually to Passed or you restart OUI.
Checking for shmmax=2147483648; found shmmax=33554432. Failed <<<<
- Increase the shmmax kernel parameter.
For more information on shmmax, see Checking Kernel Parameters.
Note that "Retry" in the "Product-specific Prerequisite Checks" window does not work. So you either set it manually to Passed or you restart OUI.
Checking for semopm=100; found semopm=32. Failed <<<<
- Increase the semopm kernel parameter.
For more information on semopm, see Checking Kernel Parameters.
Note that "Retry" in the "Product-specific Prerequisite Checks" window does not work. So you either set it manually to Passed or you restart OUI.
Checking for filemax=65536; found filemax=26163. Failed <<<<
- Increase the file-max kernel parameter:
For more information on file-max, see Checking Kernel Parameters.
Note that "Retry" in the "Product-specific Prerequisite Checks" window does not work. So you either set it manually to Passed or you restart OUI.
ORA-01034: ORACLE not available ORA-27101: shared memory realm does not exist Linux Error: 2: No such file or directory or ORA-01034: ORACLE not available
- First check if ORACLE_SID is set correctly.
If ORACLE_SID is set correctly, then you probably have a trailing slash "/" on the ORACLE_HOME environment variable. Remove it and try again to connect to sys (e.g from ORACLE_HOME=/u01/app/oracle/product/10.1.0/db_1/ to ORACLE_HOME=/u01/app/oracle/product/10.1.0/db_1).
ORA-00988 missing or invalid password(s).
- During the Oracle10g installation you probably provided a password for the Oracle database accounts that started with a digit number. Ignore this error message and change the password when you are done with the Oracle10g installation.
- Make sure LD_LIBRARY_PATH is set to $ORACLE_HOME/lib:
oracle$ export LD_LIBRARY_PATH=$ORACLE_HOME/lib
X11 connection rejected because of wrong authentication. X connection to localhost:10.0 broken (explicit kill or server shutdown).
- To rectify this problem, try to login to the remote Oracle server again by using the "X11 forward" feature of ssh. Execute the following command from your local desktop:
$ ssh -X oracle@oracle_remote_server_nameNow when you try to run any GUI tool on the remote server, it will automatically be relinked to your local desktop. If this is not working, verify that the ForwardX11 setting is not set to "no" in /etc/ssh/ssh_config on your remote server:
su - root # grep ForwardX11 /etc/ssh/ssh_config | grep -v "^#" ForwardX11 yes #NOTE: If you use for example Red Hat Fedora Core 3 as your desktop and you want to install the database on another machine, then you need to set the DisallowTCP entry in /etc/X11/gdm/gdm.conf for the GNOME Display Manager to read:
DisallowTCP=falseAfter that you need to restart your X server. I usually do this with the init command:
su - root init 3 init 5If you are using telnet, however, you will have to set DISPLAY manually, see my other article Starting runInstaller for more information.
- You are probably running the wrong rman binary which belongs to the XFree86-devel RPM:
$ which rman /usr/X11R6/bin/rman
ORA-00988 missing or invalid password(s).
- During the Oracle10g installation you probably provided a password for the Oracle database accounts that started with a digit number. Ignore this error message and change the password when you are done with the Oracle10g installation.
- You may get this error message on RHEL3 x86_64, RHEL4 x86_64, and on other systems. Even though you most probably have /usr/X11R6/lib64/libXp.so.6 installed on your system, this error messages is complaining that it can't find the libXp.so.6 shared library for i386:
/tmp/OraInstall2005-06-15_07-36-25AM/jre/1.4.2/lib/i386/libawt.so: libXp.so.6: cannot open shared object file: No such file or directoryOn my RHEL3 x86_64 system for 10g (10.1.0.3) I had to install the i386 XFree86-libs package (XFree86-libs-4.3.0-81.EL.i386.rpm). In order to satisfy dependencies for this i386 package, I had to install a few other i386 RPMs as well:
# rpm -ivh XFree86-libs-4.3.0-81.EL.i386.rpm \ XFree86-Mesa-libGL-4.3.0-81.EL.i386.rpm \ expat-1.95.5-6.i386.rpm \ fontconfig-2.2.1-13.i386.rpm \ freetype-2.1.4-4.0.i386.rpm \ zlib-1.1.4-8.1.i386.rpmOn my RHEL4 x86_64 U1 system for 10g (10.1.0.3) I had to install the i386 xorg-x11-deprecated-libs package (xorg-x11-deprecated-libs-6.8.2-1.EL.13.6.i386.rpm). In order to satisfy dependencies for this i386 package, I had to install a few other i386 RPMs as well:
# rpm -Uvh xorg-x11-deprecated-libs-6.8.2-1.EL.13.6.i386.rpm \ xorg-x11-libs-6.8.2-1.EL.13.6.i386.rpm \ xorg-x11-Mesa-libGL-6.8.2-1.EL.13.6.i386.rpm \ expat-1.95.7-4.i386.rpm \ fontconfig-2.2.3-7.i386.rpm \ freetype-2.1.9-1.i386.rpm \ zlib-1.2.1.2-1.i386.rpmOn my RHEL4 x86_64 U2 system for 10g R2 (10.2.0.1.0) I had to install the i386 xorg-x11-deprecated-libs package (xorg-x11-deprecated-libs-6.8.2-1.EL.13.20.i386.rpm). In order to satisfy dependencies for this i386 package, I had to install a few other i386 RPMs as well:
rpm -Uvh xorg-x11-deprecated-libs-6.8.2-1.EL.13.20.i386.rpm \ xorg-x11-libs-6.8.2-1.EL.13.20.i386.rpm \ xorg-x11-Mesa-libGL-6.8.2-1.EL.13.20.i386.rpm \ expat-1.95.7-4.i386.rpm \ fontconfig-2.2.3-7.i386.rpm \ freetype-2.1.9-1.i386.rpm \ zlib-1.2.1.2-1.2.i386.rpmOn my RHEL4 x86 U2 system for 10g R2 (10.2.0.1.0) I had to install the following RPM:
rpm -Uvh xorg-x11-deprecated-libs-6.8.2-1.EL.13.20.i386.rpmIf you get this error message on Fedora Core 3 x86, install the xorg-x11-deprecated-libs RPM. For example:
# rpm -Uvh xorg-x11-deprecated-libs-6.8.1-12.FC3.21After I installed these RPMs I had to restart the installation. If you know a more elegant way to continue, please drop me an email.
- You may get this error message or a similar one when installing 64-bit 10g on RHEL4 x86_64.
On my RHEL4 U1 x86_64 system for 10g (10.1.0.3) I installed the following i386 RPM to fix this problem:
# rpm -Uvh glibc-devel-2.3.4-2.9.i386.rpmOn my RHEL4 U2 x86-64 system for 10g R2 (10.2.0.1.0) I installed the following i386 RPM to fix this problem:
# rpm -Uvh glibc-devel-2.3.4-2.13.i386.rpm
- You may get this error message or a similar one when installing 64-bit 10g on RHEL4 x86_64.
On my RHEL4 U1 x86_64 system for 10g (10.1.0.3) I installed the following i386 RPM to fix this problem:
# rpm -Uvh libgcc-3.4.3-22.1.i386.rpmOn my RHEL4 U2 x86_64 system for 10g R2 (10.2.0.1.0) I installed the following i386 RPM to fix this problem:
# rpm -Uvh libgcc-3.4.4-2.i386.rpm
- Make sure the libaio RPM is installed.
For example in RHEL 3 x86:
# rpm -Uvh libaio-0.3.96-5.i386.rpmFor example in RHEL 4 U2 x86_64:
# rpm -Uvh libaio-0.3.103-3.x86_64.rpm
- I saw this error when I installed 10g R2 on Fedora Core 4. I fixed it by patchting/upgrading the SELinux policy:
# rpm -Uvh selinux-policy-targeted-1.25.2-4.noarch.rpmYou can download the latest selinux-policy-targeted RPM from http://download.fedora.redhat.com/pub/fedora/linux/core/updates/4/i386/.
You could also disable SELinux which I DO NOT recommend:
# /usr/sbin/setenforce 0
- The log file showed the following error:
INFO: gcc: INFO: /usr/lib64/libstdc++.so.5: No such file or directory INFO: INFO: /u01/app/oracle/oracle/product/10.2.0/db_1/bin/genorasdksh: Failed to link liborasdkbase.so.10.2 INFO: make: *** [liborasdkbase] Error 1On my RHEL4 U2 x86_64 system for 10g R2 (10.2.0.1.0) I installed the following x86_64 RPM to fix this problem:
# rpm -Uvh compat-libstdc++-33-3.2.3-47.3.x86_64.rpmNote that you may already have the "i386" compat-libstdc++-33 RPM installed on your systems but you need the "x86_64" RPM to fix this problem. To verify which compat-libstdc++-33 RPM you have installed on your system, run:
# rpm -q --qf '%{NAME}-%{VERSION}-%{RELEASE} (%{ARCH})\n' compat-libstdc++-33
- The log file showed the following error:
INFO: Creating /u01/app/oracle/oracle/product/10.2.0/db_1/lib/liborasdkbase.so.10.2 INFO: gcc: INFO: /usr/lib/libstdc++.so.5: No such file or directory INFO: INFO: /u01/app/oracle/oracle/product/10.2.0/db_1/bin/genorasdksh: Failed to link liborasdkbase.so.10.2This means that the "33" version of the compat-libstdc++ RPM is missing.
On my RHEL 4 U2 x86 system for 10g R2 (10.2.0.1.0) I installed the following RPM to fix this problem:
# rpm -Uvh compat-libstdc++-33-3.2.3-47.3.i386.rpmNOTE: You need the "33" version of the compat-libstdc++ RPM. For i386 there is also a "296" version of the compat-libstdc++ RPM. Here are the two compat-libstdc++ RPMs that come with RHEL 4 U2:
compat-libstdc++-296-2.96-132.7.2.i386.rpm compat-libstdc++-33-3.2.3-47.3.i386.rpmIn Fedora Core 4 x86 I installed the following RPM to fix this problem:
# rpm -Uvh compat-libstdc++-33-3.2.3-47.fc4.i386.rpmNOTE: You need the "33" version of the compat-libstdc++ RPM. For i386 there is also a "296" version of the compat-libstdc++ RPM. Here are the two compat-libstdc++ RPMs that come with FC4:
compat-libstdc++-296-2.96-132.fc4.i386.rpm compat-libstdc++-33-3.2.3-47.fc4.i386.rpmAfter that hit Retry in the error dialog window.
- The log file showed the following error:
INFO: /usr/bin/ld: /u01/app/oracle/oracle/product/10.2.0/db_1/lib/libirc.a(fast_memcpy.o): relocation R_X86_64_PC32 against `_memcpy_mem_ops_method' can not be used when making a shared object; recompile with -fPIC /usr/bin/ld: final link failed: Bad value collect2: ld returned 1 exit status INFO: /u01/app/oracle/oracle/product/10.2.0/db_1/bin/genorasdksh: Failed to link liborasdkbase.so.10.2This error comes up when installing 10g R2 (10.2.0.1.0) on RHEL4 x86_64. Make sure to upgrade to RHEL4 U3 or to download the binutils RPM from https://rhn.redhat.com/ or from http://oss.oracle.com/projects/compat-oracle/files/RedHat/:
# rpm -Uvh --force binutils-2.15.92.0.2-13.0.0.0.2.x86_64.rpmFor more information on this bug, see Bugzilla Bug 679.
- There can be many reasons for this error. For example, this can happen during ASM instance startup when the libaio RPM is not installed on the system.
- Make sure the loopback entry in /etc/hosts is not missing when you start the listener:
127.0.0.1 localhost.localdomain localhostNow try to run lsnrctl start as oracle again.
References
Oracle Database Documentation LibraryWerner's Oracle Linux Page
Copyright © 2007 puschitz.com
728x90
댓글