2 Oracle Database Client Preinstallation Tasks

This guide contains information required to install Oracle Database Client 12c. Ensure that you review information related to the platform on which you intend to install Oracle Database Client.

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

2.1 Logging 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-mode 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.
  • Following are the steps for installing the software from an X Window System workstation or X terminal:

    1. Start a local terminal session, for example, an X terminal (xterm).

    2. If you are not installing the software on the local system, then enter the following command to enable the remote host to display X applications on the local X server:

      $ xhost fully_qualified_remote_host_name
      

      For example:

      $ xhost somehost.us.example.com
      
    3. If you are not installing the software on the local system, then use the ssh, rlogin, or telnet command to connect to the system where you want to install the software:

      $ telnet fully_qualified_remote_host_name
      
    4. If you are not logged in as the root user, then enter the following command to switch user to root:

      $ sudo sh
      password:
      #
      
  • Following are the steps for installing the software from a PC or other system with X server software:

    Note:

    If necessary, refer to your X server documentation for more information about completing this procedure. Depending on the X server software that you are using, you may have to complete the tasks in a different order.
    1. Start the X server software.

    2. Configure the security settings of the X server software to permit remote hosts to display X applications on the local system.

    3. Connect to the remote system where you want to install the software and start a terminal session on that system, for example, an X terminal (xterm).

    4. If you are not logged in as the root user on the remote system, then enter the following command to switch user to root:

      $ sudo sh
      password:
      #
      

2.2 Configuring Servers for Oracle Database

This section describes the following operating system tasks you must complete before you install Oracle Database:

2.2.1 Checking Server Hardware and Memory Configuration

Run the following commands to check your current system information:

  1. To determine the available RAM and swap space, enter the following command to obtain the system activity report:

    # sar -r n i
    

    For example:

    # sar -r 2 10
    

    Where, n is the number of seconds to delay for the next iterations and i is the number of iterations you want to test

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

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

    # /usr/sbin/swap -l
    

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

    Note:

    Review your Oracle Solaris documentation for swap space allocation guidance for your server. The Oracle Solaris documentation guidelines supersede the swap space requirements listed in this guide.
  3. To determine the amount of space available in the /tmp directory, enter the following command:

    # df -k /tmp
    

    The df -k command displays disk space in 1 kilobyte blocks. On most systems, you can use the df command with the -h flag (df -h) to display output in "human-readable" format.

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

    # df -k
    # df -h
    
  5. To determine the RAM size, enter the following command:

    # /usr/sbin/prtconf | grep "Memory size"
    
  6. To determine if the system architecture can run the Oracle software, enter the following command:

    # /bin/isainfo -kv
    

    This command displays the processor type. The following is the expected output of this command:

    Oracle Solaris on SPARC (64-Bit):

    64-bit sparcv9 kernel modules
    

    Oracle Solaris on x86-64 (64-Bit):

    64-bit amd64 kernel modules
    

    If you do not see the expected output, then you cannot install the software on this system. Obtain the correct software for your system architecture before proceeding further

2.2.2 General Server Minimum Requirements

Ensure the following general minimum requirements on your system:

  • Ensure that the system is started with run level 3.

  • Ensure display cards provide at least 1024 x 768 display resolution, so that Oracle Universal Installer displays correctly while performing a system console-based installation.

2.2.3 Server Storage Minimum Requirements

Ensure that your Oracle Solaris system meets the following storage requirements:

  • Ensure that your Oracle Solaris system meets the disk space requirement for software files as described in the following tables:

    Table 2-1 Disk Space Requirements for Software Files on Oracle Solaris on SPARC (64-Bit)

    Installation Type Disk Space

    Instant Client

    255 MB

    Administrator

    1.9 GB

    Runtime

    1.5 GB

    Custom (maximum)

    1.9 GB


    Table 2-2 Disk Space Requirements for Software Files on Oracle Solaris on x86-64 (64-Bit)

    Installation Type Disk Space

    Instant Client

    264 MB

    Administrator

    1.8 GB

    Runtime

    1.4 GB

    Custom (maximum)

    1.9 GB


  • 180 MB of space in the /tmp directory.

    If the free space available in the /tmp directory is less than what is required, then complete one of the following steps:

    • Delete unnecessary files from the /tmp directory to meet the disk space requirement.

    • Set the TMP and TMPDIR environment variables when setting the oracle user's environment.

      See Also:

      "Configuring Oracle Software Owner Environment" for more information about setting TMP and TMPDIR
    • Extend the file system that contains the /tmp directory.

