Skip Headers

Oracle® Database Installation Guide
10g Release 1 (10.1) for UNIX Systems: AIX-Based Systems, hp HP-UX PA-RISC (64-bit), hp Tru64 UNIX, Linux x86, and Solaris Operating System (SPARC)
Part No. B10811-01
  Go To Table Of Contents
Contents
Go To Index
Index

Previous Next  

2 Pre-installation Tasks

This chapter describes the tasks that you must complete before you start the Oracle Universal Installer. It includes information about the following tasks:

Log In to the System as root

Before you install the Oracle software, you must complete several tasks as the root user. To log in as the root user, complete one of the following procedures:


Note:

Unless you intend to complete a silent installation, you must install the software from an X Window System workstation, an X terminal, or a PC or other system with X server software installed.

For more information about non-interactive and silent installations, see Appendix B.


Check the Hardware Requirements

The system must meet the following minimum hardware requirements:

To ensure that the system meets these requirements, follow these steps:

  1. To determine the physical RAM size, enter one of the following commands:

    Platform Command
    AIX
    # /usr/sbin/lsattr -E -l sys0 -a realmem
    
    HP-UX
    # /usr/sbin/dmesg | grep "Physical:"
    
    Linux
    # grep MemTotal /proc/meminfo
    
    Solaris
    # /usr/sbin/prtconf | grep "Memory size"
    
    Tru64 UNIX
    # /bin/vmstat -P | grep "Total Physical Memory"
    

    If the size of the physical RAM installed in the system is less than the required size, you must install more memory before continuing.

  2. To determine the size of the configured swap space, enter one of the following commands:

    Platform Command
    AIX
    # /usr/sbin/lsps -a
    
    HP-UX
    # /usr/sbin/swapinfo -a
    
    Linux
    # grep SwapTotal /proc/meminfo
    
    Solaris
    # /usr/sbin/swap -s
    
    Tru64 UNIX
    # /sbin/swapon -s
    

    If necessary, see your operating system documentation for information about how to configure additional swap space.

  3. To determine the amount of disk space available in the /tmp directory, enter one of the following commands:

    • HP-UX:

      # bdf /tmp
      
      
    • Other operating systems:

      # df -k /tmp
      
      

    If there is less than 400 MB of disk space available in the /tmp directory, complete one of the following steps:

    • Delete unnecessary files from the /tmp directory to achieve the required disk space.

    • Set the TEMP and TMPDIR environment variables when setting the oracle user’s environment (described later).

    • Extend the file system that contains the /tmp directory. If necessary, contact your system administrator for information about extending file systems.

  4. To determine the amount of free disk space on the system, enter one of the following commands:

    • HP-UX:

      # bdf
      
      
    • Other operating systems:

      # df -k
      
      

    The following table shows the approximate disk space requirements for software files for each installation type:

    Platform Installation Type Requirement for Software Files (GB)
    AIX Enterprise Edition 3
    Standard Edition 3
    Custom (maximum) 3
    HP-UX Enterprise Edition 2.5
    Standard Edition 2.5
    Custom (maximum) 2.5
    Linux Enterprise Edition 1.5
    Standard Edition 1.5
    Custom (maximum) 1.5
    Solaris Enterprise Edition 1.5
    Standard Edition 1.5
    Custom (maximum) 1.5
    Tru64 UNIX Enterprise Edition 3
    Standard Edition 3
    Custom (maximum) 3

  5. To determine whether the system architecture can run the software, enter one of the following commands:


    Note:

    If you do not see the expected output, you cannot install the software on this system.

    Platform Command Expected Output
    AIX
    # /usr/bin/getconf HARDWARE_BITMODE
    
    
    64
    
    HP-UX
    # /bin/getconf KERNEL_BITS
    
    
    64
    
    Linux
    # grep "model name" /proc/cpuinfo
    
    
    This command displays the processor type. Verify that the processor architecture matches the Oracle software release that you want to install.
    Solaris
    # /bin/isainfo -kv
    
    64-bit sparcv9 kernel modules
    

Check the Software Requirements

Depending on your operating system, see one of the following sections for information about checking the software requirements:


Note:

The Oracle Universal Installer performs checks on your system to verify that it meets the requirements listed for your platform. To ensure that these checks pass, verify the requirements before you start the Installer.

Checking the Software Requirements on AIX

Check that the required software and patches are installed on the system.


Check for Required Software

Depending on the products that you intend to install, verify that the following software is installed on the system. The procedure following the table describes how to check these requirements.

Installation Type or Product Requirement
All installations Operating system version and maintenance level:

AIX 5L version 5.2, Maintenance Level 1 or higher

Operating system filesets:
bos.adt.base
bos.adt.lib
bos.adt.libm
bos.perf.libperfstat
bos.perf.perfstat
bos.perf.proctools
Oracle Spatial AIXwindows Motif Libraries:
X11.motif.lib

Note: This software is required only to build the sample programs.

Oracle Messaging Gateways IBM WebSphere MQ V5.3, client and server:
mqm.Client.Bnd
mqm.Server.Bnd
Oracle JDBC/OCI Drivers You can use the following optional IBM JDK versions with the Oracle JDBC/OCI drivers, however they are not required for the installation:
  • JDK 1.4.1.1 (64-bit)

  • JDK 1.3.1.11 (32-bit)

  • JDK 1.2.2.18

Note: IBM JDK 1.4.1.2 (32-bit) is installed with this release.

Pro*C/C++,
Oracle Call Interface,
Oracle C++ Call Interface,
Oracle XML Developer’s Kit (XDK)
C for AIX Compiler V6.0.0.4:

vac.C

VisualAge C++ Compiler V6.0:

vacpp.cmp.core

Oracle Transparent Gateway for Sybase Either of the following:
  • Sybase Adaptive Server Enterprise V12 or 12.5

  • Sybase Open Client V12 or 12.5

    Open Client is required if the Sybase server is not on the local node.


To ensure that the system meets these requirements, follow these steps:

  1. To determine which version of AIX is installed, enter the following command:

    # oslevel -r
    
    

    If the operating system version is lower than AIX 5.2.0.0 Maintenance Level 1 (5200-01), upgrade your operating system to this level. AIX 5L version 5.2 maintenance packages are available from the following Web site:

    https://techsupport.services.ibm.com/server/aix.fdc
    
    
  2. To determine whether the required filesets are installed and committed, enter a command similar to the following:

    # lslpp -l bos.adt.base bos.adt.lib bos.adt.libm bos.perf.perfstat \ bos.perf.libperfstat bos.perf.proctools
    
    

    If a fileset is not installed and committed, then install it. See your operating system or software documentation for information about installing filesets.


Check for Required Patches

Depending on the products that you intend to install, verify that the following patches are installed on the system. The procedure following the table describes how to check these requirements.

Installation Type or Product Requirement
All installations Authorized Problem Analysis Reports (APARs):
  • IY43980: libperfstat.h not ANSI-compliant

  • IY44810: DSI IN BMRECYCLE

  • IY45462: Definition of isnan() in math.h incorrect

  • IY45707: J2 READAAHEAD/CIO INTERACTION

  • IY46214: dropping partial connections leaves them on so_q0

  • IY46605: exec of 32 bit application can fail on 64 bit kernel

  • IY48525: SDK 1.4.1 32-BIT SR1: CA141-20030930

  • IY51801: race condition in aio_nwait_timeout

Pro*C/C++,
Oracle Call Interface,
Oracle C++ Call Interface,
Oracle XML Developer’s Kit (XDK)
Program Technical Fixes (PTFs):
  • U489726 - vac.C.6.0.0.4 (or later)

Oracle JDBC/OCI Drivers Note: These APARs are required only if you are using the associated JDK version.

APARs required for JDK 1.4.1.1 (64-bit):

  • IY48526: SDK 1.4.1 64-BIT SR1: CAIX64141-20030930

APARs required for JDK 1.3.1.11 (32-bit):

  • IY47055: SDK 1.3.1 32-BIT PTF: CA131-20030630A

APARs required for JDK 1.2.2.18:

  • IY40034: SDK 1.2.2 PTF: CA122-20030115

Oracle Messaging Gateway Corrective service diskettes (CSDs) for WebSphere MQ:

CSD03 or later for WebSphere MQ V5.3 (U485561)


To ensure that the system meets these requirements, follow these steps:

  1. To determine whether an APAR is installed, enter a command similar to the following:

    # /usr/sbin/instfix -i -k "IY22854 IY26778 ..."
    
    

    If an APAR is not installed, download it from the following Web site and install it:

    https://techsupport.services.ibm.com/server/aix.fdc
    
    
  2. To determine whether a PTF is installed, enter a command similar to the following:

    # lslpp -l -B U489726 U485561 ...
    
    

    If a PTF is not installed, download it from the following Web site and install it:

    https://techsupport.services.ibm.com/server/aix.fdc
    
    
  3. If you require a CSD for WebSphere MQ, see the following Web site for download and installation information:

    http://www.ibm.com/software/integration/mqfamily/support/summary/aix.html
    
    
  4. To continue completing pre-installation tasks, go to the "Create Required UNIX Groups and User" section.

Checking the Software Requirements on HP-UX

Check that the required software and patches are installed on the system.


Check for Required Software

Depending on the products that you intend to install, verify that the following software is installed on the system. The procedure following the table describes how to check these requirements.

Installation Type or Product Requirement
All installations Operating system version:

HP-UX 11i (11.11) PA-RISC

Oracle Spatial HP-UX Developer's Toolkit - X11, Motif, and Imake:
X11MotifDevKit

Note: This software is required only to build the sample programs.

Oracle Messaging Gateways IBM WebSphere MQ V5.3, client and server:
MQSERIES.MQM-CL-HPUX
MQSERIES.MQM-SERVER

TIBCO Rendezvous 7.2

Pro*C/C++,
Oracle Call Interface,
Oracle C++ Call Interface,
Oracle XML Developer’s Kit (XDK)
HP C/ANSI C Compiler (B.11.11.08 or higher):
C-ANSI-C

HP aC++ Compiler (A.03.50 or higher):

ACXX
Oracle JDBC/OCI Drivers You can use the following optional Java SDK versions with the Oracle JDBC/OCI drivers, however they are not required for the installation:
  • Java SDK 1.3.1.02 with the JNDI extension

  • Java SDK 1.2.2.09

Note: Java SDK 1.4.2.00 is installed with this release.

Oracle DCE Integration (part of Oracle Advanced Security) or Oracle Net protocol support for DCE DCE (B.11.11.10 or higher):
DCE-C-Tools
DCE-CDS-Server
DCE-Core
DCE-CoreAdmin
DCE-CoreTools
DCE-SEC-Server
Oracle Transparent Gateway for Sybase Either of the following:
  • Sybase Adaptive Server Enterprise V12 or 12.5

  • Sybase Open Client V12 or 12.5

    Open Client is required if the Sybase server is not on the local node.

Oracle Transparent Gateway for Informix One of the following:
  • Informix Dynamic Server v7.3, 7.4, or 9.*

  • Informix ESQL/C v7.3, 7.4, or 9.*

    ESQL/C is required if the Informix server is not on the local node.

Note: This version of the gateway does not support Informix SE.

Oracle Transparent Gateway for Ingress Ingres II version 2.0, 2.5, or 2.6
Oracle Transparent Gateway for Teradata NCR Teradata ODBC Driver v02.04.00.00

To ensure that the system meets these requirements, follow these steps:

  1. To determine which version of HP-UX is installed, enter the following command:

    # uname -a
    HP-UX hostname B.11.11 U 9000/800 109444686 unlimited-user license
    
    

    In this example, the version of HP-UX 11i is 11.11.

  2. To determine whether a bundle, product, or fileset is installed, enter a command similar to the following, where level is bundle, product, or fileset:

    # /usr/sbin/swlist -l level | more
    
    

    If a required bundle, product, or fileset is not installed, you must install it. See your operating system or software documentation for information about installing products.


Check for Required Patches

Depending on the products that you intend to install, verify that the following patches are installed on the system. The procedure following the table describes how to check these requirements.


Note:

There may be more recent versions of the patches listed installed on the system. If a listed patch is not installed, determine whether a more recent version is installed before installing the version listed.

Installation Type or Product Requirement
All installations Quality Pack bundle:

HP-UX 11i Quality Pack (GOLDQPK11i), June 2003 or later:

GOLDAPPS11i
GOLDBASE11i
All installations Patches for HP-UX 11i (11.11):
  • PHCO_28123: cumulative SAM patch

  • PHKL_29198: Psets Enablement Patch; top(1)

  • PHNE_28476: Cumulative STREAMS Patch

  • PHNE_28923: LAN product cumulative patch

  • PHSS_28871: ld(1) and linker tools cumulative patch

  • PHSS_28880: HP aC++ -AA runtime libraries (aCC A.03.50)

All installations Patches for JDK on HP-UX 11i (11.11):
  • PHCO_26331: mountall cumulative patch, Dev IDs enabler

  • PHCO_29109: Pthread enhancement and fixes

  • PHKL_25468: eventport (/dev/poll) pseudo driver

  • PHKL_25842: Thread Abort

  • PHKL_25993: thread nostop for NFS, rlimit, Ufalloc fix

  • PHKL_25994: Thread NOSTOP, Psets Enablement, Ufalloc

  • PHKL_25995: ufalloc;VxFS3.5;SPP fragmentation

  • PHKL_26468: Shared synchronization performance support

  • PHKL_28489: copyin EFAULT, LDCD access type

Note: See the following Web site for information about additional patches that might be required by JDK 1.4.2:

http://www.hp.com/products1/unix/java/patches/index.html
Pro*C/C++,
Oracle Call Interface,
Oracle C++ Call Interface,
Oracle XML Developer’s Kit (XDK)
Patches for HP-UX 11i (11.11):
  • PHSS_29484: ANSI C compiler B.11.11.08 cumulative patch

  • PHSS_29485: +O4/PBO Compiler B.11.11.08 cumulative patch

Oracle DCE Integration (part of Oracle Advanced Security) or Oracle Net protocol support for DCE Patches for HP-UX 11i (11.11):
  • PHSS_28386: HP DCE/9000 1.8 DCE Client IPv6 patch

  • PHSS_28387: HP DCE/9000 1.8 Server/DevTools cum. patch

  • PHSS_28388: HP DCE/9000 1.8 Integrated Login cum. patch

  • PHSS_29669: HP DCE/9000 1.8 DCE Client IPv6 patch

Oracle Messaging Gateway Corrective service diskettes (CSDs) for WebSphere MQ:
  • CSD05 or later for WebSphere MQ V5.3


To ensure that the system meets these requirements, follow these steps:

  1. To determine whether the HP-UX 11i Quality Pack is installed, enter the following command:

    # /usr/sbin/swlist -l bundle | grep GOLD
    
    

    If the Quality Pack is not installed, or if the date is before June 2003, download the latest Quality Pack from the following Web site and install it:

    http://www.software.hp.com/SUPPORT_PLUS/qpk.html
    
    
  2. To determine whether a patch is installed, enter a command similar to the following:

    # /usr/sbin/swlist -l patch | grep PHSS_28880
    
    

    Alternatively, to list all installed patches, enter the following command:

    # /usr/sbin/swlist -l patch | more
    
    

    If a required patch is not installed, download it from the following Web site and install it:

    http://itresourcecenter.hp.com
    
    

    If the Web site shows a more recent version of the patch, download and install that version.

  3. If you require a CSD for WebSphere MQ, see the following Web site for download and installation information:

    http://www.ibm.com/software/integration/mqfamily/support/summary/hpx.html
    

Create Required Symbolic Links

Note:

This task is required only if the Motif 2.1 Development Environment package (X11MotifDevKit.MOTIF21-PRG) is not installed.

