This chapter covers many common errors and pitfalls associated with installing an Oracle9i Database.
Log Files
Always check first the error logs for 9.2.0 in /tmp/OraInstall*, where "*" will be the date of the install, for example /tmp/OraInstall2002-07-04_09-50-19PM. When you problems with make, see also the $ORACLE_HOME/install/make.log file.
make Problems
First ensure that gcc is installed on your system by executing:
which gcc
/usr/bin/gcc
$ which gcc
/usr/bin/gcc
Copy to ClipboardCopied!Toggle word wrapToggle overflow
Here is the command to find the RPM package name for /usr/bin/gcc:
rpm -qf /usr/bin/gcc
gcc-2.96-98
$ rpm -qf /usr/bin/gcc
gcc-2.96-98
Copy to ClipboardCopied!Toggle word wrapToggle overflow
Verify that your error is not one of the other error messages below. See Chapter 31, Verifying Required Packages(RPMs) for more information on whether you have the correct packages.
Error in invoking target install of makefile/u01/app/oracle/product/9.2.0/ctx/lib/ins_ctx.mk
You may see the following errors in $ORACLE_HOME/install/make.log:
/lib/libdl.so.2: undefined reference to `_dl_addr@GLIBC_PRIVATE'
/lib/libdl.so.2: undefined reference to `_dl_open@GLIBC_PRIVATE'
/lib/libdl.so.2: undefined reference to `_dl_close@GLIBC_PRIVATE'
/lib/libdl.so.2: undefined reference to `_dl_sym@GLIBC_PRIVATE'
/lib/libdl.so.2: undefined reference to `_dl_vsym@GLIBC_PRIVATE'
/lib/libdl.so.2: undefined reference to `_dl_addr@GLIBC_PRIVATE'
/lib/libdl.so.2: undefined reference to `_dl_open@GLIBC_PRIVATE'
/lib/libdl.so.2: undefined reference to `_dl_close@GLIBC_PRIVATE'
/lib/libdl.so.2: undefined reference to `_dl_sym@GLIBC_PRIVATE'
/lib/libdl.so.2: undefined reference to `_dl_vsym@GLIBC_PRIVATE'
Copy to ClipboardCopied!Toggle word wrapToggle overflow
This error comes up when the following step is executed:
Copy to ClipboardCopied!Toggle word wrapToggle overflow
Edit the file $ORACLE_HOME/ctx/lib/env_ctx.mk, add "$(LDLIBFLAG)dl" to the "INSO_LINK =" line. The updated line should with the added "$(LDLIBFLAG)dl" flag, should look like this:
Copy to ClipboardCopied!Toggle word wrapToggle overflow
After that hit Retry in the error pop-up.
If this did not fix the problem, try the following solution:
Edit the file $ORACLE_HOME/ctx/lib/env_ctx.mk again, go to "INSO_LINK =", remove the above entry you made and add "`cat $(LIBHOME)/sysliblist`" to the line and save it. This is what the updated line, with the added "`cat $(LIBHOME)/sysliblist`" string, look like:
Copy to ClipboardCopied!Toggle word wrapToggle overflow
After that hit Retry in the error pop-up.
ORA-27123: unable to attach to shared memory segment
This error, "ORA-27123: unable to attach to shared memory segment", message may came up when the Oracle Database Configuration Assistant was running. Execute the following command to temporarily increase the maximum shared memory size:
Copy to ClipboardCopied!Toggle word wrapToggle overflow
Then click Retry for the Oracle Database Configuration Assistant.
It is recommended to increase the shmmax setting permanently for Oracle9i. So if you want to increase the maximum shared memory size permanently, add the following line to the /etc/sysctl.conf file:
kernel.shmmax=1073741824
kernel.shmmax=1073741824
Copy to ClipboardCopied!Toggle word wrapToggle overflow
You may see this error, ORA-03113: end-of-file on communication channel, when you run the "Database Configuration Assistant" and "sqlplus". It can be caused by shmmax parameter being too small. Make sure to increase shmmax permanently. Read Chapter 7, Setting Shared Memory for information on how to increase the shmmax parameter.
Error in invoking target install of make file /u01/app/oracle/product/9.2.0/network/lib/ins_oemagent.mk
Copy to ClipboardCopied!Toggle word wrapToggle overflow
If this happens, try the following:
su - root
touch /etc/rac_on
$ su - root
touch /etc/rac_on
Copy to ClipboardCopied!Toggle word wrapToggle overflow
Now try to restart dbca.
Another option is to edit $ORACLE_HOME/bin/dbca and to put the following lines under comment except the line not preceded by a hash:
if [ -f /etc/rac_on ]; then
# Run DBCA
$JRE_DIR/bin/jre -native -DORACLE_HOME=$OH ...
else
# Run DBCA
# $JRE_DIR/bin/jre -DORACLE_HOME=$OH ...
fi
# if [ -f /etc/rac_on ]; then
# Run DBCA
$JRE_DIR/bin/jre -native -DORACLE_HOME=$OH ...
# else
# Run DBCA
# $JRE_DIR/bin/jre -DORACLE_HOME=$OH ...
# fi
Copy to ClipboardCopied!Toggle word wrapToggle overflow
Now try to restart dbca.
gcc errors in Red Hat Enterprise Linux 3
When installing or running Oracle on Red Hat Enterprise Linux 3 you may encounter this gcc error.
gcc -o /u01/app/oracle/product/9.2.0/rdbms/lib/oracle \
-L/u01/app/oracle/product/9.2.0/rdbms/lib/ ...
...
/usr/bin/ld: /u01/app/oracle/product/9.2.0/rdbms/lib/oracle: hidden symbol `__fixunssfdi' in /usr/lib/gcc-lib/i386-redhat-linux/3.2.3/libgcc.a(_fixunssfdi.oS) is referenced by DSO
collect2: ld returned 1 exit status
make: *** [/u01/app/oracle/product/9.2.0/rdbms/lib/oracle] Error 1
/usr/bin/make -f ins_rdbms.mk ioracle ORACLE_HOME=/u01/app/oracle/product/9.2.0
gcc -o /u01/app/oracle/product/9.2.0/rdbms/lib/oracle \
-L/u01/app/oracle/product/9.2.0/rdbms/lib/ ...
...
/usr/bin/ld: /u01/app/oracle/product/9.2.0/rdbms/lib/oracle: hidden symbol `__fixunssfdi' in /usr/lib/gcc-lib/i386-redhat-linux/3.2.3/libgcc.a(_fixunssfdi.oS) is referenced by DSO
collect2: ld returned 1 exit status
make: *** [/u01/app/oracle/product/9.2.0/rdbms/lib/oracle] Error 1
/usr/bin/make -f ins_rdbms.mk ioracle ORACLE_HOME=/u01/app/oracle/product/9.2.0
Copy to ClipboardCopied!Toggle word wrapToggle overflow
To fix the linking problem, execute the following commands:
Copy to ClipboardCopied!Toggle word wrapToggle overflow
./runInstaller: line 58: ./runInstaller: cannot execute binary file
You are probably trying to run a 64 bit Oracle version on a 32 bit Linux system. Make sure you downloaded the right Oracle version for your Linux system.
To check if runInstaller is a 32 bit binary or a 64 bit binary, run the following command:
cd /mnt/cdrom
file install/linux/runInstaller
install/linux/runInstaller: ELF 32 bit LSB executable, Intel 80386, version 1 (SYSV), for GNU/Linux 2.0.0, dynamically linked (uses shared libs), not stripped
$ cd /mnt/cdrom
$ file install/linux/runInstaller
install/linux/runInstaller: ELF 32 bit LSB executable, Intel 80386, version 1 (SYSV), for GNU/Linux 2.0.0, dynamically linked (uses shared libs), not stripped
Copy to ClipboardCopied!Toggle word wrapToggle overflow
To check if your Linux system is 32 bit system or a 64 bit system, run e.g. the following command:
file /sbin/init
/sbin/init: ELF 32 bit LSB executable, Intel 80386, version 1 (SYSV), for GNU/Linux 2.2.5, dynamically linked (uses shared libs), not stripped
$ file /sbin/init
/sbin/init: ELF 32 bit LSB executable, Intel 80386, version 1 (SYSV), for GNU/Linux 2.2.5, dynamically linked (uses shared libs), not stripped
Copy to ClipboardCopied!Toggle word wrapToggle overflow
The Oracle installer runInstaller Hangs
The Oracle installer runInstaller hangs at:
Installing Java Runtime Environment... Link pending... Copying README...
Installing Java Runtime Environment... Link pending... Copying README...
Copy to ClipboardCopied!Toggle word wrapToggle overflow
You may encounter this problem on Red Hat Enterprise Linux 3. You probably forgot to set the environment variable LD_ASSUME_KERNEL to 2.4.1.
To rectify this problem, run the following command and then restart runInstaller:
oracle$ export LD_ASSUME_KERNEL=2.4.1
oracle$ export LD_ASSUME_KERNEL=2.4.1
Copy to ClipboardCopied!Toggle word wrapToggle overflow
Recovery Manager(rman) Hangs
You are probably running the wrong rman binary from the XFree86-devel RPM:
which rman
/usr/X11R6/bin/rman
$ which rman
/usr/X11R6/bin/rman
Copy to ClipboardCopied!Toggle word wrapToggle overflow
Can't find init file for Database "SID"
You may see this error when you start the database with dbstart.
Copy the init file for your SID (in this example “test”) from from /u01/app/oracle/admin/test/pfile to $ORACLE_HOME/dbs to get dbstart and dbshut working:
Copy to ClipboardCopied!Toggle word wrapToggle overflow
Error in setting permissions of file/directory /u01/app/oracle/jre/1.1.8/bin/i686/native_threads/.extract_args
This may happen if the CD was not burned correctly. The solution is to check the image checksums and then burn the cd again or download the image again.
Various Oracle SID Errors
If you get the error 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 then 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 by changing ORACLE_HOME=/u01/app/oracle/product/9.2.0/ to ORACLE_HOME=/u01/app/oracle/product/9.2.0 and try again to connect to sys. Remember the ORACLE_HOME parameter may be slightly different on your machine.
jre was not found in /tmp/OraInstall/jre/bin/i586/green_threads/jre
You are probably running runInstaller on a 586 machine, or your AMD CPU is falsely recognized as 586 (the case for a AMD K6-III-400). You can check your machine (hardware) type by executing "uname -m". If you are not running on a 586 or on a AMD machine, try to link jre to java and see if this solves your problem.
To rectify the problem with the 586 machine or with the AMD CPU, create a link for lib and bin from i586 to i686 and make the i686 directories read only. For example:
Copy to ClipboardCopied!Toggle word wrapToggle overflow
Now restart runInstaller.
./jre/bin/i386/native_threads/java: error while loading shared libraries: libstdc++-libc6.1-1.so.2: cannot open shared object file: No such file or directory
You probably forgot to install the compat-libstdc++ RPM, the package for "Standard C++ libraries for Red Hat Linux 6.2 backwards compatibility". To rectify this problem, install the compat-libstdc++ RPM. Read Chapter 31, Verifying Required Packages(RPMs) for more information.
/u01/app/oracle/jre/1.1.8/bin/../lib/i686/green_threads/libzip.so: symbol errno, version GLIBC_2.0 not defined in file libc.so.6 with link time reference (libzip.so) Unable to initialize threads: cannot find class java/lang/Thread Could not create Java VM
You may experience this problem when running the Database Configuration Assistant dbca on Red Hat Enterprise Linux 3 but forgot to set the LD_ASSUME_KERNEL environment variable.
To rectify this problem, run the following command as the oracle user on Red Hat Enterprise Linux 3 and restart dbca:
oracle$ export LD_ASSUME_KERNEL=2.4.1
oracle$ export LD_ASSUME_KERNEL=2.4.1
Copy to ClipboardCopied!Toggle word wrapToggle overflow
lsnrctl status or lsnrctl start Errors
When lsnrctl status or lsnrctl start are executed you may get the following output:
lsnrctl status (or lsnrctl start)
LSNRCTL for Linux: Version 9.2.0.4.0 - Production on 14-OCT-2004 14:33:10
Copyright (c) 1991, 2002, Oracle Corporation. All rights reserved.
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC))) TNS-12541: TNS:no listener
TNS-12560: TNS:protocol adapter error
TNS-00511: No listener
Linux Error: 2: No such file or directory
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=xxxx)(PORT=1521)))
TNS-12541: TNS:no listener
TNS-12560: TNS:protocol adapter error
TNS-00511: No listener
Linux Error: 111: Connection refused
$ lsnrctl status (or lsnrctl start)
LSNRCTL for Linux: Version 9.2.0.4.0 - Production on 14-OCT-2004 14:33:10
Copyright (c) 1991, 2002, Oracle Corporation. All rights reserved.
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC))) TNS-12541: TNS:no listener
TNS-12560: TNS:protocol adapter error
TNS-00511: No listener
Linux Error: 2: No such file or directory
Connecting to (DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=xxxx)(PORT=1521)))
TNS-12541: TNS:no listener
TNS-12560: TNS:protocol adapter error
TNS-00511: No listener
Linux Error: 111: Connection refused
Copy to ClipboardCopied!Toggle word wrapToggle overflow
One of the possibilities are that the /var/tmp/.oracle directory does not exist. If that is the case, run the following commands:
su - root
# mkdir /var/tmp/.oracle
# chown oracle:dba /var/tmp/.oracle
su - root
# mkdir /var/tmp/.oracle
# chown oracle:dba /var/tmp/.oracle
Copy to ClipboardCopied!Toggle word wrapToggle overflow
Exception in thread "main" java.lang.InternalError: Can't connect to X11 window server using 'alpha:0.0' as the value of the DISPLAY variable.
at sun.awt.X11GraphicsEnvironment.initDisplay(Native Method)
at sun.awt.X11GraphicsEnvironment.(X11GraphicsEnvironment.java:59)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:120)
at java.awt.GraphicsEnvironment.getLocalGraphicsEnvironment(GraphicsEnvironment.java:58)
at java.awt.Window.(Window.java:188)
at java.awt.Frame.(Frame.java:315)
at java.awt.Frame.(Frame.java:262)
at oracle.sysman.oii.oiic.OiicInstaller.main(OiicInstaller.java:593)
Exception in thread "main" java.lang.InternalError: Can't connect to X11 window server using 'alpha:0.0' as the value of the DISPLAY variable.
at sun.awt.X11GraphicsEnvironment.initDisplay(Native Method)
at sun.awt.X11GraphicsEnvironment.(X11GraphicsEnvironment.java:59)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:120)
at java.awt.GraphicsEnvironment.getLocalGraphicsEnvironment(GraphicsEnvironment.java:58)
at java.awt.Window.(Window.java:188)
at java.awt.Frame.(Frame.java:315)
at java.awt.Frame.(Frame.java:262)
at oracle.sysman.oii.oiic.OiicInstaller.main(OiicInstaller.java:593)
Copy to ClipboardCopied!Toggle word wrapToggle overflow
Note
If you use newer Red Hat Enterprise Linux versions 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=false
After that you need to restart your X server. You can do this runnning the init command as root: