db2prereqcheck - Check installation prerequisites

Checks whether your system meets the prerequisites for the installation of a specific version of Db2®.

By using this command, you can determine whether your system satisfies the prerequisites before you begin the installation process. Please note you must download the installation media to run db2prereqcheck Db2 and start the installation process.

The db2prereqcheck command uses a resource XML file that contains the prerequisites. The default path of the XML file for Linux® and UNIX is located in DB2 installation/cfg/DB2prereqs.xml. You must have read or write permissions on the XML file. Do not modify the contents of the XML file.
Note: If you do not specify any options for the db2prereqcheck command, both Db2 pureScale®and non Db2 pureScale server prerequisites are checked for all Db2 versions listed in the DB2prereqs.xml file.

No error from db2prereqcheck does not mean the current environment is supported or tested. For the most up-to-date installation requirements for data server products, see System requirements for IBM® Db2 for Linux, UNIX, and Windows.

Authorization

Root user or non-root user authority is required on Linux and UNIX operating systems.

Command Syntax

Read syntax diagramSkip visual syntax diagramdb2prereqcheck-vversion-l-fxml_file-c-pDB2-pureScale-options-hlhost-name-tb_devdevice-ooutput-file-s
DB2-pureScale-options
Read syntax diagramSkip visual syntax diagram-t SINGLE_IB_PORT_CLUSTERMULT_IB_PORT_CLUSTERSINGLE_ROCE_PORT_CLUSTERMULTI_ROCE_PORT_CLUSTER -hl,host-name-dl,device-iuinstance_user-tb_devdevice-nm,netname-adapter_listadapter_list_filename
Read syntax diagramSkip visual syntax diagram-u-g-i
Note: db2prereqcheck checks TSA's prerequisites related to Db2 pureScale environments. Installing TSA is mandatory related to Db2 pureScale. Therefore, it will output an error if TSA's prerequisites are not met related to Db2 pureScale and ensure you meet all the requirements for TSA.

Command Parameters

-v version
Checks the prerequisites for a specific Db2 version. The -i and -v parameters are mutually exclusive.
-l
Checks the prerequisites related to Db2 pureScale and unrelated to Db2 pureScale environments for the latest Db2 version that is defined in the XML resource file. The -l and -v parameters are mutually exclusive. The -l parameter will not print any output to the screen if all prerequisites are met.
-f xml-file
Specifies the name of the XML resource file. If you do not specify the -f parameter, the DB2 installation/cfg/DB2prereqs.xml file is used.
-c
Checks the prerequisites for thin client.
The -c, -u, -g, and -p parameters are mutually exclusive.
-p
Checks the prerequisites for the Db2 pureScale environment (Linux and AIX® operating systems only). This is the default option.
The -c, -u, -g, and -p parameters are mutually exclusive.
Important: To validate prerequisites requirement for a specific network configuration of a Db2 pureScale installation, the -t network configuration type option must be specified along with this option.
-o output-file
Specifies a name for the output file such as db2prereqcheck.rpt. If you do not specify a filename the output is displayed on the screen.
-s
Prints prerequisite validation summary on screen.
-u
Checks the uDAPL requirement for the Db2 pureScale environment (Linux and AIX operating systems only).
Note: The -u parameter is deprecated. Use the -hl with -nm parameters to check the RDMA library requirements.
The -c, -u, -g, and -p parameters are mutually exclusive.

On RoCE networks, you must manually ensure that the AIX and uDAPL software prerequisites are satisfied. The db2prereqcheck command does not validate the levels of the AIX and uDAPL software.

-g
Checks the GPL compilation requirement (Linux operating systems only).
The -c, -u, -g, and -p parameters are mutually exclusive.
Specify the -v or -l parameter.
-i
Checks the prerequisites that are unrelated to Db2 pureScale environments for the latest Db2 version that you defined in the XML resource file. The -i and -v parameters are mutually exclusive.
-t
Validates the prerequisites for a specific type of network configuration (Linux operating systems only)
Note: the -t parameter is deprecated. Use the -hl with -nm parameters to check for RDMA network requirements.
The network configuration type must be a single InfiniBand port cluster, multiple InfiniBand port cluster, single RoCE port cluster, or multiple RoCE port cluster (SINGLE_IB_PORT_CLUSTER, MULTI_IB_PORT_CLUSTER, SINGLE_ROCE_PORT_CLUSTER or MULTI_ROCE_PORT_CLUSTER)
-hl host-name
Specifies a list of hosts that are checked for passwordless root SSH access between all hosts.
-dl device
Specifies one or more device paths of the shared disks that are verified in order to make sure that they are accessible by all hosts. If you specify this parameter, you must also specify the -hl parameter.

