Linux Oracle Issues

Installing Oracle9i on Red Hat Linux 9 (not currently supported) or Red Hat Advanced Server 2.1 are very similar. Before attempting the installation, there are several operating system steps need to be completed.

 Upgrade binutils
Upgrade to avoid an Oracle9i installation issue.
 User & Group Setup
How to setup users & groups for Oracle9i and Oracle Applications 11i installation.
 Verify Network Configuration
How to verify network connectivity to support Oracle product installation.
 Verify & Setup Java
How to verify, configure and setup Java to support Oracle product installation.
 Tune Linux kernel
How to tune the Linux kernel to support Oracle product installation.
 Environment Files
How to configure environment files for Oracle software users.
 X Windows Configuration
How to verify and configure X Windows implementation to support Oracle product installation.
 Configure OEM
How to configure and access OEM to support Oracle products.


The binutils-2.11.90.0.8-13.rpm patch is provided to fix a relinking issue during Oracle9i and Oracle9iAS, Bug #2368478. After installing the Oracle products, the binutils version may be backed down to the binutils-2.11.90.0.8-12.

The patching of binutils is ONLY required for a Red Hat Linux Advanced Server 2.1. UnitedLinux 1.0 ships with binutils-2.12.90.0.15-50 natively.

  1. Verify binutils version.
# rpm -q binutils
binutils-2.11.90.0.8-12
  1. Download binutils.
  1. Apply the patch.
# rpm -Uvh binutils binutils-2.11.90.0.8-13.i386.rpm
  1. Downgrading binutils after installing Oracle products.
# rpm -Uvh --force binutils-2.11.90.0.8-12
  1. If the binutils version is backed down, then modify the following files based on the version of Oracle9i installed.
  • Oracle9i 9.0.x.x:
$ORACLE_HOME/bin/genclntsh
$ORACLE_HOME/ldap/lib/ins_ldap.mk
$ORACLE_HOME/ldap/lib/env_ldap.mk
$ORACLE_HOME/sqlplus/lib/env_sqlplus.mk
  • Oracle9i 9.2.x.x:
$ORACLE_HOME/sqlplus/lib/env_sqlplus.mk

The Linux network setup can be verified at the command-line. Configuring the domain can be done at either the command-line or through a GUI interface tool.

 Command-line approach.
   Verify the system host & gateway.
   Verify the subnet mask.
   Verify and configure domain name.
 GUI Interface approach.
   Verify and configure domain name.


There are four steps to verifying the network setup. They are verifying the system host, gateway, subnet mask and domain name. If the domain name is unset, it must be configured. That can be done at the command-line or through the redhat-config-network GUI utility. The domain is not configured during the operating system install and is a post-install step.


The host configuration file in Red Hat Linux is found in the /etc/sysconfig/network file.


NETWORKING=yes
HOSTNAME=mmclaugh-linux
GATEWAY=138.1.144.1


The network subnet mask can be verified by using the ifconfig utility. The network subnet mask is at the end of the second line for the ethernet (eth0). If an internal Oracle installation, it will be 255.255.252.0 or a four bit network.

# ifconfig

    eth0      Link encap:Ethernet  HWaddr 00:04:75:C1:1A:46
              inet addr:138.1.145.183  Bcast:138.1.147.255  Mask:255.255.252.0
              UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
              RX packets:124094 errors:0 dropped:0 overruns:1 frame:0
              TX packets:936 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:100
              RX bytes:53520296 (51.0 Mb)  TX bytes:106419 (103.9 Kb)
              Interrupt:11 Base address:0xa000

    lo        Link encap:Local Loopback
              inet addr:127.0.0.1  Mask:255.0.0.0
              UP LOOPBACK RUNNING  MTU:16436  Metric:1
              RX packets:50 errors:0 dropped:0 overruns:0 frame:0
              TX packets:50 errors:0 dropped:0 overruns:0 carrier:0
              collisions:0 txqueuelen:0
              RX bytes:3288 (3.2 Kb)  TX bytes:3288 (3.2 Kb)


Primary and other domain names should be found in the /etc/resolve.conf file. Entries in the /etc/resolv.conf file are made in a name and value pair. For example, the primary domain has a name of domain and a value of the network domain as noted below for the us.oracle.com domain. Domains other than the primary domain are entered with a name of search and a value of the network domain, as shown for the uk.oracle.com domain.


domain us.oracle.com
search uk.oracle.com
nameserver 130.35.249.41
nameserver 130.35.249.52
nameserver 138.2.202.15