To allow you to successfully relink Oracle products after installing this software, enter the following commands to create required X library symbolic links in the /usr/lib directory:

# cd /usr/lib
# ln -s libX11.3 libX11.sl
# ln -s libXIE.2 libXIE.sl
# ln -s libXext.3 libXext.sl
# ln -s libXhp11.3 libXhp11.sl
# ln -s libXi.3 libXi.sl
# ln -s libXm.4 libXm.sl
# ln -s libXp.2 libXp.sl
# ln -s libXt.3 libXt.sl
# ln -s libXtst.2 libXtst.sl

To continue completing pre-installation tasks, go to the "Create Required UNIX Groups and User" section.

Checking the Software Requirements on Linux

Check that the required software and patches are installed on the system.


Check for Required Software

Depending on the products that you intend to install, verify that the following software is installed on the system. The procedure following the table describes how to check these requirements.

Installation Type or Product Requirement
All installations One of the following operating system versions:
  • Red Hat Enterprise Linux AS/ES 2.1 or 3 (x86)

  • UnitedLinux 1.0, service pack 3 or higher (x86)

The following packages (or higher versions) must be installed:

All distributions:

make-3.79
binutils-2.11.90.0.8-12

Red Hat Enterprise Linux 2.1 (x86):

gcc-2.96.108.1
openmotif-2.1.30-11

Red Hat Enterprise Linux 3:

gcc-3.2.3-2
compat-db-4.0.14.5
compat-gcc-7.3-2.96.122
compat-gcc-c++-7.3-2.96.122
compat-libstdc++-7.3-2.96.122
compat-libstdc++-devel-7.3-2.96.122
openmotif-2.2.2-16
setarch-1.3-1 

UnitedLinux 1.0 (x86):

gcc-3.2.2-38
openmotif-2.2.2-124
Oracle Spatial X Window System development package:
  • Red Hat:

    XFree86
    XFree86-devel
    
  • UnitedLinux:

    xf86
    xdevel
    

Note: This software is required only to build the sample programs.

Oracle Messaging Gateways IBM WebSphere MQ V5.3, client and server:
MQSeriesClient
MQSeriesServer
MQSeriesRuntime
Pro*C/C++,
Oracle Call Interface,
Oracle C++ Call Interface,
Oracle XML Developer’s Kit (XDK)
The version of Gnu gcc listed previously for your distribution is supported for use with these products.

Note: Intel C++ Compiler v7.1.0.28 or higher is also supported, however it is not required for installation.

Oracle JDBC/OCI Drivers You can use the following optional JDK version with the Oracle JDBC/OCI drivers, however it is not required for the installation:
  • Sun JDK 1.3.1_09 with the JNDI extension

Note: JDK 1.4.2_02 is installed with this release.


To ensure that the system meets these requirements, follow these steps:

  1. To determine which distribution and version of Linux is installed, enter the following command:

    # cat /etc/issue
    
    

    Note:

    Only the distributions and versions listed in the previous table are supported. Do not install the software on other versions of Linux.

  2. On UnitedLinux 1.0 systems only, enter the following command to determine whether Service Pack 3 is installed:

    # uname -r
    2.4.21-138-default
    
    

    This command shows the kernel version (2.4.21-138) and type (default). If the kernel version is less than 2.4.21-138, contact your UnitedLinux vendor for information about obtaining and installing Service Pack 3.

  3. To determine whether the required packages are installed, enter a command similar to the following:

    # rpm -q package_name
    
    

    If a package is not installed, install it from your Linux distribution media.


Check for Required Patches

Depending on the products that you intend to install, verify that the following patches are installed on the system. The procedure following the table describes how to check these requirements.


Note:

If the following patches are superseded by later versions, install the latest version.

Installation Type or Product Requirement
All installations Red Hat Enterprise Linux 2.1 (x86) errata:
  • RHSA-2003:195-06
    Updated kernel addresses security vulnerabilities

  • RHSA-2003:022-09
    Updated glibc packages fix vulnerabilities in resolver

Oracle Messaging Gateway Corrective service diskette (CSD) for WebSphere MQ:

CSD05 or later for WebSphere MQ V5.3


To ensure that the system meets these requirements, follow these steps:

  1. On Red Hat Enterprise Linux 2.1 systems only, follow these steps:

    1. To determine whether kernel update RHSA-2003:195-06 or later is installed, enter the following command:

      # uname -r
      2.4.9-e.25
      
      

      This command shows the kernel version (2.4.9) and errata level (e.25). If the errata level is less than 25, install the latest kernel update. See the following Web site for information about kernel update RHSA-2003:195-06:

      https://rhn.redhat.com/errata/RHSA-2003-195.html
      
      
    2. To determine whether fix RHSA-2003:022-09 is installed, enter the following command:

      # rpm -q glibc
      glibc-2.2.4-31
      
      

      If the version shown is less than 2.2.4-31, see the following Web site for information about fix RHSA-2003:022-09:

      https://rhn.redhat.com/errata/RHSA-2003-022.html
      
      
  2. If you require a CSD for WebSphere MQ, see the following Web site for download and installation information:

    http://www.ibm.com/software/integration/mqfamily/support/summary/lin.html
    
    
  3. To continue completing pre-installation tasks, go to the "Create Required UNIX Groups and User" section.

Checking the Software Requirements on Solaris

Check that the required software and patches are installed on the system.


Check for Required Software

Depending on the products that you intend to install, verify that the following software is installed on the system. The procedure following the table describes how to check these requirements.

Installation Type or Product Requirement
All installations Operating system versions:

Solaris 8 or Solaris 9, 64-bit

Operating system packages:
SUNWarc
SUNWbtool
SUNWhea
SUNWlibm
SUNWlibms
SUNWsprot
SUNWsprox
SUNWtoo
SUNWi1of
SUNWi1cs
SUNWi15cs
SUNWxwfnt

Note: You might also require additional font packages for Java, depending on your locale. See the following Web site for more information:

http://java.sun.com/j2se/1.4.2/font-requirements.html
Oracle Spatial Motif RunTime Kit:

SUNWmfrun

Note: This software is required only to build the sample programs.

Oracle Messaging Gateways IBM WebSphere MQ V5.3, client and server:
mqm

TIBCO Rendezvous 7.2

Pro*C/C++,
Oracle Call Interface,
Oracle C++ Call Interface,
Oracle XML Developer’s Kit (XDK)
Sun ONE Studio 8 (C and C++ 5.5)
Oracle JDBC/OCI Drivers You can use the following optional JDK versions with the Oracle JDBC/OCI drivers, however they are not required for the installation:
  • Sun Java 2 SDK Standard Edition 1.3.1_10 and the JNDI extension

  • Sun Java 2 SDK Standard Edition 1.2.2_17 and the JNDI extension

Note: JDK 1.4.2_01 is installed with this release.

Oracle Transparent Gateway for Sybase Either of the following:
  • Sybase Adaptive Server Enterprise V12 or 12.5

  • Sybase Open Client V12 or 12.5

    Open Client is required if the Sybase server is not on the local node.

Oracle Transparent Gateway for Informix One of the following:
  • Informix Dynamic Server v7.3, 7.4, or 9.*

  • Informix ESQL/C v7.3, 7.4, or 9.*

    ESQL/C is required if the Informix server is not on the local node.

Note: This version of the gateway does not support Informix SE.

Oracle Transparent Gateway for Ingress Ingres II version 2.0, 2.5, or 2.6
Oracle Transparent Gateway for Teradata NCR Teradata ODBC Driver v02.04.00.00

To ensure that the system meets these requirements, follow these steps:

  1. To determine which version of Solaris is installed, enter the following command:

    # uname -r
    
    

    If the operating system version is lower than Solaris 8 (5.8), upgrade your operating system to this level.

  2. To determine whether the required packages are installed, enter a command similar to the following:

    # pkginfo -i SUNWarc SUNWbtool SUNWhea SUNWlibm SUNWlibms SUNWsprot \ SUNWsprox SUNWtoo SUNWi1of SUNWi1cs SUNWi15cs SUNWxwfnt
    
    

    If a package is not installed, then install it. See your operating system or software documentation for information about installing packages.


Check for Required Patches

Depending on the products that you intend to install, verify that the following patches are installed on the system. The procedure following the table describes how to check these requirements.


Note:

The patch versions shown in the following table are minimum versions. Higher versions of the same patches are also supported.

Installation Type or Product Requirement
All installations Patches for Solaris 8:

All of the patches included in the J2SE Patch Cluster for Solaris 8:

  • 108528-23, SunOS 5.8: kernel update patch

  • 108652-66, X11 6.4.1: Xsun patch

  • 108773-18, SunOS 5.8: IIIM and X I/O Method patch

  • 108921-16, CDE 1.4: dtwm patch

  • 108940-53, Motif 1.2.7 and 2.1.1: Runtime lib. patch for Solaris 8

  • 108987-13, SunOS 5.8: Patch for patchadd and patchrm

  • 108989-02, /usr/kernel/sys/acctctl & /.../exacctsys patch

  • 108993-18, SunOS 5.8: LDAP2 client, libc, ... lib. patch

  • 109147-24, SunOS 5.8: linker patch

  • 110386-03, SunOS 5.8: RBAC Feature Patch

  • 111023-02, SunOS 5.8: /kernel/fs/mntfs and ... sparcv9/mntfs

  • 111111-03, SunOS 5.8: /usr/bin/nawk patch

  • 111308-03, SunOS 5.8: /usr/lib/libmtmalloc.so.1 patch

  • 111310-01, SunOS 5.8: /usr/lib/libdhcpagent.so.1 patch

  • 112396-02, SunOS 5.8: /usr/bin/fgrep patch

The following additional patches:

  • 111721-04, SunOS 5.8: Math Library (libm) patch

  • 112003-03, SunOS 5.8: Unable to load fontset ... iso-1 or iso-15

  • 112138-01, SunOS 5.8: usr/bin/domainname patch

All installations Patches for Solaris 9:
  • 112233-11: SunOS 5.9: Kernel Patch

  • 111722-04: SunOS 5.9: Math Library (libm) patch

Pro*C/C++,
Oracle Call Interface,
Oracle C++ Call Interface,
Oracle XML Developer’s Kit (XDK)
Patches for Solaris 8 and Solaris 9:
  • 112758-02, dbx 7.1: Patch for S1S8CC Debugger

  • 112760-05, C 5.5: Patch for S1S8CC C compiler

  • 112763-06, Compiler Common S1S8CC: Patch for S1S8CC C C++ F77 F95

  • 113817-03, C++ 5.5: Patch for S1S8CC C++ compiler

  • 113820-02, Compiler Common 7.1: Patch for S1S8CC Math Libraries

  • 113823-03, ILD 4.1: Patch for S1S8CC Incremental Linker

Oracle Messaging Gateway Corrective service diskettes (CSDs) for WebSphere MQ:

CSD06 or later for WebSphere MQ V5.3


To ensure that the system meets these requirements, follow these steps:

  1. To determine whether an operating system patch is installed, enter a command similar to the following:

    # /usr/sbin/patchadd -p | grep patch_number
    
    

    If an operating system patch is not installed, download it from the following Web site and install it:

    http://sunsolve.sun.com
    
    
  2. If you require a CSD for WebSphere MQ, see the following Web site for download and installation information:

    http://www.ibm.com/software/integration/mqfamily/support/summary/sun.html
    
    
  3. To continue completing pre-installation tasks, go to the "Create Required UNIX Groups and User" section.

Checking the Software Requirements on Tru64 UNIX

Check that the required software and patches are installed on the system.


Check for Required Software

Depending on the products that you intend to install, verify that the following software is installed on the system. The procedure following the table describes how to check these requirements.

Installation Type or Product Requirement
All installations Operating system version:

HP Tru64 UNIX V5.1B

Software Development Kit (SDK) v 1.4.2 for the Tru64 UNIX Operating System for the Java Platform (JDK 1.4.2)
Operating system subsets:
OSFCMPLRS
OSFLIBA
OSFPGMR
OSFSER
OSFX11
Oracle DCE Integration (part of Oracle Advanced Security) or Oracle Net protocol support for DCE DCE v4.1 or later:
DCECDS
DECRTS
DCESEC
Oracle Spatial X Window and X/Motif software:
OSFXDEVX
OSFXINCLUDE
OSFXLIBA

Note: This software is required only to build the sample programs.

Oracle Messaging Gateways IBM MQSeries V5.1 client and server:
MQS_CLIENT
MQS_SERVER

MQSeries classes for Java and MQSeries classes for Java Message Service V5.2.2 (SupportPac MA88):

MQS_MQJAVA
Pro*C/C++,
Oracle Call Interface,
Oracle C++ Call Interface,
Oracle XML Developer’s Kit (XDK)
Compaq C Compiler V6.5-207 (dtk):
DTCCMPLR

Compaq C++ Version 6.5-014:

CXXBASE
CXXLIB
CXXOLD
Oracle JDBC/OCI Drivers You can use the following optional JDK versions with the Oracle JDBC/OCI drivers, however they are not required for the installation:
  • SDK v 1.3.1-5

  • SDK v 1.2.2-12

Note: SDK v 1.4.2 must be installed before you install the software.

Oracle Transparent Gateway for Sybase Either of the following:
  • Sybase Adaptive Server Enterprise V12 or 12.5

  • Sybase Open Client V12 or 12.5

    Open Client is required if the Sybase server is not on the local node.


To ensure that the system meets these requirements, follow these steps:

  1. To determine which version of Tru64 UNIX is installed, enter the following command:

    # /usr/sbin/sizer -v
    Compaq Tru64 UNIX V5.1B (Rev. 2650); Mon Nov  3 10:13:28 PST 200 
    
    

    In this example, the version shown is V5.1B. If necessary, see your operating system documentation for information about upgrading the operating system.

  2. To determine whether Java SDK 1.4.2 is installed, enter the following command:

    # /usr/sbin/setld -i JAVA142 | more
    
    

    If Java SDK 1.4.2 is installed, this command displays the paths to all of the installed files. Note the path of the Java home directory. You must specify this value during the installation. The default path is:

    /usr/opt/java142
    
    

    If this command returns the message Unknown subset, Java SDK 1.4.2 is not installed. Download Java SDK 1.4.2.01 or higher from the following Web site and install it:

    http://www.compaq.com/java/download/index.html
    
    
  3. To determine whether the required software subsets are installed, enter one of the following commands:

    • To view the list of all software subsets installed on the system, enter the following command:

      # /usr/sbin/setld -i | more
      
      
    • To determine whether a particular software subset is installed, enter a command similar to the following:

      # /usr/sbin/setld -i | grep subsetname
      
      

    If necessary, install the required software subset. If you require the Compaq C Compiler V6.5-207 (dtk), you can download it from the following Web site:

    http://www.tru64unix.compaq.com/dtk/
    
    
  4. If you intend to use Oracle Messaging Gateway and require MQSeries classes for Java and MQSeries classes for Java Message Service (SupportPac MA88), download it from the following Web site:

    http://www.ibm.com/software/integration/support/supportpacs/individual/ma88.html
    

Check for Required Patches

Depending on the products that you intend to install, verify that the following patches are installed on the system. The procedure following the table describes how to check these requirements.

Installation Type or Product Requirement
All installations Tru64 UNIX V5.1B Patch Kit 2 or higher:
T64V51BB22AS0002-20030415

HP Tru64 UNIX 5.1B PK2 BL22 Fixes for AdvFS Panic in _OtsMove; and Possible Memory Corruption:

T64KIT0020879-V51BB22-E-20031125
Oracle Messaging Gateway Corrective service diskette (CSD) for MQSeries:

CSD09 or later for MQSeries V5.1


To determine whether the required patch kits are installed, enter the following command:

# /usr/sbin/dupatch -track -type kit

If this command does not display the identifiers shown in the previous table for the required patch kits (or the identifier for a higher patch kit level), download the latest patch kit from the following Web site and install it (registration is required to access this Web site):

http://itrc.hp.com/service/patch/mainPage.do

If you require a CSD for MQSeries, see the following Web site for download and installation information:

http://www.ibm.com/software/integration/mqfamily/support/summary/dig.html

Create Required UNIX Groups and User

Depending on whether this is the first time Oracle software is being installed on this system and on the products that you are installing, you may need to create several UNIX groups and a UNIX user.

The following UNIX groups and user are required if you are installing Oracle Database:

The following UNIX group and user are required for all installations:

A single Oracle Inventory group is required for all installations of Oracle software on the system. After the first installation of Oracle software, you must use the same Oracle Inventory group for all subsequent Oracle software installations on that system. However, you can choose to create different Oracle software owner users, OSDBA groups, and OSOPER groups (other than oracle, dba, and oper) for separate installations. By using different groups for different installations, members of these different groups have DBA privileges only on the associated databases rather than on all databases on the system.


See Also:

The Oracle Database Administrator’s Reference for UNIX Systems and the Oracle Database Administrator’s Guide contain more information about the OSDBA and OSOPER groups and the SYSDBA and SYSOPER privileges.

The following sections describe how to create the required UNIX user and groups.


Note:

The following sections describe how to create local users and groups. As an alternative to creating local users and groups, you could create the appropriate users and groups in a directory service, for example, Network Information Services (NIS). For information about using directory services, contact your system administrator or see your operating system documentation.

Creating the Oracle Inventory Group

You must create the Oracle Inventory group if it does not already exist. The following subsections describe how to determine the Oracle Inventory group name, if it exists, and how to create it if necessary.


Determine Whether the Oracle Inventory Group Exists

When you install Oracle software on the system for the first time, the Installer creates the oraInst.loc file. This file identifies the name of the Oracle Inventory group and the path of the Oracle Inventory directory. To determine whether the Oracle Inventory group exists, enter the following command:

  • AIX or Linux:

    # more /etc/oraInst.loc
    
    
  • Other operating systems:

    # more /var/opt/oracle/oraInst.loc
    
    

If the oraInst.loc file exists, the output from this command is similar to the following:

inventory_loc=/u01/app/oracle/oraInventory
inst_group=oinstall

The inst_group parameter shows the name of the Oracle Inventory group (oinstall).


Create the Oracle Inventory Group

If the oraInst.loc file does not exist, create the Oracle Inventory group as follows, depending on your operating system:

  • AIX:

    1. Enter the following command:

      # smit security
      
      
    2. Choose the appropriate menu items to create the oinstall group.

    3. Press F10 to exit.

  • Other operating systems:

    Enter the following command to create the oinstall group:

    # /usr/sbin/groupadd oinstall
    
    

Creating the OSDBA Group

You must create an OSDBA group in the following circumstances:

  • An OSDBA group does not exist, for example, if this is the first installation of Oracle Database software on the system

  • An OSBDA group exists, but you want to give a different group of UNIX users database administrative privileges in a new Oracle installation

If the OSDBA group does not exist or if you require a new OSDBA group, create it as follows, depending on your operating system. In the following procedure, use the group name dba unless a group with that name already exists.

  • AIX:

    1. Enter the following command:

      # smit security
      
      
    2. Choose the appropriate menu items to create the dba group.

    3. Press F10 to exit.

  • Other operating systems:

    Enter the following command to create the dba group:

    # /usr/sbin/groupadd dba
    

Creating an OSOPER Group (Optional)

Create an OSOPER group only if you want to identify a group of UNIX users with a limited set of database administrative privileges (SYSOPER operator privileges). For most installations, it is sufficient to create only the OSDBA group. If you want to use an OSOPER group, you must create it in the following circumstances:

  • If an OSOPER group does not exist, for example, if this is the first installation of Oracle Database software on the system

  • If an OSOPER group exists, but you want to give a different group of UNIX users database operator privileges in a new Oracle installation

If you require an new OSOPER group, create it as follows, depending on your operating system. In the following procedure, use the group name oper unless a group with that name already exists.

  • AIX:

    1. Enter the following command:

      # smit security
      
      
    2. Choose the appropriate menu items to create the oper group.

    3. Press F10 to exit.

  • Other operating systems:

    Enter the following command to create the oper group:

    # /usr/sbin/groupadd oper
    
    

Creating the Oracle Software Owner User

You must create an Oracle software owner user in the following circumstances:

  • If an Oracle software owner user does not exist, for example, if this is the first installation of Oracle software on the system

  • If an Oracle software owner user exists, but you want to use a different UNIX user, with different group membership, to give database administrative privileges to those groups in a new Oracle Database installation


Determine Whether an Existing Oracle Software Owner User Exists

To determine whether an Oracle software owner user named oracle exists, enter one of the following commands:

  • Solaris:

    # id -a oracle
    
    
  • Other operating systems:

    # id oracle
    
    

If the oracle user exists, the output from this command is similar to the following:

uid=440(oracle) gid=200(oinstall) groups=201(dba),202(oper)

If the user exists, determine whether you want to use the existing user or create a new user. If you want to use the existing user, ensure that the user’s primary group is the Oracle Inventory group and that it is a member of the appropriate OSDBA and OSOPER groups. See one of the following sections for more information:


Note:

If necessary, contact your system administrator before using or modifying an existing user.


Create a New Oracle Software Owner User

If the Oracle software owner user does not exist or if you require a new Oracle software owner user, create it as follows, depending on your operating system. In the following procedure, use the user name oracle unless a user with that name already exists.

  • AIX:

    1. Enter the following command:

      # smit security
      
      
    2. Choose the appropriate menu items to create the oracle user, specifying the following information:

      • In the Primary GROUP field, specify the Oracle Inventory group, for example oinstall.

      • In the Group SET field, specify the OSDBA group and if required, the OSOPER group, for example dba or dba,oper.


      Note:

      The UID for the oracle user must be less than 65536.

    3. Press F10 to exit.

    4. Set the password of the oracle user:

      # passwd oracle
      
      
  • Other operating systems:

    1. To create the oracle user, enter a command similar to the following:

      # /usr/sbin/useradd -g oinstall -G dba[,oper] oracle
      
      

      In this command:

      • The -g option specifies the primary group, which must be the Oracle Inventory group, for example oinstall

      • The -G option specifies the secondary groups, which must include the OSDBA group and if required, the OSOPER group, for example dba or dba,oper

    2. Set the password of the oracle user:

      # passwd oracle
      
      

See one of the following sections to continue:


Modify an Existing Oracle Software Owner User

If the oracle user exists, but its primary group is not oinstall or it is not a member of the appropriate OSDBA or OSOPER groups, you can modify it as follows depending on your operating system:

  • AIX:

    1. Enter the following command:

      # smit security
      
      
    2. Choose the appropriate menu items to modify the oracle user.

    3. In the Primary GROUP field, specify the Oracle Inventory group, for example oinstall.

    4. In the Group SET field, specify the secondary groups, for example dba and oper.

    5. Press F10 to exit.

  • Other operating systems:

    Enter a command similar to the following, specifying the primary group using the -g option and any required secondary groups using the -G option:

    # /usr/sbin/usermod -g oinstall -G dba[,oper] oracle
    
    

HP-UX Only: Creating an Unprivileged User


Note:

This section applies only to HP-UX systems. If you are installing the software on a different system, see the "Verifying That the UNIX User nobody Exists" section.

You must create an new unprivileged local user to own the extjob executable. You can use any user name for this user, but this document uses the name extjob. To create the extjob user, enter the following command on all cluster nodes:

# /usr/sbin/useradd extjob

To continue, see the "HP-UX Only: Grant Privileges to the OSDBA Group" section.

Verifying That the UNIX User nobody Exists


Note:

This section does not apply to installations on HP-UX systems.

Before installing the software, verify that the UNIX user nobody exists on the system:

  1. To determine whether the user exists, enter the following command:

    # id nobody
    
    

    If this command displays information about the nobody user, you do not have to create that user.

  2. If the nobody user does not exist, enter the one of the following commands to create it:

    • AIX:

      # smit security
      
      

      Specify the appropriate options to create an unprivileged nobody user, then press F10 to exit.

    • Other operating systems:

      # /usr/sbin/useradd nobody
      
      

HP-UX Only: Grant Privileges to the OSDBA Group


Note:

If you are installing Oracle Database on a platform other than HP-UX, go to the "Configure Kernel Parameters and Shell Limits" section.

To enhance the performance of the software on HP-UX systems, you must grant several system privileges to the OSDBA group. Complete the following steps if you are installing the software on HP-UX:

  1. Using any text editor, open the /etc/privgroup file, or create it if necessary.

  2. Add or edit the following line, which begins with the name of the OSDBA group, specifying the privileges MLOCK, RTPRIO, and RTSCHED, that you want to grant to this group every time the system reboots:

    dba MLOCK RTPRIO RTSCHED
    
    
  3. Save the file and exit from the text editor.

  4. Enter the following command to grant the privileges to the OSDBA group:

    # /usr/sbin/setprivgrp -f /etc/privgroup
    
    
  5. Enter the following command to verify that the privileges are set correctly:

    # /usr/sbin/getprivgrp dba
    
    

Configure Kernel Parameters and Shell Limits


Note:

The kernel parameter and shell limit values shown in the following sections are recommended values only. For production database systems, Oracle recommends that you tune these values to optimize the performance of the system. See your operating system documentation for more information about tuning kernel parameters.

Depending on your operating system, see one of the following sections for information about configuring the system kernel parameters and shell limits:

Configuring Shell Limits and System Configuration Parameters on AIX

On AIX systems, you do not need to configure kernel parameters. However, Oracle recommends that you set shell limits and system configuration parameters as described in this section.


Configure Shell Limits

Verify that the shell limits shown in the following table are set to the values shown. The procedure following the table describes how to verify and set the values.

Shell Limit (As Shown in smit) Recommended Value
Soft FILE size -1 (Unlimited)
Soft CPU time -1 (Unlimited)

Note: This is the default value.

Soft DATA segment -1 (Unlimited)
Soft STACK size -1 (Unlimited)

To view the current value specified for these shell limits, and to change them if necessary, follow these steps:

  1. Enter the following command:

    # smit chuser
    
    
  2. In the User NAME field, enter the user name of the Oracle software owner, for example oracle.

  3. Scroll down the list and verify that the value shown for the soft limits listed in the previous table is -1.

    If necessary, edit the existing value.

  4. When you have finished making changes, press F10 to exit.


Configure System Configuration Parameters

Verify that the maximum number of processes allowed per user is set to 2048 or greater. The procedure following the table describes how to verify and set the value.


Note:

For production systems, this value should be at least 128 plus the sum of the PROCESSES and PARALLEL_MAX_SERVERS initialization parameters for each database running on the system.

  1. Enter the following command:

    # smit chgsys
    
    
  2. Verify that the value shown for Maximum number of PROCESSES allowed per user is greater than or equal to 2048.

    If necessary, edit the existing value.

  3. When you have finished making changes, press F10 to exit.

Configuring Kernel Parameters on HP-UX

Verify that the kernel parameters shown in the following table are set either to the formula shown, or to values greater than or equal to the recommended value shown. The procedure following the table describes how to verify and set the values.

Parameter Recommended Formula or Value
ksi_alloc_max (nproc*8)
max_thread_proc 256
maxdsiz 1073741824 (1 GB)
maxdsiz_64bit 2147483648 (2 GB)
maxssiz 134217728 (128 MB)
maxssiz_64bit 1073741824 (1 GB)
maxswapchunks 16384
maxuprc ((nproc*9)/10)
msgmap (2+msgmni)
msgmni 4096
msgseg 32767
msgtql 4096
ncsize (ninode+vx_ncsize)
nfile (15*nproc+2048)
nflocks 4096
ninode (8*nproc+2048)
nkthread (((nproc*7)/4)+16)
nproc 4096
semmap (semmni+2)
semmni 4096
semmns (semmni*2)
semmnu (nproc-4)
semvmx 32767
shmmax The size of physical memory (0X40000000) or 1073741824, whichever is greater.

Note: To avoid performance degradation, the value should be greater than or equal to the size of the SGA.

shmmni 512
shmseg 120
vps_ceiling 64


Note:

If the current value for any parameter is higher than the value listed in this table, do not change the value of that parameter.

To view the current value or formula specified for these kernel parameters, and to change them if necessary, follow these steps:

  1. Optionally, set the DISPLAY environment variable to specify the display of the local system:

    • Bourne, Bash, or Korn shell:

      $ DISPLAY=local_host:0.0 ; export DISPLAY
      
      
    • C shell:

      % setenv DISPLAY local_host:0.0
      
      
  2. Start System Administration Manager (SAM):

    # /usr/sbin/sam
    
    
  3. Choose the Kernel Configuration area, then choose the Configurable Parameters area.

  4. Check the value or formula specified for each of these parameters and, if necessary, modify that value or formula.

    If necessary, see the SAM online help for more information about completing this step.

  5. Exit from SAM.

    If you modified the value specified for any static parameter, you must rebuild the kernel and reboot the system.

  6. If necessary, when the system restarts, log in and switch user to root.

  7. To continue completing pre-installation tasks, go to the "Identify Required Software Directories" section.

Configuring Kernel Parameters on Linux

Verify that the kernel parameters shown in the following table are set to values greater than or equal to the recommended value shown. The procedure following the table describes how to verify and set the values.

Parameter Value File
semmsl
semmns
semopm
semmni
250
32000
100
128
/proc/sys/kernel/sem
shmall 2097152 /proc/sys/kernel/shmall
shmmax Half the size of physical memory /proc/sys/kernel/shmmax
shmmni 4096 /proc/sys/kernel/shmmni
file-max 65536 /proc/sys/fs/file-max
ip_local_port_range 1024 65000 /proc/sys/net/ipv4/ip_local_port_range


Note:

If the current value for any parameter is higher than the value listed in this table, do not change the value of that parameter.

To view the current value specified for these kernel parameters, and to change them if necessary, follow these steps:

  1. Enter the commands shown in the following to view the current values of the kernel parameters:


    Note:

    Make a note of the current values and identify any values that you must change.

    Parameter Command
    semmsl, semmns, semopm, and semmni # /sbin/sysctl -a | grep sem

    This command displays the value of the semaphore parameters in the order listed.

    shmall, shmmax, and shmmni # /sbin/sysctl -a | grep shm
    file-max # /sbin/sysctl -a | grep file-max
    ip_local_port_range # /sbin/sysctl -a | grep ip_local_port_range

    This command displays a range of port numbers.


  2. If the value of any kernel parameter is different to the recommended value, complete the following steps:

    1. Using any text editor, create or edit the /etc/sysctl.conf file and add or edit lines similar to the following:


      Note:

      Include lines only for the kernel parameter values that you want to change. For the semaphore parameters (kernel.sem), you must specify all four values. However, if any of the current values are larger than the recommended value, specify the larger value.

      kernel.shmall = 2097152
      kernel.shmmax = 2147483648
      kernel.shmmni = 4096
      kernel.sem = 250 32000 100 128
      fs.file-max = 65536
      net.ipv4.ip_local_port_range = 1024 65000
      
      

      By specifying the values in the /etc/sysctl.conf file, they persist when you reboot the system.

    2. Enter the following command to change the current values of the kernel parameters:

      # /sbin/sysctl -p
      
      

      Review the output from this command to verify that the values are correct. If the values are incorrect, edit the /etc/sysctl.conf file, then enter this command again.

    3. On UnitedLinux only, enter the following command to cause the system to read the /etc/sysctl.conf file when it reboots:

      # /sbin/chkconfig boot.sysctl on
      
      

