D How to Complete Preinstallation Tasks Manually

This appendix provides instructions for how to complete configuration tasks manually that Cluster Verification Utility (CVU) and Oracle Universal Installer normally complete during installation. Use this appendix as a guide if you cannot use the fixup script.

This appendix contains the following information:

D.1 Configuring Shell Limits and System Configuration Parameters for AIX

This section contains the following topics:


The parameter and shell limit values shown in this section 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.

Oracle recommends that you set shell limits and system configuration parameters as described in this section.

D.1.1 Configuring Shell Limits

Set shell limits for the Oracle Grid Infrastructure installation owner and for root. Verify that unlimited is set for both accounts either by using the smit utility or by editing the /etc/security/limits file. The root user requires these settings because the crs daemon (crsd) runs as root.

For AIX, it is the ulimit settings that determine process memory related resource limits. Verify that the shell limits displayed in the following table are set to the values shown:

Shell Limit (As Shown in smit) Recommended Value
Soft File Descriptors at least 1024 KB
Hard File Descriptors at least 65536 KB
Number of processes (Soft) at least 2047
Number of processes (Hard) at least 16384
Soft STACK size at least 10240 KB
Hard STACK size at least 10240 KB; at most 32768 KB
Soft FILE size unlimited
Soft CPU time unlimited

Note: This is the default value.

Soft DATA segment unlimited
Soft Real Memory size unlimited

To display the current value specified for these shell limits, and to change them if necessary perform the following 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 the values shown for the limits listed in the previous table.

    If necessary, edit the existing value. To edit the values, you can use the smit utility. However, to set the value of Soft Real Memory size, you must edit the file /etc/security/limits. If you have permissions to run smit utility, then you automatically have the permissions to edit the limits file.

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

D.1.2 Configuring System Configuration Parameters

If you cannot use the Fixup scripts, then verify that the kernel parameters shown in the following table are set to values greater than or equal to the minimum value shown. If the current value for any parameter is greater than the value listed in this table, then the Fixup scripts do not change the value of that parameter.

Parameter Minimum Value
maxuprocs 16384
ncargs 128

The following procedure describes how to verify and set the values manually.

  • To verify that the maximum number of processes allowed per user is set to 16384 or greater, use the following steps:


    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 16384.

      If necessary, edit the existing value.

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

  • To verify that long commands can be executed from shell, use the following steps:


    Oracle recommends that you set the ncargs system attribute to a value greater than or equal to 128. The ncargs attribute determines the maximum number of values that can be passed as command line arguments.
    1. Enter the following command:

      # smit chgsys
    2. Verify that the value shown for ARG/ENV list size in 4K byte blocks is greater than or equal to 128.

      If necessary, edit the existing value.

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

D.1.3 Checking Asynchronous Input Output Processes

On AIX 6 and AIX 7, the Asynchronous Input Output (AIO) device drivers are enabled by default. For both AIX 6 and AIX 7, increase the number of aioserver processes from the default value. The recommended value for aio_maxreqs is 64k (65536). Confirm this value for both AIX 6 and AIX 7.

Confirm the aio_maxreqs value using the following procedure:

# ioo –o aio_maxreqs
aio_maxreqs = 65536

When performing an asynchronous I/O to a file system, each asynchronous I/O operation is tied to an asynchronous I/O server. Thus, the number of asynchronous I/O servers limits the number of concurrent asynchronous I/O operations in the system.

The initial number of servers that are started during a system restart is determined by the aio_minservers parameter. As concurrent asynchronous I/O operations occur, additional asynchronous I/O servers are started, up to a maximum of the value set in the aio_maxservers parameter.

In general, to set the number of asynchronous I/O servers, complete the following procedure:

  1. Adjust the initial value of aio_maxservers to 10 times the number of logical disks divided by the number of CPUs that are to be used concurrently but no more than 80.

  2. Monitor the performance effects on the system during periods of high I/O activity. If all AIO server processes are started, then increase the aio_maxservers value. Also, continue to monitor the system performance during peak I/O activity to determine if there was a benefit from the additional AIO servers. Too many asynchronous I/O servers increase memory and processor overload of additional processes, but this disadvantage is small. See your operating system vendor documentation for information about tuning AIO parameters

To monitor the number of AIO server processes that have started, enter the following:

# ps -ek|grep -v grep|grep –v posix_aioserver|grep -c aioserver

D.2 Setting UDP and TCP Kernel Parameters Manually

If you do not use a Fixup script or CVU to set ephemeral ports, then use NDD to ensure that the kernel TCP/IP ephemeral port range is broad enough to provide enough ephemeral ports for the anticipated server workload. Ensure that the lower range is set to at least 9000 or higher, to avoid Well Known ports, and to avoid ports in the Registered Ports range commonly used by Oracle and other server ports. Set the port range high enough to avoid reserved ports for any applications you may intend to use. If the lower value of the range you have is greater than 9000, and the range is large enough for your anticipated workload, then you can ignore OUI warnings regarding the ephemeral port range.

Use the following commands to check your current range for ephemeral ports:

# /usr/sbin/no -a | fgrep ephemeral
     tcp_ephemeral_low = 32768
     tcp_ephemeral_high = 65500
     udp_ephemeral_low = 32768
     udp_ephemeral_high = 65500

In the preceding example, the TCP and UDP ephemeral ports are set to the default range (32768-65536).

If you expect your workload to require a high number of ephemeral ports, such as high node counts or heavy use of Parallel Query, then update the UDP and TCP ephemeral port range to a broader range. For example:

# /usr/sbin/no -p -o tcp_ephemeral_low=9000 -o tcp_ephemeral_high=65500
# /usr/sbin/no -p -o udp_ephemeral_low=9000 -o udp_ephemeral_high=65500

See Also:

"Setting TCP Network Protocol Buffer for Direct NFS Client" if you use Direct NFS Client