2.2.4 Server Memory Minimum Requirements

Ensure that your Oracle Solaris system meets the following memory requirements:

At least 256 MB of RAM.

Table 2-3 describes the relationship between the installed RAM and the configured swap space recommendation:

Table 2-3 Swap Space Requirement for Oracle Solaris

RAM Swap Space

256 MB

3 times the size of RAM

Between 256 MB and 512 MB

2 times the size of RAM

Between 512 MB and 2 GB

1.5 times the size of RAM

Between 2 GB and 16 GB

Equal to the size of RAM

More than 16 GB

16 GB


2.3 Reviewing Operating System Security Common Practices

Secure operating systems are an important basis for general system security. Ensure that your operating system deployment is in compliance with common security practices as described in your operating system vendor security guide.

2.4 About Operating System Requirements

Depending on the products that you intend to install, verify that you have the required operating system kernel and packages installed.

Requirements listed in this document are current as of the date listed on the title page. To obtain the most current information about kernel requirements, see the online version on the Oracle Technology Network at the following URL:

http://www.oracle.com/technetwork/indexes/documentation/index.html

Oracle Universal Installer performs checks your system to verify that it meets the listed operating system package requirements. To ensure that these checks complete successfully, verify the requirements before you start Oracle Universal Installer.

2.5 Operating System Requirements for Oracle Solaris on SPARC (64-Bit)

The following Oracle Solaris kernels and packages listed in this section are supported on SPARC 64-bit systems for Oracle Database and Oracle Grid Infrastructure 12c:

2.5.1 Supported Oracle Solaris 11 Releases for SPARC (64-Bit)

Use the following information to check supported Oracle Solaris 11 releases:

Table 2-4 SPARC 64-Bit Supported Oracle Solaris 11 Operating System Requirements

Item Requirements

SSH Requirement

Secure Shell is configured at installation for Oracle Solaris.

Oracle Solaris 11 operating system

Oracle Solaris 11 SRU 14.5 or later SRUs and updates

Packages for Oracle Solaris 11

The following packages must be installed:

  • pkg://solaris/system/dtrace

  • pkg://solaris/developer/assembler

  • pkg://solaris/developer/build/make

  • pkg://solaris/system/xopen/xcu4 (if not already installed as part of standard Oracle Solaris 11 installation)

  • pkg://solaris/x11/diagnostic/x11-info-clients

  • pkg://solaris/compress/unzip


2.5.2 Supported Oracle Solaris 10 Releases for SPARC (64-Bit)

Use the following information to check supported Oracle Solaris 10 releases:

Table 2-5 SPARC 64-Bit Supported Oracle Solaris 10 Operating System Requirements

Item Requirements

SSH Requirement

Ensure that OpenSSH is installed on your servers. OpenSSH is the required SSH software.

Oracle Solaris 10 operating system

Oracle Solaris 10 Update 11 (Oracle Solaris 10 1/13 s10s_u11wos_24a) or later updates

Packages and Patches for Oracle Solaris 10

The following packages and patches (or later versions) must be installed:

SUNWarc
SUNWbtool
SUNWcsl
SUNWdtrc
SUNWeu8os
SUNWhea
SUNWi1cs (ISO8859-1)
SUNWi15cs (ISO8859-15)
SUNWi1of
SUNWlibC
SUNWlibm
SUNWlibms
SUNWsprot
SUNWtoo
SUNWxwfnt
147440-25

Note: You may also require additional font packages for Java, depending on your locale. Refer to the following website for more information:

http://www.oracle.com/technetwork/java/javase/solaris-font-requirements-142758.html

2.6 Operating System Requirements for Oracle Solaris on x86-64 (64-Bit)

The following Oracle Solaris kernels and packages listed are supported on x86-64 (64-bit) systems for Oracle Database and Oracle Grid Infrastructure 12c:

2.6.1 Supported Oracle Solaris 11 Releases for x86-64 (64-Bit)

Use the following information to check supported Oracle Solaris 11 releases:

Table 2-6 x86-64 (64-Bit) Supported Oracle Solaris 11 Operating System Requirements