For example: /dev/hdisk2; /dev/dm-0

ex: /dev/hdisk2; /dev/dm-0
-adapter_list adapter_list_filename
Specifies the file name that contains the list of hostname(s), netname(s), adapter name(s), or each of the host to verify the network connectivity between all the hosts are pingable using RDMA. A full path to the adapter_list filename must be specified. With version 11.5, the MAC addresses of each adapter port for each host is also required in order to setup the routes correctly to verify the RDMA network connectivity among all hosts' adapters. This is only required on pureScale configured with RoCE network on Linux. For any configuration with other supported network types such as (Infiniband or TCP/IP sockets) on Linux or any configuration on AIX, specify a value of 0 as MAC address for each row in the input file suffices.
The input file must have the following format:
#Hostname    Netname         Interface-Adapter    Mac-Address
hostname1    netname1-ib0    deviceName-1         macAddress-1
hostname2    netname2-ib1    deviceName-2         macAddress-2
hostname3    netname3-ib2    deviceName-3         macAddress-3
Sample:
#Hostname          Netname                    Interface-Adapter          Mac-Address                                           
machine110         machine110-ib0             hca1                       A4:1B:2C:73:83:B1                                        
machine111         machine111-ib0             hca1                       A4:1B:2C:73:83:B2                               
machine112         machine112-ib0             hca1                       A4:1B:2C:73:83:B3       
Refer to /etc/dat.conf to find the Interface-Adapter name (the dat.conf file is not required for RHEL 8.x and higher). For example:
from /etc/dat.conf: 
hca0 u1.2 nonthreadsafe default /usr/lib/libdapl/libdapl.a(shr_64.o) IBM.1.1 "/dev/iba0 1 ib0"

where hca1 is the device name of your adapter.

Refer to the "ifconfig -a" command to find the Mac-Address. For Example:
 ib0      Link encap:InfiniBand  HWaddr A4:1B:2C:73:83:B1
                   inet addr:192.168.10.101  Bcast:192.168.10.255  Mask:255.255.255.0
                   inet6 addr: fe80::202:2cff:fe73:83b1/64 Scope:Link
                   UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
                   RX packets:42445113 errors:0 dropped:0 overruns:0 frame:0
                   TX packets:53370185 errors:0 dropped:0 overruns:0 carrier:0
                   collisions:0 txqueuelen:1000
                   RX bytes:4685539133 (4468.4 Mb)  TX bytes:6176996772 (5890.8 Mb)
where A4:1B:2C:73:83:B1 ( HWaddr row ) is the Mac-Address of the adapter.
Note: In the input file, any line that is preceded by # is considered as comment and skipped.
-iu instance_user
Specifies the instance user name. The UID and GID of the instance user name are verified to make sure they are the same across all hosts. If you specify this parameter, you must also specify the -hl parameter.
-tb_dev device

Specifies the device name of the shared disk that is verified for use as the quorum tie-breaker device for the cluster. If you specify this parameter, you must also specify the -hl parameter.

-nm netname
Specifies the list of netnames. These netnames are used to ping the RocE & IB networks to verify that they are pingable between all hosts.

Examples

To check whether the system meets the basic pureScale prerequisites for a specific Db2 version, issue the following command:
db2prereqcheck -p -v 11.5.0.0 
=============================================================================================================
Checking prerequisites for DB2 installation with the DB2 pureScale Feature.  Version: "11.5.0.0".  Operating system: "AIX".

Validating "IOPORTS" ...
The input/output completion Port (IOCP) is installed on host "hostA.torolab.ibm.com".
The input/output completion Port (IOCP) is  enabled on host "hostA.torolab.ibm.com".
   Requirement matched.

Validating "prereqSAM" ...
   Requirement matched.

Validating "free space" ...
The directory "/tmp" has enough space on host "hostA.torolab.ibm.com".
   Requirement matched.

Validating "free space" ...
The directory "/var" has enough space on host "hostA.torolab.ibm.com".
   Requirement matched.

Validating "free space" ...
The directory "/usr" has enough space on host "hostA.torolab.ibm.com".
   Requirement matched.

Validating "kernel level " ...
   Required minimum operating system kernel level: "7.1".
   Actual operating system kernel level: "7.1".
   Requirement matched.

Validating "Power hardware " ...
   Required minimum operating system Power level: "7".
   Actual operating system Power level: "7".
   Requirement matched.

Validating "AIX technology level and service pack " ...
   Required minimum technology level: "5" Service pack: "3"
   Actual technology level: "5" Service pack: "3"
   Requirement matched.

Validating "Java for TSAMP" ...
   Required minimum "Java" version: "7.1.0.145 or 7.0.0.265 or 6.0.0.265"
   Requirement matched.

