16. Installing DB2 Express-C on Ubuntu 7.04 'Feisty Fawn'

These installation notes are based on a single-partition installation using the 2.6.20-16-generic kernel.

Note that IBM does not yet officially support this distribution for DB2 9. Any problems you encounter using this distribution must be replicated on a supported distribution before IBM Support can help you resolve the issue.

Also be aware that the PowerPC architecture is no longer supported in Ubuntu 7.04 and later.

16.1. Installation notes

Since you cannot log in as root directly with an Ubuntu system, this DB2 installation is run as the default user created during Ubuntu setup (i.e. the regular user account with 'sudo' capability).

There are two ways of installing DB2 Express-C 9 on Ubuntu. The harder of the two methods is to use the default DB2 db2setup, and then make adjustments to the Ubuntu system afterwards to handle the slight differences of Ubuntu's Debian-based packaging system. For reasons of clarity and brevity, I will omit the instructions for doing it this more difficult way; however, if you would like to see these instructions, please send me an email (db2howto@gmail.com) and I will pass them along.

The easy way to install DB2 Express-C on Ubuntu 7.04 is to download the DB2 Express-C Debian package file and then use the Ubuntu package installer. This way, almost everything is done for you, from installation to configuration. Here's how to do it:

  1. Use any FTP client software and connect to: ftp.software.ibm.com/software/data/db2/express/latest_debs
  2. Download db2exc_9.1.2-1_i386.deb(or the latest equivalent .deb file)
  3. Once the download is complete, run this command:
    sudo gdebi-gtk db2exc_9.1.2-1_i386.deb
  4. Click "Install Package"
  5. Click "Close" once the package has been installed
After hitting the "Install Package" button, the Ubuntu package installer will unpack and install the package and configure the DB2 users and default instance. Click the "Close" button once the installation is complete.

16.2. Post-installation notes

After installation by Synaptic, there are a few steps required to get DB2 up and running smoothly.

  1. Usable passwords for the DB2 default accounts. To actually log in or connect to the DB2 databases and servers using the default DB2 users (db2inst1, db2fenc1, and dasusr1), you need to modify the initial passwords. To do this, open a terminal (as the regular user), and type sudo su -to get root access. Then run these three commands:
    passwd db2inst1
    passwd db2fenc1
    passwd dasusr1
    Each time you will be asked to set the new password for the specified user account.
  2. Change the default shell for the DB2 default accounts. The default command shell for the DB2 accounts is set as just a plain old /bin/sh. To get the handy features of the BASH shell, you'll want to change it for these three accounts. In the same root access command window, open the /etc/passwdfile in your favorite text editor and change:
    
db2inst1:x:1001:1001::/home/db2inst1:/bin/sh
    db2fenc1:x:1002:1002::/home/db2fenc1:/bin/sh
    dasusr1:x:1003:1003::/home/dasusr1:/bin/sh
    to
    
db2inst1:x:1001:1001::/home/db2inst1:/bin/bash
    db2fenc1:x:1002:1002::/home/db2fenc1:/bin/bash
    dasusr1:x:1003:1003::/home/dasusr1:/bin/bash
  3. Enable DB2 service ports for remote connections. To enable outside users to get to your DB2 databases, you'll need to set up the DB2 service port, as it is not configured by the Synaptic installation process. As the regular user, run sudo vi /etc/servicesand add this line to the end of the file:
    db2c_db2inst1       50001/tcp        # IBM DB2 instance - db2inst1
    Then, as the DB2 instance owner (db2inst1 by default), run these commands:
    db2 update dbm cfg using SVCENAME db2c_db2inst1
    db2set DB2COMM=tcpip
    db2stop
    db2start
    Now remote users will be able to connect to the DB2 databases on your Ubuntu system.
  4. Enable remote DB2 administration connections>. To allow remote administration of your DB2 server, you'll need to set up the DB2 DAS connection port, as it is not configured by the Synaptic installation process. As the regular user, run sudo vi /etc/servicesand add this line to the end of the file:
    ibm-db2           523/tcp          # IBM DB2 DAS
    ibm-db2           523/udp          # IBM DB2 DAS
    Then, as the DB2 DAS owner (dasusr1 by default), run these commands:
    db2admin stop
    db2admin start
    Now remote administrators can connect to the DAS server to administer databases on your Ubuntu system.
  5. One issue to note is that the DB2 instance does not properly restart after a system reboot, and setting DB2AUTOSTART=YES does not resolve the issue. The only way to resolve the problem for now is to manually start the instances after a reboot with db2start(as the instance owner) and db2admin start(as the DAS owner).