Saturday, January 12, 2008

DB2 Installation Enhancements

Prior to Version 9, the installation path of DB2 was fixed on each platform. As a result, you could not have multiple copies of DB2 on the same computer under a single OS. DB2 Version 8 introduced a patchy solution to this problem in the form of Alternate Fix Packs, which allowed coexistence of multiple Fix Pack levels of DB2 version 8 on the same computer. However, now you don’t have to deal with Alternate Fix Packs and you don’t have to get frustrated with the stiffness of DB2 Installation any more.

With DB2 Version 9, you can use multiple DB2 copies on the same computer. Each DB2 copy can be at the same or different code levels. We can also have DB2 Version 8 and Version 9 on the same computer. IBM has listed the following benefits of doing this (which sounds reasonable):

  • The ability to run applications that require different DB2 versions on the same machine at the same time.
  • The ability to run independent copies of DB2 products for different functions.
  • The ability to test on the same computer before moving the production database to the latter version of the DB2 product.
  • For independent software vendors, the ability to embed a DB2 server product into your product and hide the DB2 database from your users.

A DB2 copy can contain one or more different DB2 products. This refers to the group of DB2 products that are installed at the same location.

How is this possible now? You might have already guessed: now you can choose your own path while installing DB2. Each DB2 Copy has its own installation path. That’s cool, but now how will you find out all the installed DB2 products? DB2 Version 9 on Linux and UNIX comes with a command db2ls, which you can use to list:

  • Where DB2 products are installed on your system and list the DB2 product level.
  • All or specific DB2 products and features in a particular installation path.

Unfortunately, db2ls is not available on Windows. However, on Windows you can find all the installed DB2 copies and their installation path in Windows Registry under HKEY_LOCAL_MACHINE\SOFTWARE\IBM\DB2\InstalledCopies.

Another notable enhancement for DB2 Installation is non-root installation on Linux and UNIX. Non-root installation is available with DB2 Version 9.5. You can check the details of it at the link: Non-root installation overview. However, there are several limitations of non-root installation. Apart from limitations, there are few differences between the directory structure of root and non-root installations.

More good news: Fix Pack post-installation tasks are automated on Linux and UNIX in DB2 Version 9.5. In previous releases, you had to update instances and bind the packages manually after installing a fix pack. Now you don’t have to run db2iupdt or dasupdt commands to update the instances after installing a fix pack, they will be performed automatically when you install the fix pack. In addition, binding occurs automatically at the first connection. As a result, once you start the database manager, the DB2 product is ready to use immediately after fix pack installation. You may check the details of applying fix packs at DB2 Information Center.


Vish!™ said...
This comment has been removed by a blog administrator.
Radhesh Kumar said...

Hi Vish,

Sorry, I am not sure if I am responding soon enough. Here is my response

1) Prior to DB2 9, DB2 had fixed installation path and DBA's normally knew what is that path. In version 8, the installation path was "/usr/opt/db2_08_01" on AIX and "/opt/IBM/db2/V8.1" on all other Unix-based systems. If you have already logged in as any of the DB2 instance owner, you can run "db2ilist -a" command which will list all the DB2 instances on that server alongwith the installation path. In case of alternate fixpack in version 8, the instllation path was slightly different for each fixpack.

2) Normally the space consumed by DB2 installation is fixed and changes only when you do a fixpack or version upgrade. So I am not sure if you are talking about the space consumption by DB2 installation or the database. The path I have mentioned above in point #1 is for installation. Instance home directory, database path, tablspace constainer paths are different from installation path. In general you should keep each of them on separate filesystems. Even installation path you can keep on separate filesystem in order to isolate it from root filesystem.


Anonymous said...

Hi can you please delete or edit my previous question in which my contact mail id has been provided, due to which I am getting lot of spam mails.

Vishwanath G