Item Requirements

SSH Requirement

Secure Shell is configured at installation for Oracle Solaris.

Oracle Solaris 11 operating system

Oracle Solaris 11 SRU 14.5 or later SRUs and updates

Packages for Oracle Solaris 11

The following packages must be installed:

  • pkg://solaris/system/dtrace

  • pkg://solaris/developer/assembler

  • pkg://solaris/developer/build/make

  • pkg://solaris/system/xopen/xcu4 (if not already installed as part of standard Oracle Solaris 11 installation)

  • pkg://solaris/x11/diagnostic/x11-info-clients

  • pkg://solaris/compress/unzip


2.6.2 Supported Oracle Solaris 10 Releases for x86-64 (64-Bit)

Use the following information to check supported Oracle Solaris 10 releases:

Table 2-7 x86-64 (64-Bit) Supported Oracle Solaris 10 Operating System Requirements

Item Requirements

SSH Requirement

Ensure that OpenSSH is installed on your servers. OpenSSH is the required SSH software.

Oracle Solaris 10 operating system

Oracle Solaris 10 Update 11 (Oracle Solaris 10 1/13 s10x_u11wos_24a) or later updates

Packages and Patches for Oracle Solaris 10

The following packages and patches (or later versions) must be installed:

SUNWarc
SUNWbtool
SUNWcsl
SUNWdtrc
SUNWeu8os
SUNWhea
SUNWlibC
SUNWlibm
SUNWlibms
SUNWsprot
SUNWtoo
SUNWi1of
SUNWi1cs (ISO8859-1)
SUNWi15cs (ISO8859-15)
SUNWxwfnt
147441-25

Note: You may also require additional font packages for Java, depending on your locale. Refer to the following website for more information:

http://www.oracle.com/technetwork/java/javase/solaris-font-requirements-142758.html

2.7 Additional Drivers and Software Packages for Oracle Solaris

You are not required to install additional drivers and packages, but you may choose to install or configure drivers and packages in the following list:

2.7.1 Installation Requirements for Open Database Connectivity

Review the following sections if you plan to install Open Database Connectivity (ODBC):

2.7.1.1 About ODBC Drivers and Oracle Database

Open Database Connectivity (ODBC) is a set of database access APIs that connect to the database, prepare, and then run SQL statements on the database. An application that uses an ODBC driver can access non-uniform data sources, such as spreadsheets and comma-delimited files.

2.7.1.2 Installing ODBC Drivers for Oracle Solaris

To use ODBC on Oracle Solaris, you require the following package:

unixODBC-2.3.1 or later

Download and install the ODBC Driver from the following website:

http://www.unixodbc.org/

2.7.2 Installation Requirements for Programming Environments for Oracle Solaris

Review the following sections to install programming environments:

2.7.2.1 About Programming Environments and Oracle Database

Oracle Database supports multiple programming languages for application development in different environments. Some languages require that you install additional compiler packages for the operating system.

Programming environments are options. They are not required for Oracle Database.

See Also :

Oracle Database Development Guide for an overview of programming environments

2.7.2.2 Configuring Support for Programming Environments

Ensure that your system meets the requirements for the programming environment you want to configure:

Table 2-8 Requirements for Programming Environments for Oracle Solaris

Programming Environments Support Requirements

Java Database Connectivity

JDK 6 (Java SE Development Kit release 1.6.0_37 or later updates to 1.6) with the JNDI extension with Oracle Java Database Connectivity.

Supported on Solaris 11: JDK 7 (Java SE Development Kit release 1.7.0)

Supported on Solaris 10: JDK 7 (Java SE Development Kit release 1.7.0)

JDK 1.6 is installed with this release.

Oracle Call Interface (OCI)

JDK 6 (Java SE Development Kit release 1.6.0_37 or later updates to 1.6) with the JNDI extension, and Oracle Call Interface drivers. JDK 1.6 is installed with this release.


Oracle C++
Oracle C++ Call Interface
Pro*C/C++
Oracle XML Developer's Kit (XDK)

Oracle Solaris Studio 12 (formerly Sun Studio)

Additional patches may be needed depending on applications you deploy.

Download Oracle Solaris Studio from the following URL:

http://www.oracle.com/technetwork/server-storage/solarisstudio/overview/index.html

Pro*COBOL

