Tuesday, 4 January 2011

Installating IBM DB2 on Ubuntu Linux 10.10

As part of a new everything-on-one-box Lotus Connections 3.0 installation, I've updated my monster PC ( known as Orac ) to Ubuntu 10.10.

Orac has a quad core Intel CPU, 8 GB of RAM and 1.3 TB of storage, so he's a bit of a beast.



Having installed a 32-bit version Ubuntu 10.10, I was ready to go.

Oh, hang on, the free command only shows 3.X GB of RAM, despite my having 8 GB.

Ah, hang on, I forgot to install the PAE kernel - as I'm using the 32-bit distro, I need to use a kernel that can address more than 3.3 GB.

This is easy to fix - I simply ran the following command: -

sudo apt-get install linux-generic-pae

which installed three packages: -

ii  linux-generic-pae                    2.6.35.24.28                                    Complete Generic Linux kernel
ii  linux-image-2.6.35-24-generic-pae    2.6.35-24.42                                    Linux kernel image for version 2.6.35 on x86
ii  linux-image-generic-pae              2.6.35.24.28                                    Generic Linux kernel image

Now, after a quick reboot, the free command returns: -

            total       used       free     shared    buffers     cached
Mem:       8261504    5571908    2689596          0      46396    5081164
-/+ buffers/cache:     444348    7817156
Swap:      6538236          0    6538236

which is rather shiny.

So, on to DB2 ....

*NOTE* This is *NOT* a supported platform - it's merely for me to "play" with  *NOTE*

Once I had overcome my problem with the TAR command, I started the installation program: -

cd /tmp
./db2setup

which immediately failed with: -

ERROR:
   The required library file libaio.so.1 is not found on the system.
   Check the following web site for the up-to-date system requirements
   of IBM DB2 9.7
   http://www.ibm.com/software/data/db2/udb/sysreqs.html
   http://www.software.ibm.com/data/db2/linux/validate 
  Aborting the current installation ...
  Run installation with the option "-f sysreq" parameter to force the installation.

:-(

However, as ever, Google had the answer, Google is my friend.

Antonio Cangiano has blogged here about this - the solution is simple: -

sudo apt-get install libstdc++5
sudo apt-get install libaio-dev
sudo ./db2setup

Once I did this, the DB2 installation worked like  a dream.

I *love* it when a plan comes together :-)

*NOTE* This is *NOT* a supported platform - it's merely for me to "play" with  *NOTE*

5 comments:

Abhilash said...

when i give

$ sudo ./db2setup
its givin

sudo: ./db2setup: command not found

Dave Hay said...

@Abhilash - you need to be in the directory into which you extracted the DB2 archive before you run db2setup or, if not, provide the path to the command.

As an example: -


cd /tmp
tar xvf /media/LenovoExternal/Products/DB297/db297linux32.tar
sudo ./db2setup


or, if you've unpacked the archive into /tmp but are currently in /home/hayd, then you'd run db2setup as follows: -


cd /home/hayd
sudo /tmp/db2setup

Abhilash said...

After installing db2

how & from where i hav 2 run, bcoz

in windows we can find easily in All Programs..

but where in linux

i also searchd in applications but it is not there

Dave Hay said...

@Abhilash - take a look at some of these online resources: -

DB2 on Linux Redbook

IBM WebSphere (V4.0) J2EE applications server and DB2 (V7.2) database on Linux

There are plenty of other useful online resources including IBM developerWorks

Regards, Dave

Anil M said...

@Abhilash,

You will need to login as the DB2 User, such as db2inst1 -->

If you are logged in as a different user --> su db2inst1
Enter your db2inst1 passwd.

Now type in --> db2 connect to SAMPLE

or db2sampl --> this will create the SAMPLE database and then you can start working with DB2 :)

If you are on the lookout for a out of the box no frills DB2 Experience, try my Dubuntu Appliance --> DB2 on Ubuntu.

More Details here

http://www.vmware.com/appliances/directory/885293

Cheers!

Anil Mahadev
http://db2hitman.wordpress.com
DB2 India UG President
Dubuntu Appliance Architect