Set Shell Limits for the oracle User

To improve the performance of the software on Linux systems, you must increase the following shell limits for the oracle user:

Shell Limit Item in limits.conf Hard Limit
Maximum number of open file descriptors nofile 65536
Maximum number of processes available to a single user nproc 16384

To increase the shell limits:

  1. Add the following lines to /etc/security/limits.conf file:

    *               soft    nproc   2047
    *               hard    nproc   16384
    *               soft    nofile  1024
    *               hard    nofile  65536
    
    
  2. Add the following line to the /etc/pam.d/login file, if it does not already exist:

    session    required     /lib/security/pam_limits.so
    
    
  3. Depending on the oracle user's default shell, make the following changes to the default shell start-up file:

    • For the Bourne, Bash, or Korn shell, add the following lines to the /etc/profile file (or the /etc/profile.local file on UnitedLinux systems):

      if [ $USER = "oracle" ]; then
              if [ $SHELL = "/bin/ksh" ]; then
                    ulimit -p 16384
                    ulimit -n 65536
              else
                    ulimit -u 16384 -n 65536
              fi
      fi
      
      
    • For the C or tcsh shell, add the following lines to the /etc/csh.login file (or the /etc/csh.login.local file on UnitedLinux systems):

      if ( $USER == "oracle" ) then
              limit maxproc 16384
              limit descriptors 65536
      endif
      
      
  4. To continue completing pre-installation tasks, go to the "Identify Required Software Directories" section.

Configuring Kernel Parameters on Solaris

Verify that the kernel parameters shown in the following table are set to values greater than or equal to the recommended value shown. The procedure following the table describes how to verify and set the values.

Parameter Recommended Value
noexec_user_stackFootref 1 1
semsys:seminfo_semmni 100
semsys:seminfo_semmns 1024
semsys:seminfo_semmsl 256
semsys:seminfo_semvmx 32767
shmsys:shminfo_shmmax 4294967295
shmsys:shminfo_shmminFoot  1
shmsys:shminfo_shmmni 100
shmsys:shminfo_shmsegFootref 1 10

Footnote This parameter is obsolete in Solaris 9

Note:

If the current value for any parameter is higher than the value listed in this table, do not change the value of that parameter.

To view the current value specified for these kernel parameters, and to change them if necessary, follow these steps:

  1. To view the current values of these parameters, enter the following commands:

    # grep noexec_user_stac /etc/system
    # /usr/sbin/sysdef | grep SEM
    # /usr/sbin/sysdef | grep SHM
    
    
  2. If you must change any of the current values, follow these steps:

    1. Create a backup copy of the /etc/system file, for example:

      # cp /etc/system /etc/system.orig
      
      
    2. Open the /etc/system file in any text editor and, if necessary, add lines similar to the following (edit the lines if the file already contains them):

      set noexec_user_stack=1
      set semsys:seminfo_semmni=100
      set semsys:seminfo_semmns=1024
      set semsys:seminfo_semmsl=256
      set semsys:seminfo_semvmx=32767
      set shmsys:shminfo_shmmax=4294967295
      set shmsys:shminfo_shmmin=1
      set shmsys:shminfo_shmmni=100
      set shmsys:shminfo_shmseg=10
      
      
    3. Enter the following command to reboot the system:

      # /usr/sbin/reboot
      
      
    4. When the system restarts, log in and switch user to root.

  3. To continue completing pre-installation tasks, go to the "Identify Required Software Directories" section.

Configure Kernel Subsystem Attributes on Tru64 UNIX

Verify that the kernel subsystem attributes shown in the following table are set to values greater than or equal to the recommended value shown. The procedure following the table describes how to verify and set the values.

Subsystem Attribute Recommended Value
ipc shm_max 4278190080 (4 GB minus 16 MB)
shm_min 1
shm_mni 256
shm_seg 256
ssm_threshold Set this attribute to 0 only if the rad_gh_regions[n] or gh_chunks attributes are set in the vm subsystem. Otherwise, do not change the value.
proc per_proc_stack_size 8388608 (8 MB)Foot 
max_per_proc_stack_size 33554432 (32 MB)Footref 1
per_proc_data_size 335544320 (320MB)
max_per_proc_data_size 335544320 (320MB)
max_per_proc_address_space Equal to the size of RAM or 1073741824 (1 GB), whichever is larger.
per_proc_address_space Equal to the size of RAM or 1073741824 (1 GB), whichever is larger.
vfs fifo_do_adaptive 0
vm new_wire_method 0
rdg msg_size 32768
max_objs 5120
max_async_req 256
max_sessions 500 (or at least 20 plus the value of the PROCESSES initialization parameter for all databases on the system, if this value is higher.)
rdg_max_auto_msg_wires 0
rdg_auto_msg_wires 0
rt aio_task_max_num 8193

Footnote The maximum value supported by Oracle for this parameter is 512 MB.

Note:

If the current value for any kernel subsystem attribute is higher than the value listed in this table, except for the attributes whose recommended value is 0, do not change the value of that attribute.

To view the current value specified for these kernel subsystem attributes, and to change them if necessary, follow these steps:

  1. To view the current values of the subsystem attributes, enter commands similar to the following:

    # /sbin/sysconfig -q subsystem
    
    

    For example, to view attribute values for the ipc subsystem, enter the following command:

    # /sbin/sysconfig -q ipc
    
    
  2. If you must change any of the current values, follow these steps:

    1. Create a backup copy of the /etc/sysconfigtab file, for example:

      # cp /etc/sysconfigtab /etc/sysconfigtab.orig
      
      
    2. Using any text editor, create a file similar to the following, specifying the subsystems and attributes that you want to modify:

      ipc:
           shm_max = 4278190080
           shm_min = 1
           shm_mni = 256
           shm_seg = 128
      
      proc:
           per_proc_stack_size = 8388608
           max_per_proc_stack_size = 33554432
           per_proc_data_size = 201326592
           max_per_proc_data_size = 201326592
           max_per_proc_address_space = 4294967296
           per_proc_address_space = 4294967296
      
      
    3. Enter a command similar to the following to add the subsystem attributes to the /etc/sysconfigtab file:

      # /sbin/sysconfigdb -m -f filename
      
      

      In this example, filename is the name of the file you created in step b.

    4. Enter the following command to reboot the system:

      # /sbin/shutdown -r now
      
      
    5. When the system restarts, log in and switch user to root.

Identify Required Software Directories

You must identify or create three directories for the Oracle software, as follows:

The following subsections describe the requirements for these directories.


Oracle Base Directory

The Oracle base directory acts as a top-level directory for Oracle software installations. It is analogous to the C:\Oracle directory used for Oracle software installations on Windows systems. On UNIX systems, the Optimal Flexible Architecture (OFA) guidelines recommend that you use a path similar to the following for the Oracle base directory:

/mount_point/app/oracle_sw_owner

In this example:

You can use the same Oracle base directory for more than one installation or you can create separate Oracle base directories for different installations. If different UNIX users install Oracle software on the same system, each user must create a separate Oracle base directory. The following example Oracle base directories could all exist on the same system:

/u01/app/oracle
/u01/app/orauser
/opt/oracle/app/oracle

The following sections describe how to identify existing Oracle base directories that might be suitable for your installation and how to create a new Oracle base directory if necessary.

Regardless of whether you create a new Oracle base directory or decide to use an existing one, you must set the ORACLE_BASE environment variable to specify the full path to this directory.


Oracle Inventory Directory

The Oracle Inventory directory (oraInventory) stores an inventory of all software installed on the system. It is required by, and shared by, all Oracle software installations on a single system. The first time you install Oracle software on a system, the Installer prompts you to specify the path to this directory. Oracle recommends that you choose the following path:

oracle_base/oraInventory

The Installer creates the directory that you specify and sets the correct owner, group, and permissions on it. You do not need to create it.


Note:

All Oracle software installations rely on this directory. Make sure that you back it up regularly.

Do not delete this directory unless you have completely removed all Oracle software from the system.



Oracle Home Directory

The Oracle home directory is the directory where you choose to install the software for a particular Oracle product. You must install different Oracle products, or different releases of the same Oracle product, in separate Oracle home directories. When you run the Installer, it prompts you to specify the path to this directory, as well as a name that identifies it. The directory that you specify must be a subdirectory of the Oracle base directory. Oracle recommends that you specify a path similar to the following for the Oracle home directory:

oracle_base/product/10.1.0/db_1

The Installer creates the directory path that you specify under the Oracle base directory. It also sets the correct owner, group, and permissions on it. You do not need to create this directory.

Identify or Create an Oracle Base Directory

Before starting the installation, you must either identify an existing Oracle base directory or if required, create a new one. This section contains information about the following:


Note:

You can choose to create a new Oracle base directory, even if other Oracle base directories exist on the system.


Identifying an Existing Oracle Base Directory

Existing Oracle base directories might not have paths that comply with OFA guidelines. However, if you identify an existing Oracle Inventory directory or existing Oracle home directories, you can usually identify the Oracle base directories, as follows:

Before deciding to use an existing Oracle base directory for this installation, make sure that it satisfies the following conditions:

To continue:


Creating a New Oracle Base Directory

Before you create a new Oracle base directory, you must identify an appropriate file system with sufficient free disk space, as follows:

Requirement Free Disk Space
The Oracle base directory will contain only software files. Up to 3 GB, depending on the platform
The Oracle base directory will contain both software and database files (not recommended for production databases). Up to 4 GB, depending on the platform

To identify an appropriate file system, follow these steps:

  1. Use the df -k command (or bdf command on HP-UX) to determine the free disk space on each mounted file system.

  2. From the display, identify a file system that has appropriate free space.

    The file system you identify can be a local file system, a cluster file system, or an NFS file system on a certified NAS device.

  3. Note the name of the mount point directory for the file system that you identified.

To create the Oracle base directory and specify the correct owner, group, and permissions for it, follow these steps:

  1. Enter commands similar to the following to create the recommended subdirectories in the mount point directory that you identified and set the appropriate owner, group, and permissions on them:

    # mkdir -p /mount_point/app/oracle_sw_owner
    # chown -R oracle:oinstall /mount_point/app/oracle_sw_owner
    # chmod -R 775 /mount_point/app/oracle_sw_owner
    
    

    If the mount point you identified is /u01 and oracle is the user name of the Oracle software owner, the recommended Oracle base directory path is as follows:

    /u01/app/oracle
    
    
  2. When you are configuring the oracle user’s environment later in this chapter, set the ORACLE_BASE environment variable to specify this directory.

Configure Disk Storage for Oracle Database and Recovery Files

This section describes the storage options available to you for storing Oracle Database Files and optionally, Oracle Database recovery files. After you choose the storage method that you want to use for each file type, see the following sections for information about configuring the required storage.


Note:

You do not have to use the same storage option for each type of file.


Choosing a Storage Option for Oracle Database Files

If you want to create a database during the installation, you must choose one of the following storage options for the database files:


Choosing a Storage Option for Oracle Database Recovery Files

Additionally, if you want to enable automated backups during the installation, you must choose one of the following storage options for recovery files (the flash recovery area):

The storage option that you choose for recovery files can be the same as or different to the option you choose for the database files.


Configuring Disk Storage

For more information about these options, see the "Database Storage Options" section. For information about how to configure disk storage before you start the installation, see one of the following sections depending on your choice:

Create Directories for Oracle Database or Recovery Files

If you decide to place the Oracle database or recovery files on a file system, use the following guidelines when deciding where to place them.


Guidelines for Placing Oracle Database Files on a File System

If you choose to place the Oracle database files on a file system, use the following guidelines when deciding where to place them:


Guidelines for Placing Oracle Recovery Files on a File System

Note:

You must choose a location for recovery files only if you intend to enable automated backups during the installation.

If you choose to place the Oracle recovery files on a file system, use the following guidelines when deciding where to place them:


Creating Required Directories

Note:

You must complete this procedure only if you want to place the Oracle database or recovery files on a separate file system to the Oracle base directory.

To create directories for the Oracle database or recovery files on separate file systems to the Oracle base directory, follow these steps:

  1. Use the df -k command (or bdf command on HP-UX) to determine the free disk space on each mounted file system.

  2. From the display, identify the file systems that you want to use:

    File Type File System Requirements
    Datafiles Choose either:
    • A single file system with at least 1.2 GB of free disk space

    • Two or more file systems with at least 1.2 GB of free disk space in total

    Recovery files Choose a file system with at least 2 GB of free disk space.

    If you are using the same file system for more than one type of file, add the disk space requirements for each type to determine the total disk space requirement.

  3. Note the names of the mount point directories for the file systems that you identified.

  4. Enter commands similar to the following to create the recommended subdirectories in each of the mount point directories and set the appropriate owner, group, and permissions on them:

    • Database file directory:

      # mkdir /mount_point/oradata
      # chown oracle:oinstall /mount_point/oradata
      # chmod 775 /mount_point/oradata
      
      
    • Recovery file directory (flash recovery area):

      # mkdir /mount_point/flash_recovery_area
      # chown oracle:oinstall /mount_point/flash_recovery_area
      # chmod 775 /mount_point/flash_recovery_area
      
      
  5. If you also want to use ASM or raw devices for storage, see one of the following sections:

    Otherwise see the "Stop Existing Oracle Processes" section.

Configure Disks for Automatic Storage Management

This section describes how to configure disks for use with ASM. Before you configure the disks, you must determine the number of disks and the amount of free disk space that you require. The following sections describe how to identify the requirements and configure the disks on each platform:


Note:

Although this section refers to disks, you can also use zero-padded files on a certified NAS storage device in an ASM disk group. See the Appendix C for information about creating and configuring NAS-based files for use in an ASM disk group.

Identifying Storage Requirements for ASM