Micro Focus Server Express 5.1

Pro*FORTRAN

Oracle Solaris Studio 12 (Fortran 95)


2.7.3 Installation Requirements for Web Browsers

Web browsers are required only if you intend to use Oracle Enterprise Manager Database Express and Oracle Enterprise Manager Cloud Control. Web browsers must support Java Script, and the HTML 4.0 and CSS 1.0 standards.

For a list of browsers that meet these requirements see the Enterprise Manager certification matrix on My Oracle Support:

https://support.oracle.com

See Also:

Oracle Enterprise Manager Cloud Control Basic Installation Guide for steps on how to access the Enterprise Manager certification matrix

2.8 Checking the Software Requirements

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

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

    # uname -r
    5.11
    

    In this example, the version shown is Oracle Solaris 11 (5.11).

  2. To determine the release level enter the following command:

    # cat /etc/release
    Oracle Solaris 11.1 SPARC
    
  3. To determine if the required packages are installed, enter the following command:

    On Oracle Solaris 10

    pkginfo -i pkg_name
    

    On Oracle Solaris 11

    pkg list pkg_name
    

    Where pkg_name is the name of the package to check.

    For example, to determine if the required Oracle Solaris 10 packages are installed, enter a command similar to the following:

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

    If a package that is required for your system architecture is not installed, then install it. Refer to your operating system or software documentation for information about installing packages.

Note:

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

2.9 Verifying Operating System Packages on Oracle Solaris 11

Use the following command to check if you have the required packages:

# /usr/bin/pkg verify [-Hqv] [pkg_pattern ...]

The -H option omits the headers from the verification output.

The -q option prints nothing but return failure if any fatal errors are found.

The -v option includes informational messages regarding packages.

If a package that is required for your system architecture is not installed, then download install it from My Oracle Support:

https://support.oracle.com

See Also:

2.10 Verifying Operating System Patches on Oracle Solaris 10

Note:

Your system may have more recent versions of the listed patches installed on it. If a listed patch is not installed, then determine if a more recent version is installed before installing the version listed.

Verify that you have the required operating system patches. To ensure that the system meets these requirements, use the following procedure:

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

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

    For example, to determine if any version of the 119963 patch is installed, use the following command:

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

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

    https://support.oracle.com
    

2.11 Installation Requirements for Instant Client Light

In addition to the requirements described in the preceding sections, if you plan to use Instant Client Light, then the applications must use the following languages and character sets:

  • Language: Any language that is supported by Oracle

  • Territory: Any territory that is supported by Oracle

  • Character sets:

    • Single byte

      • US7ASCII

      • WE8DEC

      • WE8MSWIN1252

      • WE8ISO8859P1

    • Unicode

      • UTF8

      • AL16UTF16

      • AL32UTF8

      Instant Client Light can connect to databases having one of the following database character sets:

      • US7ASCII

      • WE8DEC

      • WE8MSWIN1252

      • WE8ISO8859P1

      • WE8EBCDIC37C

      • WE8EBCDIC1047

      • UTF8

      • AL32UTF8

The language, territory, and character sets are determined by the NLS_LANG environment variable.

2.12 Separate 32-Bit Client Software for 64-Bit Platforms

The 64-bit Oracle Database Client software does not contain any 32-bit client binaries. If you require 32-bit client binaries on 64-bit platforms, then install the 32-bit binaries from the respective 32-bit client software into a separate Oracle home.

The 64-bit Oracle Database Client preinstallation requirements apply to 32-bit Oracle Database Client also.

See Also:

My Oracle Support note 883702.1 for more information:

https://support.oracle.com/CSP/main/article?cmd=show&type=NOT&id=883702.1

