DB2 is a component that’s needed for multiple components in the ICS product suite.

You need to get the software from Passport Advantage. I use the DVD image for TDS 6.3 in this case:

Software : tds63-linux-x86-64.iso

Mount the DVD image

Mount the DVD image in the Virtual Machine

  • connect the CD ROM in the VM Settings menu to the .iso image. Make sure to set it to “Connected”
  • In the virtual machine, log in as root and mount the DVD :

mount /dev/cdrom /mnt/cdrom

Install DB2

Preparation

Make sure you have at least 2 Gb assigned to the Virtual Machine.

Additional packages

You are recommended to disable I/O barrier at mount time using the -o nobarrier option for mount on ext3 and ex4 file systems. For more information, please see RHEL 6 Storage Administration Guide Chapter 17:

libaio

needed for issue with UpdateAutoRun.sh:

ed

needed for db2:

compat-libstdc++-33

Or all combined:

yum install libaio ed compat-libstdc++-33

Workaround for Tivoli SA MP

You need to do this to install Tivoli SA MP (needed if you want to do HADR)
as root :

vi /etc/redhat-release  

this is by default :

CentOS release 6.3 (Final)  

Change it to :

Red Hat Enterprise Linux Server release 5.5 (Tikanga)  

Start DB2 install

Run the console setup of db2. You can also install it silently .

cd /mnt/cdrom/db2 
./db2_install  

Select “ESE “

After installation finishes, check that the installation completed successfully :l

/opt/ibm/db2/V9.7/bin/db2val  

A succesful result looks like this :

[root@webseal ~]# /opt/ibm/db2/V9.7/bin/db2val  
DBI1379I The db2val command is running. This can take several minutes.  
  
  
DBI1335I Installation file validation for the DB2 copy installed at  
 /opt/ibm/db2/V9.7 was successful.  
 
  
DBI1343I The db2val command completed successfully. For details, see  
 the log file /tmp/db2val-12_21_19:07:06.log.  

Configuration

Make sure the hostname of your machine is resolvable. You can use dns , or add it to /etc/hosts :

For instance:

127.0.0.1 webseal.tb.issc.ibm.com  

Prepare the users to run the DB2 servers (as root) :

groupadd -r db2iadm  
groupadd -r db2fadm  
groupadd -r dasadm  
  
useradd -r -g db2iadm -m db2inst1  
useradd -r -g db2fadm -m db2fenc1  
useradd -r -g dasadm -m dasusr1  
  
echo passw0rd | passwd db2inst1 --stdin  
echo passw0rd | passwd db2fenc1 --stdin  
echo passw0rd | passwd dasusr1 --stdin  

add to /etc/services :

DB2_db2inst1 50000/tcp # DB2 connection service port  

Create administration server

as root :

/opt/ibm/db2/V9.7/instance/dascrt -u dasusr1  

Create instance

as root :

/opt/ibm/db2/V9.7/instance/db2icrt -u db2fenc1 db2inst1  

If this fails, check /home/db2inst1/sqllib/db2nodes.cfg, that it matches the hostname . You should get a result like this.

[root@webseal ~]# cat /home/db2inst1/sqllib/db2nodes.cfg  
0 webseal.tb.issc.ibm.com 0  

During instance creation, I encountered another problem (missing object), I did this to work around the issue

ln -s /usr/lib64/libssl.so.1.0.0 /usr/lib64/libssl.so.0.9.7  

It’s probably better to install this correct version separately, but this seems to do the trick as well …

Set the service name

su - db2inst1  
db2 update database manager configuration using svcename DB2_db2inst1  
db2 get database manager configuration  
  
db2stop  
db2start  
  
db2set -i db2inst1 DB2COMM=TCPIP  
  
  
db2start  
  
su - dasusr1  
db2admin stop  
exit  
su - db2inst1  
db2 force applications all;db2 terminate;db2stop;db2licd -end;ipclean  

Configure autostart for DB2

This proved to be a bit challenging, since the default method did not work. The cause of the problem is probably that I change the /etc/issue ( Introduction ) here. But I don’t set it to Redhat enterprise server 6, and I guess that causes problems for the configuration.
Anyway, the cause of the problems I had are that in RHEL 6 , the method of starting services using /etc/inittab is deprecated and does not work. RHEL 6 uses Upstart instead.

RHEL 5.x / Cent OS 5.x

The steps below create the entry in /etc/inittab for the administration server, and that in turn should start the instance. For me, on CentOS6, this did not work.

/opt/ibm/db2/V9.7/bin/db2iauto -on db2inst1  
  
/opt/IBM/db2/V9/bin/db2greg -clean  

as root and then ran: -

db2set DB2AUTOSTART=YES  
db2iauto -on db2inst1  

RHEL 6 / Cent OS 6

Remove the generated entry in /etc/inittab

remove the line refering to fmc in /etc/inittab. In this case, I commented the line. So your /etc/inittab` should contain this :

id:3:initdefault:  
#fmc:2345:respawn:/opt/ibm/db2/V9.7/bin/db2fmcd #DB2 Fault Monitor Coordinator  

Create the Upstart service

Create a file fmcd.conf to /etc/init :

touch /etc/init/fmcd.conf

The contents of the file :

#DB2 Fault Monitor  
#  
# Starts fmcd  
  
description "Fault Monitor is the DB2 database facility that monitors DB2 database manager instances, and restarting any instance that exits prematurely."  
version "9.7.0.4"  
  
start on runlevel [2345]  
stop on runlevel [016]  
  
console output  
respawn  
respawn limit 10 120  
  
exec /opt/ibm/db2/V9.7/bin/db2fmcd  

See this technote: http://www-01.ibm.com/support/docview.wss?uid=swg21497220

Now you can start the fmcd by entering :

service fmcd start