To identify the storage requirements for using ASM, you must determine how many devices and the amount of free disk space that you require. To complete this task, follow these steps:

  1. Determine whether you want to use ASM for Oracle database files (datafiles), recovery files, or both.


    Note:

    You do not have to use the same storage mechanism for database files and recovery files. One can use the file system, while the other uses ASM.

    If you enable automated backups during the installation, you can choose ASM as the storage mechanism for recovery files by specifying an ASM disk group for the flash recovery area. Depending how you choose to create a database during the installation, you have the following options:

    • If you select an installation method that runs DBCA in interactive mode, by choosing the Advanced database configuration option for example, you can decide whether you want to use the same ASM disk group for datafiles and recovery files, or you can choose to use different disk groups for each file type.

      The same choice is available to you if you use DBCA after the installation to create a database.

    • If you select an installation type that runs DBCA in non-interactive mode, you must use the same ASM disk group for database files and recovery files.

  2. Choose the ASM redundancy level that you want to use for the ASM disk group.

    The redundancy level that you choose for the ASM disk group determines how ASM mirrors files in the disk group and determines the number of disks and amount of disk space that you require, as follows:

    • External redundancy

      An external redundancy disk group requires a minimum of one disk device. The effective disk space in an external redundancy disk group is the sum of the disk space in all of its devices.

      Because ASM does not mirror data in an external redundancy disk group, Oracle recommends that you use only RAID or similar devices that provide their own data protection mechanisms as disk devices in this type of disk group.

    • Normal redundancy

      In a normal redundancy disk group, ASM uses two-way mirroring by default, to increase performance and reliability. A normal redundancy disk group requires a minimum of two disk devices (or two failure groups). The effective disk space in a normal redundancy disk group is half the sum of the disk space in all of its devices.

      For most installations, Oracle recommends that you use normal redundancy disk groups.

    • High redundancy

      In a high redundancy disk group, ASM uses three-way mirroring to increase performance and provide the highest level of reliability. A high redundancy disk group requires a minimum of three disk devices (or three failure groups). The effective disk space in a high redundancy disk group is one-third the sum of the disk space in all of its devices.

      While high redundancy disk groups do provide a high level of data protection, you must consider the higher cost of additional storage devices before deciding to use this redundancy level.

  3. Determine the total amount of disk space that you require for the datafiles and recovery files.

    Use the following table to determine the minimum number of disks and the minimum disk space requirements for the installation:

    Redundancy Level Minimum Number of Disks Datafiles Recovery FIles Both File Types
    External 1 1.15 GB 2.3 GB 3.45 GB
    Normal 2 2.3 GB 4.6 GB 6.9 GB
    High 3 3.45 GB 6.9 GB 10.35 GB

    If an existing ASM instance exists on the system, you can use an existing disk group to meet these storage requirements. If necessary, you can add disks to an existing disk group during the installation.

    The following section describes how to identify existing disk groups and determine the free disk space that they contain.

  4. Optionally identify failure groups for the ASM disk group devices.


    Note:

    You need to complete this step only if you intend to use an installation method that runs DBCA in interactive mode, for example, if you intend to choose the Custom installation type or the Advanced database configuration option. Other installation types do not enable you to specify failure groups.

    If you intend to use a normal or high redundancy disk group, you can further protect your database against hardware failure by associating a set of disk devices in a custom failure group. By default, each device comprises its own failure group. However, if two disk devices in a normal redundancy disk group are attached to the same SCSI controller, the disk group becomes unavailable if the controller fails. The controller in this example is a single point of failure.

    To avoid failures of this type, you could use two SCSI controllers, each with two disks, and define a failure group for the disks attached to each controller. This configuration would enable the disk group to tolerate the failure of one SCSI controller.


    Note:

    If you define custom failure groups, you must specify a minimum of two failure groups for normal redundancy disk groups and three failure groups for high redundancy disk groups.

  5. If you are sure that a suitable disk group does not exist on the system, install or identify appropriate disk devices to add to a new disk group. Use the following guidelines when identifying appropriate disk devices:

    • All of the devices in an ASM disk group should be the same size and have the same performance characteristics.

    • Do not specify more than one partition on a single physical disk as a disk group device. ASM expects each disk group device to be on a separate physical disk.

    • Although you can specify a logical volume as a device in an ASM disk group, Oracle does not recommend their use. Logical volume managers can hide the physical disk architecture, preventing ASM from optimizing I/O across the physical devices.

    For information about completing this task, see the "Configuring Disks for ASM" section.

Using an Existing ASM Disk Group

If you want to use ASM as the storage option for either database or recovery files, and an existing ASM disk group exists, you have the following choices, depending on the installation method that you select:

  • If you select an installation method that runs DBCA in interactive mode, by choosing the Advanced database configuration option for example, you can decide whether you want to create a new disk group or use an existing one.

    The same choice is available to you if you use DBCA after the installation to create a database.

  • If you select an installation type that runs DBCA in non-interactive mode, you must choose an existing disk group for the new database; you cannot create a new disk group. However, you can add disk devices to an existing disk group if it has insufficient free space for your requirements.


Note:

The ASM instance that manages the existing disk group can be running in a different Oracle home directory.

To determine whether an existing ASM disk group exists, or to determine whether there is sufficient disk space in a disk group, you can use Oracle Enterprise Manager Database Grid Control or Database Control. Alternatively, you can use the following procedure:

  1. View the contents of the oratab file to determine whether an ASM instance is configured on the system:

    • Solaris:

      # more /var/opt/oracle/oratab
      
      
    • Other operating systems:

      # more /etc/oratab
      
      

    If an ASM instance is configured on the system, the oratab file should contain a line similar to the following:

    +ASM:oracle_home_path:N
    
    

    In this example, +ASM is the system identifier (SID) of the ASM instance and oracle_home_path is the Oracle home directory where it is installed. By convention, the SID for an ASM instance begins with a plus sign.

  2. Set the ORACLE_SID and ORACLE_HOME environment variables to specify the appropriate values for the ASM instance that you want to use.

  3. Connect to the ASM instance as the SYS user with SYSDBA privilege and start the instance if necessary:

    # $ORACLE_HOME/bin/sqlplus "SYS/SYS_password as SYSDBA"
    SQL> STARTUP
    
    
  4. Enter the following command to view the existing disk groups, their redundancy level, and the amount of free disk space in each one:

    SQL> SELECT NAME,TYPE,TOTAL_MB,FREE_MB FROM V$ASM_DISKGROUP;
    
    
  5. From the output, identify a disk group with the appropriate redundancy level and note the free space that it contains.

  6. If necessary, install or identify the additional disk devices required to meet the storage requirements listed in the previous section.


    Note:

    If you are adding devices to an existing disk group, Oracle recommends that you use devices that have the same size and performance characteristics as the existing devices in that disk group.

Configuring Disks for ASM

The following sections describe how to configure the disks that you want to use in an ASM disk group. It includes information about the following:

Configuring Disks for ASM on AIX

To configure disks for use with ASM on AIX, follow these steps:

  1. If necessary, install the disks that you intend to use for the ASM disk group and reboot the system.

  2. To make sure that the disks are available, enter the following command:

    # /usr/sbin/lsdev -Cc disk
    
    

    The output from this command is similar to the following:

    hdisk0 Available 1A-09-00-8,0  16 Bit LVD SCSI Disk Drive
    hdisk1 Available 1A-09-00-9,0  16 Bit LVD SCSI Disk Drive
    hdisk2 Available 17-08-L       SSA Logical Disk Drive
    
    
  3. If a disk is not listed as available, enter the following command to configure the new disks:

    # /usr/sbin/cfgmgr
    
    
  4. To determine which disks are configured in a volume group, enter the following command:

    # /usr/sbin/lspv
    
    

    The output from this command is similar to the following:

    hdisk0     0000078752249812   rootvg
    hdisk1     none               none
    
    

    For each disk, this command shows:

    • The disk device name

    • Either the 16 character physical volume identifier (PVID) if the disk has one, or none

    • Either the volume group to which the disk belongs, or none

    The disks that you want to use might have a PVID, but they must not belong to a volume group.

  5. If the disks that you want to use for the disk group do not have PVIDs, enter a command similar to the following for each disk that you want to use:

    # /usr/sbin/chdev -l hdiskn -a pv=yes
    
    
  6. Enter commands similar to the following to change the owner, group, and permissions on the character raw device file for each disk that you want to add to the disk group:

    # chown oracle:dba /dev/rhdiskn
    # chmod 660 /dev/rhdiskn
    
    

Note:

If you are using a multi-pathing disk driver with ASM, ensure that you set the permissions only on the correct logical device name for the disk.

Configuring Disks for ASM on HP-UX

To configure disks for use with ASM on HP-UX, follow these steps:

  1. If necessary, install the disks that you intend to use for the ASM disk group.

  2. To make sure that the disks are available, enter the following command:

    # /usr/sbin/ioscan -fun -C disk
    
    

    The output from this command is similar to the following:

    Class  I  H/W Path    Driver S/W State   H/W Type     Description
    ==========================================================================
    disk    0  0/0/1/0.6.0 sdisk  CLAIMED     DEVICE       HP   DVD-ROM 6x/32x
                           /dev/dsk/c0t6d0   /dev/rdsk/c0t6d0
    disk    1  0/0/1/1.2.0 sdisk  CLAIMED     DEVICE      SEAGATE ST39103LC
                           /dev/dsk/c1t2d0   /dev/rdsk/c1t2d0
    
    

    This command displays information about each disk attached to the system, including the block device name (/dev/dsk/cxtydz) and the character raw device name (/dev/rdsk/cxtydz).

    If this command does not display device name information, enter the following command to install the special device files:

    # /usr/sbin/insf -e
    
    
  3. For each disk that you want to add to a disk group, enter the following command to verify that it is not already part of an LVM volume group:

    # /sbin/pvdisplay /dev/dsk/cxtydz
    
    

    If this command displays volume group information, the disk is already part of a volume group. The disks that you choose must not be part of an LVM volume group.


    Note:

    If you are using different volume management software, for example VERITAS Volume Manager, see the appropriate documentation for information about verifying that a disk is not in use.

  4. Enter commands similar to the following to change the owner, group, and permissions on the character raw device file for each disk that you want to add to a disk group:

    # chown oracle:dba /dev/rdsk/cxtydz
    # chmod 660 /dev/rdsk/cxtydz
    
    

    Note:

    If you are using a multi-pathing disk driver with ASM, ensure that you set the permissions only on the correct logical device name for the disk.

Configuring Disks for ASM on Linux

On Linux systems, Oracle provides an ASM library driver that you can use to improve the I/O performance of databases that use ASM for storage management. If you intend to use ASM for database storage on Linux, Oracle recommends that you install the ASM library driver and associated utilities and use them to configure the devices that you want to include in an ASM disk group. If you do not use the ASM library driver, you must bind each disk device that you want to use to a raw device. The following sections describe how to configure disks using both methods:

Configuring Disks for ASM Using the ASM Library Driver

To use the ASM library driver to configure ASM devices, complete the following tasks.


Install and Configure the ASM Library Driver Software

To install and configure the ASM library driver, and utilities, follow these steps:

  1. Switch user to the root user:

    # su -
    
    
  2. Enter the following command to determine the kernel version and architecture of the system:

    # uname -rm
    
    
  3. If you are not installing the software from a hard disk, insert the Oracle Database 10g Companion CD-ROM or the Oracle Database 10g DVD-ROM into the drive.

    If the disc does not mount automatically, see the "Mounting Discs on Linux" section for information about how to manually mount it.

  4. Change directory to the directory containing the ASM library driver packages for your Linux distribution and architecture:

    $ cd directory_path/RPMS/distribution
    
    

    In this example, distribution is the distribution of Linux that you are using and directory_path is one of the following:

    • The CD-ROM mount point directory path

    • The Oracle Database 10g Companion CD installation directory (companion) on the DVD-ROM

    • The path of the Disk1 directory on the hard disk

  5. Enter commands similar to the following to install the packages:

    # rpm -Uvh oracleasm-support-1.0.0-1.arch.rpm oracleasmlib-1.0.0-1.arch.rpm 
    # rpm -Uvh oracleasm-kernel_version-1.0.0-1.arch.rpm
    
    

    In this example, arch is the system architecture type and kernel_version is the version of the kernel that you are using. For example, if you are using the Red Hat Enterprise Linux AS 2.1 enterprise kernel on a system with the i686 architecture, enter commands similar to the following:

    # rpm -Uvh oracleasm-support-1.0.0-1.i686.rpm oracleasmlib-1.0.0-1.i686.rpm 
    # rpm -Uvh oracleasm-2.4.9-e-enterprise-1.0.0-1.i686.rpm
    
    
  6. Enter a command similar to the following to determine the UID of the Oracle software owner user that you are using for this installation (typically oracle) and the GID of the OSDBA group (typically dba):

    # id oracle
    
    
  7. Enter the following command to run the oracleasm initialization script with the configure option:

    # /etc/init.d/oracleasm configure
    
    
  8. Enter the following information in response to the prompts that the script displays:

    Prompt Suggested Response
    Default UID to own the driver interface: Specify the UID of the Oracle software owner user (oracle).
    Default GID to own the driver interface: Specify the GID of the OSDBA group (dba).
    Start Oracle ASM Library driver on boot (y/n): Enter y to start the Oracle ASM library driver when the system starts.

    The script completes the following tasks:

    • Creates the /etc/sysconfig/oracleasm configuration file

    • Creates the /dev/oracleasm mount point

    • Loads the oracleasm kernel module

    • Mounts the ASM library driver file system


      Note:

      The ASM library driver file system is not a regular file system. It is used only by the ASM library to communicate with the ASM driver.


Configure the Disk Devices to Use the ASM Library Driver

To configure the disk devices that you want to use in an ASM disk group, complete the following steps:

  1. If necessary, install the disks that you intend to use for the disk group and reboot the system.

  2. To identify the device name for the disks that you want to use, enter the following command:

    # /sbin/fdisk -l
    
    

    Depending on the type of disk, the device name can vary:

    Disk Type Device Name Format Description
    IDE disk
    /dev/hdxn
    
    In this example, x is a letter that identifies the IDE disk and n is the partition number. For example, /dev/hda is the first disk on the first IDE bus.
    SCSI disk
    /dev/sdxn
    
    In this example, x is a letter that identifies the SCSI disk and n is the partition number. For example, /dev/sda is the first disk on the first SCSI bus.
    RAID disk
    /dev/rd/cxdypz
    /dev/ida/cxdypz
    
    Depending on the RAID controller, RAID devices can have different device names. In the examples shown, x is a number that identifies the controller, y is a number that identifies the disk and z is a number that identifies the partition. For example, /dev/ida/c0d1 is the second logical drive on the first controller.

    To include devices in a disk group, you can specify either whole drive device names or partition device names.


    Note:

    On Linux systems, Oracle recommends that you create a single whole-disk partition on each disk that you want to use.

  3. Using either fdisk or parted, create a single whole-disk partition on the disk device that you want to use.

  4. Enter a command similar to the following to mark a disk as an ASM disk:

    /etc/init.d/oracleasm createdisk disk1 /dev/sdb1
    
    

    In this example, disk1 is a name that you want to assign to the disk.


    Note:

    If you are using a multi-pathing disk driver with ASM, make sure that you specify the correct logical device name for the disk.


Administer the ASM Library Driver and Disks

To administer the ASM library driver and disks, use the oracleasm initialization script with different options, as follows:

Option Description
configure
Use the configure option to reconfigure the ASM library driver, if necessary:
# /etc/init.d/oracleasm configure
enable
disable
Use the disable and enable options to change the behavior of the ASM library driver when the system boots. The enable option causes the ASM library driver to load when the system boots:
# /etc/init.d/oracleasm enable
start
stop
restart
Use the start, stop, and restart options to load or unload the ASM library driver without rebooting the system:
# /etc/init.d/oracleasm restart
createdisk
Use the createdisk option to mark a disk device for use with the ASM library driver and give it a name:
# /etc/init.d/oracleasm createdisk diskname devicename
deletedisk
Use the deletedisk option to unmark a named disk device:
# /etc/init.d/oracleasm deletedisk diskname

Caution: Do not use this command to unmark disks that are being used by an ASM disk group. You must drop the disk from the ASM disk group before you unmark it.

querydisk
Use the querydisk option to determine whether a disk device or disk name is being used by the ASM library driver:
# /etc/init.d/oracleasm querydisk {diskname | devicename}
listdisks
Use the listdisks option to list the disk names of marked ASM library driver disks:
# /etc/init.d/oracleasm listsdisks
scandisks
Use the scandisks option to enable cluster nodes to identify which shared disks have been marked as ASM library driver disks on another node:
# /etc/init.d/oracleasm scandisks

Configuring Disks for ASM Using Raw Devices


Note:

For improved performance and easier administration, Oracle recommends that you use the ASM library driver rather than raw devices to configure ASM disks.