2.13 Creating Required Operating System Groups and Users

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 have to create the following operating system group and user:

  • The Oracle Inventory group (typically, oinstall)

    You must have a group whose members are given access to write to the Oracle Central Inventory (oraInventory).

    Installation logs and trace files from installations of Oracle software. These files are also copied to the respective Oracle homes for future reference.

    Other metadata inventory information regarding Oracle installations are stored in the individual Oracle home inventory directories, and are separate from the Central Inventory.

    For new installations, Oracle recommends that you allow Oracle Universal Installer to create the Central Inventory directory. By default, if you create an Oracle path in compliance with OFA structure, such as /u01/app, then the Central Inventory is created in the path u01/app/oraInventory, using correct permissions to allow all Oracle installation owners to write to this directory.

  • The Oracle software owner user (typically, oracle)

    You must create this user the first time you install Oracle software on the system. This user owns all of the software installed during the installation. This user must have the Oracle Inventory group as its primary group. It must also have the OSDBA and OSOPER groups as secondary groups.

    Note:

    • In Oracle documentation, the user created to own the Oracle Database installations is referred to as the oracle user.

    • An Oracle Database installation must be owned by the Oracle software owner user (oracle) and the primary group of the Oracle software owner user must be the Oracle Inventory group (oinstall).

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 for separate installations.

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 the system administrator or refer to the operating system documentation.

The following sections describe how to create the required operating system users and groups:

2.13.1 Creating the Oracle Inventory Group

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

Determining Whether the Oracle Inventory Group Exists

When you install Oracle software on the system for the first time, Oracle Universal Installer creates the oraInst.loc file. This file identifies the name of the Oracle Inventory group (typically, oinstall), and the path of the Oracle Inventory directory.

An oraInst.loc file has content similar to the following:

inventory_loc=central_inventory_location
inst_group=group

In the preceding example, central_inventory_location is the location of the Oracle Central Inventory, and group is the name of the group that has permissions to write to the central inventory.

If you have an existing Oracle Inventory, then ensure that you use the same Oracle Inventory for all Oracle software installations, and ensure that all Oracle software users you intend to use for installation have permissions to write to this directory.

To determine whether the Oracle Inventory group exists, enter the following command:

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

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

inventory_loc=/u01/app/oraInventory
inst_group=oinstall

Creating the Oracle Inventory Group

If the oraInst.loc file does not exist, then create the Oracle Inventory group as follows:

# /usr/sbin/groupadd oinstall

2.13.2 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 operating system user

2.13.2.1 Determining If an Oracle Software Owner User Exists

To determine if an Oracle software owner user (oracle) exists, enter the following command:

# id oracle

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

uid=54321(oracle) gid=54321(oinstall) groups=54322(dba),54323(oper)

If the user exists, then determine whether you want to use the existing user or create another oracle user. If you want to use the existing user, then ensure that the user's primary group is the Oracle Inventory group. Refer to one of the following sections for more information:

Note:

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

2.13.2.2 Creating an Oracle Software Owner User

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

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

    # /usr/sbin/useradd -g oinstall[ -G dba]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 optional secondary groups. It must include the OSDBA group, and if required the OSOPER group. For example, dba, osoper.

  2. Set the password of the oracle user:

    # passwd -r files oracle
    

Refer to the "Identifying Required Software Directories" section to continue.

2.13.2.3 Modifying an Oracle Database Client Software Owner User

If the oracle user exists, but its primary group is not oinstall, then enter a command similar to the following to modify it:

# /usr/sbin/usermod -g oinstall -G dba oracle

Specify the primary group using the -g option and any required secondary group using the -G option.

Note:

Oracle does not support modifying existing Oracle Database server or other Oracle software installation owners. Oracle only supports modifying an Oracle Database Client software owner.

2.14 Identifying Required Software Directories

You must identify or create the following directories for the Oracle software:

Note:

Ensure that the paths you select for Oracle software, such as the Oracle home path and the Oracle base path, use only ASCII characters. Because installation owner names are used by default for some paths, this ASCII character restriction applies to user names, file names, and directory names.

2.14.1 Oracle Base Directory

The Oracle base directory is a top-level directory for Oracle software installations. 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/software_owner

In this example:

  • mount_point is the mount point directory for the file system that contains the Oracle software.

    The examples in this guide use /u01 for the mount point directory.

  • software_owner is the operating system user name of the software owner installing the Oracle software, for example oracle.

You must specify the ORACLE_BASE folder that contains all Oracle products.

Note:

If you have an existing Oracle base, then you can select it from the Use existing drop down box. By default, the drop down box contains the existing value for Oracle base selected. Refer to "Installing the Oracle Database Client Software" for information.

If you do not have an Oracle base, then you can create a new one by editing the text in the list box.

You can use the same Oracle base directory for multiple installations or you can create separate Oracle base directories for different installations. If different operating system users install Oracle software on the same system, then 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