Validating "XL C/C++ Runtime" ...
   Required minimum "XL C/C++ Runtime" level:  "13.1.2.0"
   Actual version:  "13.1.3.1"
   Requirement matched.
DBT3533I  The db2prereqcheck utility has confirmed that all installation prerequisites were met.
The following sample output was generated on an AIX operating system. Use the -u parameter for Db2 pureScale uDAPL only:
db2prereqcheck -u -v 11.5.0.0
==========================================================================

Checking prerequisites for DB2 installation. Version "11.5.0.0". Operating system "AIX"

Validating "uDAPL" ...
   Required minimum "uDAPL" level:  "7.1.5.3"
   Actual version:  "7.1.5.30"
   Requirement matched.
DBT3533I  The db2prereqcheck utility has confirmed that all installation prerequisites were met.

==========================================================================

Checking prerequisites for DB2 installation with the DB2 pureScale Feature.  Version: "11.5.0.0".  Operating system: "AIX".

Validating "uDAPL" ...
   Required minimum "uDAPL" level:  "7.1.5.3"
   Actual version:  "7.1.5.30"
   Requirement matched.
DBT3533I  The db2prereqcheck utility has confirmed that all installation prerequisites were met.
The following sample output was generated on a AIX operating system. Use the -c parameter for a client installation:
db2prereqcheck -c -v 11.5.0.0
==========================================================================

Checking prerequisites for DB2 installation. Version "11.5.0.0". Operating system "AIX"

Validating "kernel level " ...
   Required minimum operating system kernel level: "7.1".
   Actual operating system kernel level: "7.1".
   Requirement matched.

Validating "Power hardware " ...
   Required minimum operating system Power level: "7".
   Actual operating system Power level: "7".
   Requirement matched.

Validating "AIX technology level and service pack " ...
   Required minimum technology level: "5" Service pack: "3"
   Actual technology level: "5" Service pack: "3"
   Requirement matched.

Validating "XL C/C++ Runtime" ...
   Required minimum "XL C/C++ Runtime" level:  "13.1.2.0"
   Actual version:  "13.1.3.1"
   Requirement matched.
DBT3533I  The db2prereqcheck utility has confirmed that all installation prerequisites were met.
The following sample output was generated on a Linux operating system. Use the -p parameter for Db2 pureScale installation:
db2prereqcheck -p -v 11.5.0.0
==========================================================================

Checking prerequisites for DB2 installation with the DB2 pureScale Feature.  Version: "11.5.0.0".  Operating system: "Linux".

Validating "Linux distribution " ...
   Required minimum operating system distribution: "RHEL"; Version: "7"; Service pack: "5".
   Actual operating system distribution Version: "7"; Service pack: "5".
   Requirement matched.

Validating "SELinux status " ...
   SELinux is "disabled ".
   Requirement matched.

Validating "libc.so version " ...
   glibc library is located in the following directory "/usr/lib64/libc-2.17.so".
   Required minimum glibc library version: "2.4.0"
   Actual glibc library version: "2.17.0"
   Requirement matched.

Validating "gcc" ...
   Package (or file) found: "gcc"
   Requirement matched.

Validating "binutils" ...
   Package (or file) found: "binutils"
   Requirement matched.

Validating "cpp" ...
   Package (or file) found: "cpp"
   Requirement matched.

Validating "gcc-c++" ...
   Package (or file) found: "gcc-c++"
   Requirement matched.

Validating "kernel-devel" ...
   Package (or file) found: "kernel-devel"
   Package "kernel-devel" level "3.10.0-957.5.1.el7.x86_64" match with the system "kernel" level "3.10.0-957.5.1.el7.x86_64".
   Requirement matched.

Validating "/usr/bin/ksh" ...
   Required minimum version for "/usr/bin/ksh": "20100621"
   Actual version of package: "20120801"
   Requirement matched.

Validating "/usr/sbin/ntpd" ...
   Required minimum version for "/usr/sbin/ntpd": "4.2.6p5"
   Requirement matched.

Validating "prereqSAM" ...
   Requirement matched.

Validating "free space" ...
The directory "/tmp" has enough space on host "hostA.fyre.ibm.com".
   Requirement matched.

Validating "free space" ...
The directory "/var" has enough space on host "hostA.fyre.ibm.com".
   Requirement matched.

Validating "free space" ...
The directory "/usr" has enough space on host "hostA.fyre.ibm.com".
   Requirement matched.

Validating "sg3_utils" ...
   Package (or file) found: "sg3_utils"
   Requirement matched.

Validating "sg_persist" ...
   Package (or file) found: "/usr/bin/sg_persist"
   Requirement matched.