To configure disks for ASM using raw devices, follow these steps:

  1. If necessary, install the disks that you intend to use for the disk group and reboot the system.

  2. To identify the device name for the disks that you want to use, enter the following command:

    # /sbin/fdisk -l
    
    

    Depending on the type of disk, the device name can vary:

    Disk Type Device Name Format Description
    IDE disk
    /dev/hdxn
    
    In this example, x is a letter that identifies the IDE disk and n is the partition number. For example, /dev/hda is the first disk on the first IDE bus.
    SCSI disk
    /dev/sdxn
    
    In this example, x is a letter that identifies the SCSI disk and n is the partition number. For example, /dev/sda is the first disk on the first SCSI bus.
    RAID disk
    /dev/rd/cxdypz
    /dev/ida/cxdypz
    
    Depending on the RAID controller, RAID devices can have different device names. In the examples shown, x is a number that identifies the controller, y is a number that identifies the disk and z is a number that identifies the partition. For example, /dev/ida/c0d1 is the second logical drive on the first controller.

    To include devices in a disk group, you can specify either whole drive device names or partition device names.


    Note:

    On Linux systems, Oracle recommends that you create a single whole disk partition on each disk that you want to use.

  3. Using either fdisk or parted, create a single whole-disk partition on the disk device that you want to use.

  4. On Red Hat Linux, complete the following steps to bind the disk devices to raw devices:

    1. To determine what raw devices are already bound to other devices, enter the following command:

      # /usr/sbin/raw -qa
      
      

      Raw devices have device names in the form /dev/raw/rawn, where n is a number that identifies the raw device.

    2. Open the /etc/sysconfig/rawdevices file in any text editor and add a line similar to the following for each device that you want to include in a disk group:

      /dev/raw/raw1 /dev/sdb1
      
      

      Note:

      If you are using a multi-pathing disk driver with ASM, ensure that specify the correct logical device name for the disk.

      Specify an unused raw device for each disk device.

    3. For each raw device that you specified in the rawdevices file, enter commands similar to the following to set the owner, group, and permissions on the device file:

      # chown oracle:dba /dev/raw/rawn
      # chmod 660 /dev/raw/rawn
      
      
    4. To bind the partitions to the raw devices, enter the following command:

      # /sbin/service rawdevices restart
      
      

      By editing the rawdevices file, the system binds the partitions to the raw devices when it reboots.

  5. On UnitedLinux, complete the following steps to bind the disk devices to raw devices:

    1. To determine what raw devices are already bound to other devices, enter the following command:

      # /usr/sbin/raw -qa
      
      

      Raw devices have device names in the form /dev/raw/rawn, where n is a number that identifies the raw device.

    2. Open the /etc/raw file in any text editor and add a line similar to the following for each device that you want to include in a disk group:

      raw1:sdb1
      
      

      Note:

      If you are using a multi-pathing disk driver with ASM, ensure that you specify the correct logical device name for the disk.

      Specify an unused raw device for each disk device.

    3. For each raw device that you specified in the /etc/raw file, enter commands similar to the following to set the owner, group, and permissions on the device file:

      # chown oracle:dba /dev/raw/rawn
      # chmod 660 /dev/raw/rawn
      
      
    4. To bind the disk devices to the raw devices, enter the following command:

      # /etc/init.d/raw
      
      

      By editing the /etc/raw file, the system binds the partitions to the raw devices when it reboots.

    5. To ensure that the raw devices are bound when the system reboots, enter the following command:

      # /sbin/chkconfig raw on
      
      

Configuring Disks for ASM on Solaris

To configure disks for use with ASM on Solaris, follow these steps:

  1. If necessary, install the disks that you intend to use for the disk group and reboot the system.

  2. To make sure that the disks are available, enter the following command:

    # /usr/sbin/format
    
    

    The output from this command is similar to the following:

    AVAILABLE DISK SELECTIONS:
           0. c0t0d0 <ST34321A cyl 8892 alt 2 hd 15 sec 63>
              /pci@1f,0/pci@1,1/ide@3/dad@0,0
           1. c1t5d0 <SUN9.0G cyl 4924 alt 2 hd 27 sec 133>
              /pci@1f,0/pci@1/scsi@1/sd@5,0
    
    

    This command displays information about each disk attached to the system, including the device name (cxtydz).

  3. From the list, identify the device names for the disk devices that you want to add to a disk group, then press Ctrl/D to exit from the format utility.

  4. Enter the following command to verify that the device you identified is not mounted as a file system:

    # df -k
    
    

    This command displays information about the partitions (slices) on disk devices that are mounted as file systems. The device name for a slice includes the disk device name, followed by the slice number, for example cxtydzsn, where sn is the slice number. Slice 6 (s6) represents the entire disk. The disk devices that you choose must not be shown as mounted partitions.

  5. Enter the following commands to verify that the device you identified is not already part of an logical volume manager (LVM) disk group:


    Note:

    The following command displays information about VERITAS Volume Manager disks. If you use a different LVM, see the appropriate documentation for information about determining which disk devices it is managing.

    # vxdiskconfig
    # /usr/sbin/vxdisk list
    
    

    If this command displays disk group information associated with a disk device, the disk is already part of a disk group. The disks that you choose must not be part of a disk group.

  6. Enter commands similar to the following to change the owner, group, and permissions on the character raw device file for each disk that you want to add to a disk group:

    # chown oracle:dba /dev/rdsk/cxtydzs6
    # chmod 660 /dev/rdsk/cxtydzs6
    
    

    In this example, the device name specifies slice 6, which represents the entire disk.


    Note:

    If you are using a multi-pathing disk driver with ASM, ensure that you set the permissions only on the correct logical device name for the disk.

Configuring Disks for ASM on Tru64 UNIX