The following sections describe how to identify existing Oracle base directories that may be suitable for the installation and how to create an Oracle base directory if necessary.

Regardless of whether you create an 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.

2.14.2 Oracle Inventory Directory

The Oracle Inventory directory (oraInventory) stores an inventory of all software installed on the system. It is required, and shared by all Oracle software installations on a single system. If you have an existing Oracle Inventory path, then Oracle Universal Installer continues to use that Oracle Inventory.

The first time you install Oracle software on a system, Oracle Universal Installer provides an OFA-compliant path in the format u[01-09]/app, such as /u01/app. The user running the installation has permissions to write to that path. If this is true, then Oracle Universal Installer creates the Oracle Inventory directory in the path /u[01-09]/app/oraInventory. For example:

/u01/app/oraInventory

If you have set ORACLE_BASE for the oracle user during installation, then Oracle Universal Installer creates the Oracle Inventory directory in the path ORACLE_BASE/../oraInventory. For example, if ORACLE_BASE is set to /u01/app/oracle/, then the Oracle Inventory directory is created in the path /u01/app/oraInventory.

If you have created neither an OFA-compliant path nor set ORACLE_BASE, then the Oracle Inventory directory is placed in the home directory of the user that is performing the installation. For example:

/home/oracle/oraInventory

Oracle Universal Installer creates the directory that you specify and sets the correct owner, group, and permissions for it. You do not have to create it.

Note:

  • All Oracle software installations rely on this directory. Ensure that you back it up regularly.

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

  • By default, the Oracle Inventory directory is not installed under the Oracle Base directory. This is because all Oracle software installations share a common Oracle Inventory, so there is only one Oracle Inventory for all users. Whereas, there is a separate Oracle Base for each user.

2.14.3 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 Oracle Universal Installer, it prompts you to specify the path to this directory, and a name that identifies it. In accordance with the OFA guidelines, Oracle strongly recommends that the Oracle home directory you specify is a subdirectory of the Oracle base directory for the user account performing the installation. Oracle recommends that you specify a path similar to the following for the Oracle home directory:

$ORACLE_BASE/product/12.1.0/client_1

Oracle Universal 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 have to create this directory.

Caution:

During installation, you must not specify an existing directory that has predefined permissions applied to it as the Oracle home directory. If you do, then you may experience installation failure due to file and group ownership permission errors.

2.15 Identifying or Creating an Oracle Base Directory

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

Note:

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

2.15.1 Identifying an Existing Oracle Base Directory

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

  • Identifying an existing Oracle Inventory directory

    Enter the following command to view the contents of the oraInst.loc file:

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

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

    inventory_loc=/u01/app/oraInventory
    inst_group=oinstall
    

    The inventory_loc parameter identifies the Oracle Inventory directory (oraInventory). The parent directory of the oraInventory directory is typically an Oracle base directory. In the previous example, /u01/app/oracle is an Oracle base directory.

  • Identifying existing Oracle home directories

    Enter the following command to view the contents of the oratab file:

    # more /var/opt/oracle/oratab
    

    If the oratab file exists, then it contains lines similar to the following:

    *:/u03/app/oracle/product/12.1.0/dbhome_1:N
    *:/opt/orauser/infra_904:N
    *:/oracle/9.2.0:N
    

    The directory paths specified on each line identify Oracle home directories. Directory paths that end with the user name of the Oracle software owner to use are valid choices for an Oracle base directory. If you intend to use the oracle user to install the software, then you could choose one of the following directories from the previous example:

    /u03/app/oracle
    /oracle
    

    Note:

    If possible, choose a directory path similar to the first (/u03/app/oracle). This path complies with the OFA guidelines.
  • Identifying existing Oracle base directories

    After you have located the Oracle home directory, run a similar command to confirm the location of Oracle base:

    cat /u01/app/oraInventory/ContentsXML/inventory.xml
    

To continue:

  • If an Oracle base directory exists and you want to use it, then refer to the "Configuring Oracle Software Owner Environment" section.

    When you configure the oracle user's environment later in this chapter, set the ORACLE_BASE environment variable to specify the directory you chose.

  • If an Oracle base directory does not exist on the system or to create an Oracle base directory, refer to the following section.

2.15.2 Creating an Oracle Base Directory

Before you create an Oracle base directory, you must identify an appropriate file system with disk space.