Validating "kernel level " ...
   Required minimum operating system kernel level: "2.6.16".
   Actual operating system kernel level: "3.10.0".
   Requirement matched.

Validating "C++ Library version " ...
   Required minimum C++ library: "libstdc++.so.6"
   Standard C++ library is located in the following directory: "/usr/lib64/libstdc++.so.6.0.19".
   Actual C++ library: "CXXABI_1.3.1"
   Requirement matched.


Validating "32 bit version of "libstdc++.so.6" " ...
   Found the 32 bit "/lib/libstdc++.so.6" in the following directory "/lib".
   Requirement matched.

Validating "libaio.so version " ...
DBT3553I  The db2prereqcheck utility successfully loaded the libaio.so.1 file.
   Requirement matched.

Validating "libnuma.so version " ...
DBT3610I  The db2prereqcheck utility successfully loaded the libnuma.so.1 file.
   Requirement matched.

Validating "/lib/libpam.so*" ...
   Requirement matched.
DBT3533I  The db2prereqcheck utility has confirmed that all installation prerequisites were met.
The following sample checks whether the system meets the prerequisites for a single InfiniBand port cluster network configuration:
db2prereqcheck -v 11.5.0.0 -p -t SINGLE_IB_PORT_CLUSTER
==========================================================================

Checking prerequisites for DB2 installation with the DB2 pureScale Feature.  Version: "11.5.0.0".  Operating system: "Linux".

Validating "Linux distribution " ...
   Required minimum operating system distribution: "RHEL"; Version: "7"; Service pack: "5".
   Actual operating system distribution Version: "7"; Service pack: "5".
   Requirement matched.

Validating "SELinux status " ...
   SELinux is "disabled ".
   Requirement matched.

Validating "libc.so version " ...
   glibc library is located in the following directory "/usr/lib64/libc-2.17.so".
   Required minimum glibc library version: "2.4.0"
   Actual glibc library version: "2.17.0"
   Requirement matched.

...

Validating Infiniband Support Package: libibcm.x86_64 ...
   Package (or file) found: libibcm.x86_64
   Requirement matched.

Validating Infiniband Support Package: librdmacm.x86_64 ...
   Package (or file) found: librdmacm.x86_64
   Requirement matched.

...

Validating Reliable Scalable Cluster Technology Package:
   librdmacm.i686 ...
   Package (or file) found: librdmacm.i686
   Requirement matched.

Validating Reliable Scalable Cluster Technology Package:
   libcxgb3.i686 ...
   Package (or file) found: libcxgb3.i686
   Requirement matched.

...

DBT3533I  The db2prereqcheck utility has confirmed that all installation prerequisites were met for Db2 database
server with Db2pureScale Feature. Version: "11.5.0.0".
The following sample checks whether the system meets the prerequisites for a multiple InfiniBand port cluster network configuration:
db2prereqcheck -p -v 11.5.0.0 -t MULTI_ROCE_PORT_CLUSTER
==========================================================================

Checking Db2 prerequisites for Db2 database version 11.5.0.0 on operating system "Linux"

Validating Linux distribution ...
   Required minimum operating system distribution: "RHEL"; Version: “7”;
   Service pack: “5”.
   Actual operating system distribution Version: “7”; Service pack: “5”.
   Requirement matched.

...

Validating Infiniband Support Package: libibcm.x86_64 ...
   Package (or file) found: libibcm.x86_64
   Requirement matched.

Validating Infiniband Support Package: librdmacm.x86_64 ...
   Package (or file) found: librdmacm.x86_64
   Requirement matched.

...

Validating High Performance Networking Package: libibverbs-rocee.x86_64 ...
   Package (or file) found: libibverbs-rocee.x86_64
   Requirement matched.

Validating High Performance Networking Package: libmlx4-rocee.x86_64 ...
   Package (or file) found: libmlx4-rocee.x86_64
   Requirement matched.

Validating Reliable Scalable Cluster Technology Package: libibcm.i686 ...
   Package (or file) found: libibcm.i686
   Requirement matched.

Validating Reliable Scalable Cluster Technology Package: librdmacm.i686 ...
   Package (or file) found: librdmacm.i686
   Requirement matched.

...

DBT3533I  The db2prereqcheck utility has confirmed that all installation prerequisites were met for Db2 database server with Db2
pureScale Feature. Version: "11.5.0.0".
To check whether the system meets the prerequisites for Db2 version 11.5, issue the following command:
db2prereqcheck -v 11.5.0.0 -s
To check whether the system meets the prerequisites for the thin client of Db2 version 11.5, issue the following command:
db2prereqcheck -c -v 11.5.0.0 -s