To configure disks for use with ASM on Tru64 UNIX, follow these steps:

  1. If necessary, install the disks that you intend to use for the disk group and reboot the system.

  2. To make sure that the disks are available, enter the following command:

    # file /dev/rdisk/dsk*c
    
    

    The output from this command is similar to the following:

    /dev/rdisk/dsk0c:       character special (19/38) SCSI #1 "RZ1CB-CA" disk #2
               (SCSI ID #1) (SCSI LUN #0)
    /dev/rdisk/dsk10c:   character special (19/218) SCSI #2 "RZ1DB-CS" disk #4
               (SCSI ID #2) (SCSI LUN #0)
    /dev/rdisk/dsk11c:   character special (19/234) SCSI #2 "RZ1DB-CS" disk #5
               (SCSI ID #3) (SCSI LUN #0)
    /dev/rdisk/dsk12c:   character special (19/250) SCSI #2 "RZ1DB-CS" disk #6
               (SCSI ID #4) (SCSI LUN #0) 
    
    

    This command displays information about each disk attached to the system, including the raw character device name for partition c, which represents the entire disk (/dev/rdisk/dsknc).

  3. From the list, identify the device names for the disk devices that you want to add to a disk group.

  4. To determine whether the disk is unused, enter a command similar to the following:

    # /sbin/disklabel dskn
    
    

    This command displays information about the partitions on the disk, and identifies whether they are in use.

  5. Enter the following command to verify that the device you identified is not used in an AdvFS domain:

    # ls /etc/fdmns/*/*
    
    

    This command displays information about the devices included in AdvFS domains in the following format, identifying the domains and the disks associated with each domain:

    /etc/fdmns/domain_name/dsknp
    
    

    In this example, domain_name is the name of the domain, n is the disk number, and p is the partition letter.

  6. Enter the following command to verify that the device is not mounted as a UFS file system:

    # /sbin/mount
    
    

    The device you want to add to the ASM disk group must not be listed in the output.

  7. Enter the following command to verify that the device you identified is not already part of a Tru64 UNIX Logical Storage Manager (LSM) disk group:

    # /sbin/voldisk list
    
    

    Disks listed without DISK and GROUP names, and with a status of unknown are not LSM disks.

  8. Enter commands similar to the following to change the owner, group, and permissions on the character raw device file for each disk that you want to add to a disk group:

    # chown oracle:dba /dev/rdisk/rdsknc
    # chmod 660 /dev/rdisk/rdsknc
    
    

    In this example, the device name specifies partition c, which represents the entire disk.


    Note:

    If you are using a multi-pathing disk driver with ASM, ensure that you set the permissions only on the correct logical device name for the disk.

Configure Raw Logical Volumes or Raw Partitions

Depending on your operating system, see one of the following sections for information about configuring raw logical volumes or raw partitions:

Configuring Raw Logical Volumes on AIX

The following subsections describe how to configure raw logical volumes on AIX.


Create a Volume Group

To create a volume group for the Oracle database files, follow these steps:

  1. If necessary, install the disks that you intend to use.

  2. To make sure that the disks are available, enter the following command:

    # /usr/sbin/lsdev -Cc disk
    
    

    The output from this command is similar to the following:

    hdisk0 Available 1A-09-00-8,0  16 Bit LVD SCSI Disk Drive
    hdisk1 Available 1A-09-00-9,0  16 Bit LVD SCSI Disk Drive
    hdisk2 Available 17-08-L       SSA Logical Disk Drive
    
    
  3. If a disk is not listed as available, enter the following command to configure it:

    # /usr/sbin/cfgmgr
    
    
  4. To determine whether the disks are configured in a volume group, enter the following command:

    # /usr/sbin/lspv
    
    

    The output from this command is similar to the following:

    hdisk0     0000078752249812   rootvg
    hdisk1     none               none
    hdisk4     00034b6fd4ac1d71   ccvg1
    
    

    For each disk, this command shows:

    • The disk device name

    • Either the 16 character physical volume identifier (PVID) if the disk has one, or none

    • Either the volume group to which the disk belongs, or none

    The disks that you want to use might have a PVID, but they must not belong to existing volume groups.

  5. If the disks that you want to use for the volume group do not have PVIDs, enter a command similar to the following for each disk that you want to use:

    # /usr/sbin/chdev -l hdiskn -a pv=yes
    
    
  6. To identify used device major numbers, enter the following command:

    # ls -la /dev | more
    
    

    This command displays information about all configured devices, similar to the following:

    crw-rw----   1 root     system    45,  0 Jul 19 11:56 vg1
    
    

    In this example, 45 is the major number of the vg1 volume group device.

  7. Identify an appropriate major number that is unused.

  8. To create a volume group, enter a command similar to the following, or use SMIT (smit mkvg):

    # /usr/sbin/mkvg -y VGname -B -s PPsize -V majornum \
    -C PhysicalVolumes
    
    

    The following table describes the options and variables used in this example. See the mkvg man page for more information about these options.

    Command Option SMIT Field Sample Value and Description
    -y VGname
    
    VOLUME GROUP name
    oracle_vg1
    
    
    Specify the name for the volume group. The name you specify could be a generic name, as shown, or it could specify the name of the database that you intend to create.
    -B Create a big VG format Volume Group Specify this option to create a big VG format volume group.

    Note: If you are using SMIT, choose yes for this field.

    -s PPsize
    
    Physical partition SIZE in megabytes
    32
    
    
    Specify the size of the physical partitions for the database. The sample value shown allows you to include a disk up to 32 GB in size (32 MB * 1016).
    -V Majornum
    
    Volume Group MAJOR NUMBER
    46
    
    
    Specify the device major number for the volume group that you identified in Step 7.
    -C Create VG Concurrent Capable Specify this option to create a concurrent capable volume group.

    Note: If you are using SMIT, choose yes for this field.

    PhysicalVolumes PHYSICAL VOLUME names
    hdisk3 hdisk4
    
    
    Specify the device names of the disks that you want to add to the volume group.


Create Raw Logical Volumes in the New Volume Group

To create the required raw logical volumes in the new volume group, follow these steps:

  1. Choose a name for the database that you want to create.

    The name that you choose must start with a letter and have no more than four characters, for example, orcl.

  2. From the following table, identify the logical volumes that you must create:

    Number Partition Size (MB) Purpose and Sample Logical Volume Name
    Raw Logical Volumes for Oracle Database
    1 500 SYSTEM tablespace:
    dbname_system_raw_500m
    
    1 500 SYSAUX tablespace:
    dbname_sysaux_raw_500m
    
    1 500 UNDOTBS1 tablespace:
    dbname_undotbs1_raw_500m
    
    1 160 EXAMPLE tablespace:
    dbname_example_raw_160m
    
    1 120 USERS tablespace:
    dbname_users_raw_120m
    
    2 120 Two online redo log files for each instance (where n is the number of the instance and m is the log number, 1 or 2):
    dbname_redon_m_raw_120m
    
    2 110 First and second control files:
    dbname_control[1|2]_raw_110m
    
    1 250 TEMP tablespace:
    dbname_temp_raw_250m
    
    1 5 Server parameter file (SPFILE):
    dbname_spfile_raw_5m
    
    1 5 Password file:
    dbname_pwdfile_raw_5m
    

  3. To create each required logical volume, enter a command similar to the following (or use smit mklv):

    # /usr/sbin/mklv -y LVname -T O -w n -s n -r n VGname NumPPs
    
    

    In this example:

    • LVname is the name of the logical volume that you want to create

    • The -T O option specifies that the device subtype should be z, which causes Oracle to use a zero offset when accessing this raw logical volume.

    • VGname is the name of the volume group where you want to create the logical volume

    • NumPPs is the number of physical partitions to use

      To determine the value to use for NumPPs, divide the required size of the logical volume by the size of the physical partition and round the value up to an integer. For example, if the size of the physical partition is 32 MB and you want to create a 500 MB logical volume, you should specify 16 for the NumPPs (500/32 = 15.625).

    The following example shows the command used to create a logical volume for the SYSAUX tablespace of the test database in the oracle_vg1 volume group with a physical partition size of 32 MB (500/32 = 15.625):

    # /usr/sbin/mklv -y test_sysaux_500m -T O -w n -s n -r n oracle_vg1 16
    
    
  4. Change the owner, group, and permissions on the character device files associated with the logical volumes that you created, as follows:

    # chown oracle:dba /dev/rdbname*
    # chmod 660 /dev/rdbname*
    
    

Create the DBCA Raw Device Mapping File

To allow Database Configuration Assistant (DBCA) to identify the appropriate raw device for each database file, you must create a raw device mapping file, as follows:

  1. Set the ORACLE_BASE environment variable to specify the Oracle base directory that you identified or created previously:

    • Bourne, Bash or Korn shell:

      $ ORACLE_BASE=/u01/app/oracle ; export ORACLE_BASE
      
      
    • C shell:

      % setenv ORACLE_BASE /u01/app/oracle
      
      
  2. Create a database file subdirectory under the Oracle base directory and set the appropriate owner, group, and permissions on it:

    # mkdir -p $ORACLE_BASE/oradata/dbname
    # chown -R oracle:oinstall $ORACLE_BASE/oradata
    # chmod -R 775 $ORACLE_BASE/oradata
    
    

    In this example, dbname is the name of the database that you chose previously.

  3. Change directory to the $ORACLE_BASE/oradata/dbname directory.

  4. Enter the following command to create a text file that you can use to create the raw device mapping file:

    # find /dev -user oracle -name ’r*’ -print > dbname_raw.conf
    
    
  5. Edit the dbname_raw.conf file in any text editor to create a file similar to the following:

    system=/dev/rdbname_system_raw_500m
    sysaux=/dev/rdbname_sysaux_raw_500m
    example=/dev/rdbname_example_raw_160m
    users=/dev/rdbname_users_raw_120m
    temp=/dev/rdbname_temp_raw_250m
    undotbs1=/dev/rdbname_undotbs1_raw_500m
    redo1_1=/dev/rdbname_redo1_1_raw_120m
    redo1_2=/dev/rdbname_redo1_2_raw_120m
    control1=/dev/rdbname_control1_raw_110m
    control2=/dev/rdbname_control2_raw_110m
    spfile=/dev/rdbname_spfile_raw_5m
    pwdfile=/dev/rdbname_pwdfile_raw_5m
    
    

    In this example, dbname is the name of the database.

    Use the following guidelines when creating or editing this file:

    • Each line in the file must have the following format:

      database_object_identifier=logical_volume
      
      

      The logical volume names suggested in this manual include the database object identifier that you must use in this mapping file. For example, in the following logical volume name, redo1_1 is the database object identifier:

      /dev/rac_redo1_1_raw_120m
      
      
    • For a single instance database, the file must specify one automatic undo tablespace data file (undotbs1), and at least two redo log files (redo1_1, redo1_2).

    • Specify at least two control files (control1, control2).

    • To use manual instead of automatic undo management, specify a single RBS tablespace datafile (rbs) instead of the automatic undo management tablespaces.

  6. Save the file and note the file name that you specified.

  7. When you are configuring the oracle user’s environment later in this chapter, set the DBCA_RAW_CONFIG environment variable to specify the full path to this file.

Configuring Raw Logical Volumes on HP-UX

The following subsections describe how to configure raw logical volumes on HP-UX.


Note:

The following subsections describe how to create logical volumes using the command line. If you prefer, you can use SAM to complete the same tasks. See the HP-UX documentation for more information about using SAM.


Create a Volume Group

To create a volume group, follow these steps:

  1. If necessary, install the disks that you intend to use for the database.

  2. To make sure that the disks are available, enter the following command:

    # /sbin/ioscan -fun -C disk
    
    

    The output from this command is similar to the following:

    Class  I  H/W Path    Driver S/W State   H/W Type     Description
    ==========================================================================
    disk    0  0/0/1/0.6.0 sdisk  CLAIMED     DEVICE       HP   DVD-ROM 6x/32x
                           /dev/dsk/c0t6d0   /dev/rdsk/c0t6d0
    disk    1  0/0/1/1.2.0 sdisk  CLAIMED     DEVICE      SEAGATE ST39103LC
                           /dev/dsk/c1t2d0   /dev/rdsk/c1t2d0
    disk    2  0/0/2/0.2.0 sdisk  CLAIMED     DEVICE       SEAGATE ST118202LC
                           /dev/dsk/c2t2d0   /dev/rdsk/c2t2d0
    
    

    This command displays information about each disk attached to the system, including the block device name (/dev/dsk/cxtydz) and the character raw device name (/dev/rdsk/cxtydz).

    If this command does not display device name information for a disk, enter the following command to install the special device files:

    # /usr/sbin/insf -e
    
    
  3. For each disk that you want to add to the volume group, enter the following command to verify that it is not already part of a volume group:

    # /sbin/pvdisplay /dev/dsk/cxtydz
    
    

    If this command displays volume group information, the disk is already part of a volume group.

  4. For each disk that you want to add to the volume group, enter a command similar to the following:

    # /sbin/pvcreate /dev/rdsk/cxtydz
    
    
  5. To create a directory for the volume group in the /dev directory, enter a command similar to the following, where vg_name is the name you want to use for the volume group:

    # mkdir /dev/vg_name
    
    
  6. To identify used device minor numbers, enter the following command:

    # ls -la /dev/*/group
    
    

    This command displays information about the device numbers used by all configured volume groups, similar to the following:

    crw-r-----   1 root    sys        64 0x000000 Mar  4  2002 /dev/vg00/group
    crw-r--r--   1 root    sys        64 0x010000 Mar  4  2002 /dev/vg01/group
    
    

    In this example, 64 is the major number used by all volume group devices and 0x000000 and 0x010000 are the minor numbers used by volume groups vg00 and vg01 respectively. Minor numbers have the format 0xnn0000, where nn is a number in the range 00 to the value of the maxvgs kernel parameter minus 1. The default value for the maxvgs parameter is 10, so the default range is 00 to 09.

  7. Identify an appropriate minor number that is unused.

  8. To create the volume group and activate it, enter commands similar to the following:

    # /sbin/mknod /dev/vg_name/group c 64 0xnn0000
    # /sbin/vgcreate /dev/vg_name /dev/dsk/cxtydz . . .
    # /sbin/vgchange -a y vg_name
    
    

    In this example:

    • vg_name is the name you want to give the volume group

    • 0xnn0000 is a minor number that is unused.

    • /dev/dsk/cxtydz... is a list of one or more block device names for the disks that you want to add to the volume group.


Create Raw Logical Volumes in the New Volume Group

To create the required raw logical volumes in the new volume group, follow these steps:

  1. Choose a name for the database that you want to create.

    The name that you choose must start with a letter and have no more than four characters, for example, orcl.

  2. From the following table, identify the logical volumes that you must create:

    Number Partition Size (MB) Purpose and Sample Logical Volume Name
    Raw Logical Volumes for Oracle Database
    1 500 SYSTEM tablespace:
    dbname_system_raw_500m
    
    1 500 SYSAUX tablespace:
    dbname_sysaux_raw_500m
    
    1 500 UNDOTBS1 tablespace:
    dbname_undotbs1_raw_500m
    
    1 160 EXAMPLE tablespace:
    dbname_example_raw_160m
    
    1 120 USERS tablespace:
    dbname_users_raw_120m
    
    2 120 Two online redo log files (where m is the log number, 1 or 2):
    dbname_redo1_m_raw_120m
    
    2 110 First and second control files:
    dbname_control[1|2]_raw_110m
    
    1 250 TEMP tablespace:
    dbname_temp_raw_250m
    
    1 5 Server parameter file (SPFILE):
    dbname_spfile_raw_5m
    
    1 5 Password file:
    dbname_pwdfile_raw_5m
    

  3. To create each required logical volume, enter a command similar to the following:

    # /sbin/lvcreate -n LVname -L size /dev/VGname
    
    

    In this example:

    • LVname is the name of the logical volume that you want to create

      Oracle recommends that you use the sample names shown in the previous table for the logical volumes. Substitute the dbname variable in the sample logical volume name with the name you choose for the database in step 1.

    • VGname is the name of the volume group where you want to create the logical volume

    • size is the size of the logical volume in megabytes

    The following example shows a sample command used to create a 500 MB logical volume in the oracle_vg volume group for the SYSAUX tablespace of a database named test:

    # /sbin/lvcreate -n test_sysaux_500m -L 500 /dev/oracle_vg
    
    
  4. Change the owner, group, and permissions on the character device files associated with the logical volumes that you created, as follows:

    # chown oracle:dba /dev/vg_name/r*
    # chmod 755 /dev/vg_name
    # chmod 660 /dev/vg_name/r*
    
    

Create the DBCA Raw Device Mapping File

To allow Database Configuration Assistant (DBCA) to identify the appropriate raw device for each database file, you must create a raw device mapping file, as follows:

  1. Set the ORACLE_BASE environment variable to specify the Oracle base directory that you identified or created previously:

    • Bourne, Bash or Korn shell:

      $ ORACLE_BASE=/u01/app/oracle ; export ORACLE_BASE
      
      
    • C shell:

      % setenv ORACLE_BASE /u01/app/oracle
      
      
  2. Create a database file subdirectory under the Oracle base directory and set the appropriate owner, group, and permissions on it:

    # mkdir -p $ORACLE_BASE/oradata/dbname
    # chown -R oracle:oinstall $ORACLE_BASE/oradata
    # chmod -R 775 $ORACLE_BASE/oradata
    
    

    In this example, dbname is the name of the database that you chose previously.

  3. Change directory to the $ORACLE_BASE/oradata/dbname directory.

  4. Enter a command similar to the following to create a text file that you can use to create the raw device mapping file:

    # find /dev/vg_name -user oracle -name ’r*’ -print > dbname_raw.conf
    
    
  5. Edit the dbname_raw.conf file in any text editor to create a file similar to the following:

    system=/dev/vg_name/rdbname_system_raw_500m
    sysaux=/dev/vg_name/rdbname_sysaux_raw_500m
    example=/dev/vg_name/rdbname_example_raw_160m
    users=/dev/vg_name/rdbname_users_raw_120m
    temp=/dev/vg_name/rdbname_temp_raw_250m
    undotbs1=/dev/vg_name/rdbname_undotbs1_raw_500m
    redo1_1=/dev/vg_name/rdbname_redo1_1_raw_120m
    redo1_2=/dev/vg_name/rdbname_redo1_2_raw_120m
    control1=/dev/vg_name/rdbname_control1_raw_110m
    control2=/dev/vg_name/rdbname_control2_raw_110m
    spfile=/dev/vg_name/rdbname_spfile_raw_5m
    pwdfile=/dev/vg_name/rdbname_pwdfile_raw_5m
    
    

    In this example:

    • vg_name is the name of the volume group

    • dbname is the name of the database

    Use the following guidelines when creating or editing this file:

    • Each line in the file must have the following format:

      database_object_identifier=logical_volume
      
      

      The logical volume names suggested in this manual include the database object identifier that you must use in this mapping file. For example, in the following logical volume name, redo1_1 is the database object identifier:

      /dev/oracle_vg/rac_redo1_1_raw_120m
      
      
    • For a single instance database, the file must specify one automatic undo tablespace data file (undotbs1), and at least two redo log files (redo1_1, redo1_2).

    • Specify at least two control files (control1, control2).

    • To use manual instead of automatic undo management, specify a single RBS tablespace datafile (rbs) instead of the automatic undo management tablespaces.

  6. Save the file and note the file name that you specified.

  7. When you are configuring the oracle user’s environment later in this chapter, set the DBCA_RAW_CONFIG environment variable to specify the full path to this file.

Configuring Raw Partitions on Linux

The following subsections describe how to configure raw partitions or raw logical volumes on Linux.


Using Raw Logical Volumes

The following procedures contained in this section describe how to create raw partitions for Oracle database file storage. This procedure works on all supported Linux distributions.

However, on Red Hat Enterprise Linux 3 and UnitedLinux 1.0 you can use Logical Volume Manager (LVM) to create logical volumes of the required size and use them instead of raw partitions. Using LVM can provide benefits when used as a the method for storing Oracle database files on raw devices. For example, LVM enables you to overcome the limitations on the number of partitions that you can create on a single physical disk.


Note:

The use of logical volumes for raw devices is supported only for single-instance databases. They are not supported for RAC databases.

If you want to use logical volumes instead of raw partitions, follow these steps:


See Also:

For more information about completing steps 1 and 2, see the operating system documentation or the lvm man page.

  1. Create a separate volume group for the Oracle database files.

    You can use a name such as oracle_vg or dbname_vg for the volume group.

  2. Create the required number of logical volumes using the sizes listed in the "Create Raw Partitions" section.

    Use a naming convention similar to the following when creating the logical volumes:

    dbname_objectname_raw_sizem
    
    

    For example, you might name the logical volume for the SYSTEM table space (500 MB) in the sales database as follows:

    sales_system_raw_500m
    
    
  3. Bind the logical volumes to raw devices as described in the "Bind the Partitions to Raw Devices" section, using the logical volume device name in place of the partition device name.

  4. Create the raw device mapping file as described in the "Create the DBCA Raw Device Mapping File" section.


Create Raw Partitions

To create the required raw partitions, follow these steps:

  1. If necessary, install the disks that you intend to use for the database and reboot the system.


    Note:

    Because the number of partitions that you can create on a single device is limited, you might need to create the required raw partitions on more than one device.

  2. To identify the device name for the disks that you want to use for the database, enter the following command:

    # /sbin/fdisk -l
    
    

    Depending on the type of disk, the device name can vary:

    Disk Type Device Name Format Description
    IDE disk
    /dev/hdxn
    
    In this example, x is a letter that identifies the IDE disk and n is the partition number. For example, /dev/hda is the first disk on the first IDE bus.
    SCSI disk
    /dev/sdxn
    
    In this example, x is a letter that identifies the SCSI disk and n is the partition number. For example, /dev/sda is the first disk on the first SCSI bus.
    RAID disk
    /dev/rd/cxdypz
    /dev/ida/cxdypz
    
    Depending on the RAID controller, RAID devices can have different device names. In the examples shown, x is a number that identifies the controller, y is a number that identifies the disk and z is a number that identifies the partition. For example, /dev/ida/c0d1 is the second logical drive on the first controller.

    You can create the required raw partitions either on new devices that you added or on previously partitioned devices that have unpartitioned free space. To identify devices that have unpartitioned free space, examine the start and end cylinder numbers of the existing partitions and determine whether the device contains unused cylinders.

  3. To create raw partitions on a device, enter a command similar to the following:

    # /sbin/fdisk devicename
    
    

    Use the following guidelines when creating partitions:

    • Use the p command to list the partition table of the device.

    • Use the n command to create a new partition.

    • After you have created all the required partitions on this device, use the w command to write the modified partition table to the device.

    • See the fdisk man page for more information about creating partitions.

    The following table lists the number, size, and purpose of the partitions that you must create:

    Number Partition Size (MB) Purpose
    Raw Partitions for Oracle Database
    1 500 SYSTEM tablespace
    1 500 SYSAUX tablespace
    1 500 UNDOTBS1 tablespace
    1 160 EXAMPLE tablespace
    1 120 USERS tablespace
    2 120 Two online redo log files
    2 110 First and second control files
    1 250 TEMP tablespace
    1 5 Server parameter file (SPFILE)
    1 5 Password file


Note:

If you prefer to use manual, instead of automatic, undo management, create a single RBS tablespace raw device at least 500 MB in size instead of the UNDOTBSn raw devices.


Bind the Partitions to Raw Devices

After you have created the required partitions, you must bind the partitions to raw devices. However, you must first determine what raw devices are already bound to other devices. The procedure that you must follow to complete this task varies, depending on the distribution that you are using:

  • Red Hat:

    1. To determine what raw devices are already bound to other devices, enter the following command:

      # /usr/sbin/raw -qa
      
      

      Raw devices have device names in the form /dev/raw/rawn, where n is a number that identifies the raw device.

    2. Open the /etc/sysconfig/rawdevices file in any text editor and add a line similar to the following for each partition that you created:

      /dev/raw/raw1 /dev/sdb1
      
      

      Specify an unused raw device for each partition.

    3. For each raw device that you specified in the rawdevices file, enter commands similar to the following to set the owner, group, and permissions on the device file:

      # chown oracle:oinstall /dev/dev/rawn
      # chmod 660 /dev/raw/rawn
      
      
    4. To bind the partitions to the raw devices, enter the following command:

      # /sbin/service rawdevices restart
      
      

      By editing the rawdevices file, the system binds the partitions to the raw devices when it reboots.

  • UnitedLinux:

    1. To determine what raw devices are already bound to other devices, enter the following command:

      # /usr/sbin/raw -qa
      
      

      Raw devices have device names in the form /dev/raw/rawn, where n is a number that identifies the raw device.

    2. Open the /etc/raw file in any text editor and add a line similar to the following to associate each partition with an unused raw device:

      raw1:sdb1
      
      
    3. For each raw device that you specified in the /etc/raw file, enter commands similar to the following to set the owner, group, and permissions on the device file:

      # chown oracle:dba /dev/raw/rawn
      # chmod 660 /dev/raw/rawn
      
      
    4. To bind the partitions to the raw devices, enter the following command:

      # /etc/init.d/raw
      
      
    5. To ensure that the raw devices are bound when the system reboots, enter the following command:

      # /sbin/chkconfig raw on
      
      

Create the DBCA Raw Device Mapping File

To allow Database Configuration Assistant (DBCA) to identify the appropriate raw partition for each database file, you must create a raw device mapping file, as follows:

  1. Set the ORACLE_BASE environment variable to specify the Oracle base directory that you identified or created previously:

    • Bourne, Bash or Korn shell:

      $ ORACLE_BASE=/u01/app/oracle ; export ORACLE_BASE
      
      
    • C shell:

      % setenv ORACLE_BASE /u01/app/oracle
      
      
  2. Create a database file subdirectory under the Oracle base directory and set the appropriate owner, group, and permissions on it:

    # mkdir -p $ORACLE_BASE/oradata/dbname
    # chown -R oracle:oinstall $ORACLE_BASE/oradata
    # chmod -R 775 $ORACLE_BASE/oradata
    
    

    In this example, dbname is the name of the database that you chose previously.

  3. Change directory to the $ORACLE_BASE/oradata/dbname directory.

  4. Edit the dbname_raw.conf file in any text editor to create a file similar to the following:

    system=/dev/raw/raw1
    sysaux=/dev/raw/raw2
    example=/dev/raw/raw3
    users=/dev/raw/raw4
    temp=/dev/raw/raw5
    undotbs1=/dev/raw/raw6
    redo1_1=/dev/raw/raw8
    redo1_2=/dev/raw/raw9
    control1=/dev/raw/raw12
    control2=/dev/raw/raw13
    spfile=/dev/raw/raw14
    pwdfile=/dev/raw/raw15
    
    

    Use the following guidelines when creating or editing this file:

    • Each line in the file must have the following format:

      database_object_identifier=raw_device_path
      
      
    • For a single instance database, the file must specify one automatic undo tablespace datafile (undotbs1), and at least two redo log files (redo1_1, redo1_2).

    • Specify at least two control files (control1, control2).

    • To use manual instead of automatic undo management, specify a single RBS tablespace datafile (rbs) instead of the automatic undo management tablespaces.

  5. Save the file and note the file name that you specified.

  6. When you are configuring the oracle user’s environment later in this chapter, set the DBCA_RAW_CONFIG environment variable to specify the full path to this file.

Configuring Raw Logical Volumes on Solaris

This section describes how to configure raw logical volumes on Solaris.


Create a Disk Group

To create a disk group, follow these steps:

  1. If necessary, install the disks that you intend to use for the disk group and reboot the system.

  2. To make sure that the disks are available, enter the following command:

    # /usr/sbin/format
    
    

    The output from this command is similar to the following:

    AVAILABLE DISK SELECTIONS:
           0. c0t0d0 <ST34321A cyl 8892 alt 2 hd 15 sec 63>
              /pci@1f,0/pci@1,1/ide@3/dad@0,0
           1. c1t5d0 <SUN9.0G cyl 4924 alt 2 hd 27 sec 133>
              /pci@1f,0/pci@1/scsi@1/sd@5,0
    
    

    This command displays information about each disk attached to the system, including the device name (cxtydz).

  3. From the list, identify the device names for the disk devices that you want to add to a disk group, then press Ctrl/D to exit from the format utility.

  4. Enter the following command to verify that the devices you identified are not mounted as file systems:

    # df -k
    
    

    This command displays information about the partitions (slices) on disk devices that are mounted as file systems. The device name for a slice includes the disk device name, followed by the slice number, for example cxtydzsn, where sn is the slice number. Slice 2 (s2) represents the entire disk. The disk devices that you choose must not be shown as mounted partitions.

  5. Enter the following commands to verify that the devices you identified are not already part of a disk group:


    Note:

    The following command displays information about VERITAS Volume Manager disks. If you use a different LVM, see the appropriate documentation for information about determining which disk devices it is managing.

    # /usr/sbin/vxdiskconfig
    # /usr/sbin/vxdisk list
    
    

    The vxdisk list command identifies the disk devices that are already configured in a disk group. The word online in the STATUS column also identifies disks that have been initialized and placed under VxVM control. The word error in the STATUS column identifies disks that are not initialized.

    The disk devices that you choose must not be in an existing disk group.

  6. If the disk devices that you want to use are not initialized, enter a command similar to the following to initialize each disk:

    # /usr/sbin/vxdiskadd cxtydz
    
    
  7. To create a disk group, enter a command similar to the following, specifying all of the disks that you want to add to the group:

    # /usr/sbin/vxdg init diskgroup diskname=devicename ...
    
    

    In this example:

    • diskgroup is the name of the disk group that you want to create, for example, oradg

    • diskname is an administrative name that you assign to a disk, for example orad01

    • devicename is the device name, for example, c1t0d0


Create Raw Logical Volumes in the New Disk Group

To create the required raw logical volumes in the new disk group, follow these steps:

  1. Choose a name for the database that you want to create.

    The name that you choose must start with a letter and have no more than four characters, for example, orcl.

  2. From the following table, identify the logical volumes that you must create:

    Number Partition Size (MB) Purpose and Sample Logical Volume Name
    Raw Logical Volumes for Oracle Database
    1 500 SYSTEM tablespace:
    dbname_system_raw_500m
    
    1 500 SYSAUX tablespace:
    dbname_sysaux_raw_500m
    
    1 500 UNDOTBS1 tablespace:
    dbname_undotbs1_raw_500m
    
    1 160 EXAMPLE tablespace:
    dbname_example_raw_160m
    
    1 120 USERS tablespace:
    dbname_users_raw_120m
    
    2 120 Two online redo log files (where m is the log number, 1 or 2):
    dbname_redo1_m_raw_120m
    
    2 110 First and second control files:
    dbname_control[1|2]_raw_110m
    
    1 250 TEMP tablespace:
    dbname_temp_raw_250m
    
    1 5 Server parameter file (SPFILE):
    dbname_spfile_raw_5m
    
    1 5 Password file:
    dbname_pwdfile_raw_5m
    


    Note:

    The following example shows how to create a basic logical volume. See the VERITAS Volume Manager documentation for information about how to create more complex logical volumes using striping, mirroring, or both.

  3. To create the other required logical volumes, enter a command similar to the following:

    # /usr/sbin/vxassist -g diskgroup make volume size user=oracle \
     group=dba mode=660
    
    

    In this example:

    • diskgroup is the name of the disk group you created previously, for example, oradg.

    • volume is the name of the logical volume that you want to create.

      Oracle recommends that you use the sample names shown in the previous table for the logical volumes. Substitute the dbname variable in the sample logical volume name with the name you choose for the database in step 1.

    • size is the size of the logical volume, for example, 500m represents 500 MB.

    • user=oracle group=dba mode=660 specifies the owner and permissions on the volume. Specify the Oracle software owner user and the OSDBA group for the user and group values (typically oracle and dba).

    The following example shows a sample command used to create a 500 MB logical volume in the oradg disk group for the SYSAUX tablespace of a database named test:

    # /usr/sbin/vxassist -g oradb make test_sysaux_500m 500m \
    user=oracle group=dba mode=660
    
    

Create the DBCA Raw Device Mapping File

To allow Database Configuration Assistant (DBCA) to identify the appropriate raw device for each database file, you must create a raw device mapping file, as follows:

  1. Set the ORACLE_BASE environment variable to specify the Oracle base directory that you identified or created previously:

    • Bourne, Bash or Korn shell:

      $ ORACLE_BASE=/u01/app/oracle ; export ORACLE_BASE
      
      
    • C shell:

      % setenv ORACLE_BASE /u01/app/oracle
      
      
  2. Create a database file subdirectory under the Oracle base directory and set the appropriate owner, group, and permissions on it:

    # mkdir -p $ORACLE_BASE/oradata/dbname
    # chown -R oracle:oinstall $ORACLE_BASE/oradata
    # chmod -R 775 $ORACLE_BASE/oradata
    
    

    In this example, dbname is the name of the database that you chose previously.

  3. Change directory to the $ORACLE_BASE/oradata/dbname directory.

  4. Enter the following command to create a text file that you can use to create the raw device mapping file:

    # find /dev/vx/rdsk/diskgroup -user oracle -name dbname* \
    -print > dbname_raw.conf
    
    
  5. Edit the dbname_raw.conf file in any text editor to create a file similar to the following:

    system=/dev/vx/rdsk/diskgroup/dbname_system_raw_500m
    sysaux=/dev/vx/rdsk/diskgroup/dbname_sysaux_raw_500m
    example=/dev/vx/rdsk/diskgroup/dbname_example_raw_160m
    users=/dev/vx/rdsk/diskgroup/dbname_users_raw_120m
    temp=/dev/vx/rdsk/diskgroup/dbname_temp_raw_250m
    undotbs1=/dev/vx/rdsk/diskgroup/dbname_undotbs1_raw_500m
    redo1_1=/dev/vx/rdsk/diskgroup/dbname_redo1_1_raw_120m
    redo1_2=/dev/vx/rdsk/diskgroup/dbname_redo1_2_raw_120m
    control1=/dev/vx/rdsk/diskgroup/dbname_control1_raw_110m
    control2=/dev/vx/rdsk/diskgroup/dbname_control2_raw_110m
    spfile=/dev/vx/rdsk/diskgroup/dbname_spfile_raw_5m
    pwdfile=/dev/vx/rdsk/diskgroup/dbname_pwdfile_raw_5m
    
    

    In this example:

    • diskgroup is the name of the volume group

    • dbname is the name of the database

    Use the following guidelines when creating or editing this file:

    • Each line in the file must have the following format:

      database_object_identifier=logical_volume
      
      

      The logical volume names suggested in this manual include the database object identifier that you must use in this mapping file. For example, in the following logical volume name, redo1_1 is the database object identifier:

      /dev/vx/rdsk/oradg/rac_redo1_1_raw_120m
      
      
    • For a single instance database, the file must specify one automatic undo tablespace datafile (undotbs1), and at least two redo log files (redo1_1, redo1_2).

    • Specify at least two control files (control1, control2).

    • To use manual instead of automatic undo management, specify a single RBS tablespace datafile (rbs) instead of the automatic undo management tablespaces.

  6. Save the file and note the file name that you specified.

  7. When you are configuring the oracle user’s environment later in this chapter, set the DBCA_RAW_CONFIG environment variable to specify the full path to this file.

Stop Existing Oracle Processes


Caution:

If you are installing additional Oracle Database 10g products in an existing Oracle home, stop all processes running in the Oracle home. You must complete this task to enable the Installer to relink certain executables and libraries.

If you choose to create a database during the installation, most installation types configure and start a default Oracle Net listener using TCP/IP port 1521 and the IPC key value EXTPROC. However, if an existing Oracle Net listener process is using the same port or key value, the Installer can only configure the new listener; it cannot start it. To ensure that the new listener process starts during the installation, you must shut down any existing listeners before starting the Installer.

To determine whether an existing listener process is running and to shut it down if necessary, follow these steps:

  1. Switch user to oracle:

    # su - oracle
    
    
  2. Enter the following command to determine whether a listener process is running and to identify its name and the Oracle home directory in which it is installed:

    $ ps -ef | grep tnslsnr
    
    

    This command displays information about the Oracle Net listeners running on the system:

    ... oracle_home1/bin/tnslsnr LISTENER -inherit
    
    

    In this example, oracle_home1 is the Oracle home directory where the listener is installed and LISTENER is the listener name.


    Note:

    If no Oracle Net listeners are running, see the "Configure the oracle User’s Environment" section to continue.

  3. Set the ORACLE_HOME environment variable to specify the appropriate Oracle home directory for the listener:

    • Bourne, Bash, or Korn shell:

      $ ORACLE_HOME=oracle_home1
      $ export ORACLE_HOME
      
      
    • C or tcsh shell:

      % setenv ORACLE_HOME oracle_home1
      
      
  4. Enter the following command to identify the TCP/IP port number and IPC key value that the listener is using:

    $ $ORACLE_HOME/bin/lsnrctl status listenername
    

    Note:

    If the listener uses the default name LISTENER, you do not have to specify the listener name in this command.

  5. Enter a command similar to the following to stop the listener process:

    $ $ORACLE_HOME/bin/lsnrctl stop listenername
    
    
  6. Repeat this procedure to stop all listeners running on this system.

Configure the oracle User’s Environment

You run the Installer from the oracle account. However, before you start the Installer you must configure the environment of the oracle user. To configure the environment, you must:

To set the oracle user’s environment, follow these steps:

  1. Start a new terminal session, for example, an X terminal (xterm).

  2. Enter the following command to ensure that X Window applications can display on this system:

    $ xhost +
    
    
  3. If you are not already logged in to the system where you want to install the software, log in to that system as the oracle user.

  4. If you are not logged in as the oracle user, switch user to oracle:

    $ su - oracle
    
    
  5. To determine the default shell for the oracle user, enter the following command:

    $ echo $SHELL
    
    
  6. Open the oracle user’s shell startup file in any text editor:


    Note:

    On Red Hat Linux, .bash_profile is the user startup file for the Bash shell.

    • Bourne shell (sh), Bash shell (bash), or Korn shell (ksh):

      $ vi .profile
      
      
    • C shell (csh or tcsh):

      % vi .login
      
      
  7. Enter or edit the following line, specifying a value of 022 for the default file creation mask:

    umask 022
    
    
  8. If the ORACLE_SID, ORACLE_HOME, or ORACLE_BASE environment variables are set in the file, remove the appropriate lines from the file.

  9. Save the file and exit from the editor.

  10. To run the shell startup script, enter one of the following commands:

    • Bash shell on Red Hat Enterprise Linux:

      $ . ./.bash_profile
      
      
    • Bourne, Bash, or Korn shell:

      $ . ./.profile
      
      
    • C shell:

      % source ./.login
      
      
  11. If you are not installing the software on the local system, enter a command similar to the following to direct X applications to display on the local system:

    • Bourne, Bash, or Korn shell:

      $ DISPLAY=local_host:0.0 ; export DISPLAY
      
      
    • C shell:

      % setenv DISPLAY local_host:0.0
      
      

    In this example, local_host is the host name or IP address of the system you want to use to display the Installer (your workstation or PC).

  12. If you determined that the /tmp directory has less than 400 MB of free disk space, identify a file system with at least 400 MB of free space and set the TEMP and TMPDIR environment variables to specify a temporary directory on this file system:

    1. Use the df -k command (or bdf command on HP-UX) to identify a suitable file system with sufficient free space.

    2. If necessary, enter commands similar to the following to create a temporary directory on the file system you identified, and set the appropriate permissions on the directory:

      $ su - root
      # mkdir /mount_point/tmp
      # chmod a+wr /mount_point/tmp
      # exit
      
      
    3. Enter commands similar to the following to set the TEMP and TMPDIR environment variables:

      • Bourne, Bash, or Korn shell:

        $ TEMP=/mount_point/tmp
        $ TMPDIR=/mount_point/tmp
        $ export TEMP TMPDIR
        
        
      • C shell:

        % setenv TEMP /mount_point/tmp
        % setenv TMPDIR /mount_point/tmp
        
        
  13. Enter commands similar to the following to set the ORACLE_BASE and ORACLE_SID environment variables:

    • Bourne, Bash, or Korn shell:

      $ ORACLE_BASE=/u01/app/oracle
      $ ORACLE_SID=sales
      $ export ORACLE_BASE ORACLE_SID
      
      
    • C shell:

      % setenv ORACLE_BASE /u01/app/oracle
      % setenv ORACLE_SID sales
      
      

    In these examples, /u01/app/oracle is the Oracle base directory that you created or identified earlier and sales is the name that you want to call the database (typically no more than five characters).

  14. Enter the following command to ensure that the ORACLE_HOME and TNS_ADMIN environment variables are not set:

    • Bourne, Bash, or Korn shell:

      $ unset ORACLE_HOME
      $ unset TNS_ADMIN
      
      
    • C shell:

      % unsetenv ORACLE_HOME
      % unsetenv TNS_ADMIN
      
      

    Note:

    If the ORACLE_HOME environment variable is set, the Installer uses the value it specifies as the default path for the Oracle home directory. However, if you set the ORACLE_BASE environment variable, Oracle recommends that you unset the ORACLE_HOME environment variable and choose the default path suggested by the Installer.

  15. To verify that the environment has been set correctly, enter the following commands:

    $ umask
    $ env | more
    
    

    Verify that the umask command displays a value of 22, 022, or 0022 and the environment variables that you set in this section have the correct values.