To identify an appropriate file system:

  1. To determine the free disk space on each mounted file system use the following command:

    # df -k
    
  2. From the display, identify a file system that has appropriate free space.

  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:

  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
    # chown -R oracle:oinstall /mount_point/app
    # chmod -R 775 /mount_point/app/
    

    For example:

    # mkdir -p /u01/app
    # chown -R oracle:oinstall /u01/app
    # chmod -R 775 /u01/app/
    
  2. When you configure the oracle user's environment later in this chapter, set the ORACLE_BASE environment variable to specify the Oracle base directory that you have created.

2.16 Configuring Oracle Software Owner Environment

You run Oracle Universal Installer from the oracle account. However, before you start Oracle Universal Installer you must configure the environment of the oracle user. To configure the environment, you must:

  • Set the default file mode creation mask (umask) to 022 in the shell startup file.

  • Set the DISPLAY environment variable.

Caution:

Use shell programs supported by your operating system vendor. If you use a shell program that is not supported by your operating system, then you can encounter errors during installation.

To set the oracle user's environment:

  1. Start a new X terminal session (xterm).

  2. Enter the following command to ensure that X Window applications can display on this system:

    $ xhost + RemoteHost
    

    where RemoteHost is the fully qualified remote host name. For example:

    $ xhost + somehost.example.com
    
  3. If you are not logged in to the system where you want to install the software, then log in to that system as the oracle user.

  4. If you are not logged in as the oracle user, then switch user to oracle:

    $ su - oracle
    
  5. To determine the default shell for the oracle user, enter the following command:

    $ echo $SHELL
    
  6. To run the shell startup script, enter one of the following commands:

    • Bash shell:

      $ . ./.bash_profile
      
    • Bourne or Korn shell:

      $ . ./.profile
      
    • C shell:

      % source ./.login
      
  7. If you are not installing the software on the local system, then 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
      
    • C shell:

      % setenv DISPLAY local_host:0.0
      

    In this example, local_host is the host name or IP address of the system to use to display Oracle Universal Installer (your workstation or PC).

  8. If you determined that the /tmp directory has less than 400 MB of free disk space, then identify a file system with at least 400 MB of free space and set the TMP and TMPDIR environment variables to specify a temporary directory on this file system:

    1. To determine the free disk space on each mounted file system, use the following command:

      # df -k 
      
    2. If necessary, enter commands similar to the following to create a temporary directory on the file system that you identified, and set the appropriate permissions on the directory:

      $ sudo mkdir /mount_point/tmp
      $ sudo chmod a+wr /mount_point/tmp
      # exit
      
    3. Enter commands similar to the following to set the TMP and TMPDIR environment variables:

      • Bourne, Bash, or Korn shell:

        $ TMP=/mount_point/tmp
        $ TMPDIR=/mount_point/tmp
        $ export TMP TMPDIR
        
      • C shell:

        % setenv TMP /mount_point/tmp
        % setenv TMPDIR /mount_point/tmp
        
  9. If you have had an existing installation on your system, and you are using the same user account to install this installation, then unset the ORACLE_HOME, ORACLE_BASE, ORACLE_SID, TNS_ADMIN environment variables and any other environment variable set for the Oracle installation user that is connected with Oracle software homes.

    Enter the following commands to ensure that the ORACLE_HOME, ORACLE_BASE, ORACLE_SID and TNS_ADMIN environment variables are not set:

    • Bourne, Bash, or Korn shell:

      $ unset ORACLE_HOME
      $ unset ORACLE_BASE
      $ unset ORACLE_SID
      $ unset TNS_ADMIN
      
    • C shell:

      % unsetenv ORACLE_HOME
      % unsetenv ORACLE_BASE
      % unsetenv ORACLE_SID
      % unsetenv TNS_ADMIN
      

    Use the following command to check the PATH environment variable:

    $ echo $PATH
    

    Ensure that the $ORACLE_HOME/bin path is removed from your PATH environment variable.

    Note:

    If the ORACLE_HOME environment variable is set, then Oracle Universal Installer uses the value that it specifies as the default path for the Oracle home directory. If you set the ORACLE_BASE environment variable, then Oracle recommends that you unset the ORACLE_HOME environment variable and choose the default path suggested by Oracle Universal Installer.
  10. 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.