The domain name can be set or changed by using the redhat-config-network tool. At launch, the redhat-config-network tool will have a default panel of devices. Click on the DNS tab to change panels.

  Modifying DNS data.

  • Hostname may be changed.

  • Domain name may be added or changed.

  • Primary DNS may be added or changed.

  • Secondary DNS may be added or changed.

  • Tertiary DNS may be added or changed.

  • Enter additional domains in the Search Domain field and click the add button.


  • Tune Linux kernel

Oracle requires that you tune the Linux kernel. Explanation and instructions about the Linux kernel can be found here.


  • X Windows Configuration
If the installation was successful, then the console will support X Windows. Therefore, the focus is to verify client X Window session to a server. There are two approaches. One is to run a local application like WRQ ReflectionR or HummingbirdTM Exceed to create an X window server on a client PC. Another approach is to use a network X window emmulator like Tarantella, which may be accessed through a web browser. Both approaches are covered below.

 Tarantella X windows verification.

 Local X windows verification.


  1. Connect to Tarantella and login.
  2. Echo the DISPLAY environment variable as noted in the screen capture.
  3. Telnet to the target machine, and echo the DISPLAY environment variable as noted below.
  4. Start xclock in background to verify X windows works.
 

  1. Start the local X window server.
  2. Connect to target server.
  3. Echo the DISPLAY environment variable as noted in the screen capture.
  4. Set and export the DISPLAY environment variable as noted in the screen capture.
  5. Start xclock in background to verify X windows works.
 


  • User & Group Setup
User and group setup is exactly like any UNIX system. Processes to manage users and groups are available through the links below.

Installation of Oracle9i, requires one configuration step before running the Oracle Installer. The apache user must be in the ORAINVENTORY group during the installation. This is required because of security reasons linked to the HTTP server. Reset the apache user to the apache group after the installation.

 Command-line syntax.
   Add a user.
   Modify a user.
   Delete a user.
   Add a group.
   Modify a group.
   Delete a group.
 Red Hat GUI.
   Add a user.
   Modify a user.
   Delete a user.
   Add a group.
   Modify a group.
   Delete a group.
 United Linux GUI.
   Add a user.
   Modify a user.
   Delete a user.
   Add a group.
   Modify a group.
   Delete a group.


  • Verify & Setup Java

Oracle requires that you install the Blackdown JRE 1.1.8v3 and replace the IBM Java with a copy of the Sun Microsystems SDK. Instructions for these system administration steps can be found here.


 Why use environment files?

 What are environment files?

 How to set environment variables?

Whether installing Oracle9i or Oracle Applications 11i, user accounts will need environment files consistent with the installation notes. The following discuss how to setup user environment files.

Environment files ensure a consistent and documented use of environment variables. Examples of environment variables are:

  • $CLASSPATH
  • $ORACLE_BASE
  • $ORACLE_HOME
  • $PATH

Each shell environment has two files that are called when users login. The first file accessed is the login initialization file, which is .profile, .bash_profile or .login dependent on shell. The second file accessed is the resource file, which is .bashrc, .kshrc or .cshrc dependent on shell environment. The relationships between initialization and resource files are depicted below in the table.

The login initialization and resource files are used to configure user environments, setting aliases, environment variables and predefined functions in some cases. The initialization and resource files are often called environment files because they configure user environments.

While Oracle9i and Oracle Applications 11i require bourne, bash or korn shells, some users prefer csh or tcsh. It is IMPORTANT to note that the Red Hat Linux /etc/skel directory does not contain csh and tcsh skeletons. If csh and tcsh are required, the system administrator will need to build skeletons and place them in /etc/skel for new users. Any users created before the skeletons are in place will need to have .login and .cshrc files built manually.

In the table below, Java reference files are used to illustrate the use of resource files.

Source
File
Shell Environment Files
Bourne Bash csh/tcsh Korn
java_jre.sh .profile .bash_profile or
.bashrc
  .profile or
.kshrc
java_sdk.sh .profile .bash_profile or
.bashrc
  .profile or
.kshrc
java_jre.csh     .login or
.cshrc
 
java_sdk.csh     .login or
.cshrc
 


The syntax for setting environment variables depends on the shell. Below are some examples of how to do it in different shells. For more information refer to the man pages.


  • Bourne shell syntax.
ORACLE_BASE=/u02/oracle
export ORACLE_BASE

  • Bash and korn shell syntax.
ORACLE_BASE=/u02/oracle
export ORACLE_BASE
- OR -
export set ORACLE_BASE=/u02/oracle

  • csh & tcsh shell syntax.
setenv ORACLE_BASE /u02/oracle


  • Configure OEM
Installing & Configuring Oracle Enterprise Manager.