Para construir la extensión ibm_db2, deben estar instaladas en el sistema tanto las cabeceras como las bibliotecas de desarrollo de aplicaciones DB2. DB2 no lo instala por omisión, por lo que se debe habilitar explícitamente en el instalador de DB2. Los ficheros de cabeceras vienen incluidos de forma gratuita en Cliente de Desarrollo de Aplicaciones DB2 de la » página de soporte de la Base de datos Universal IBM DB2.

Si se añadieran las cabeceras y bibliotecas de desarrollo de aplicaciones DB2 a un sistema Linux o Unix en el que DB2 ya estuviera instalado, será necesario ejecutar el comando db2iupdt -e para actualizar los enlaces simbólicos a las cabeceras y bibliotecas de la instancia DB2.

ibm_db2 es una extensión » PECL, por lo que se deben seguir las instrucciones de Instalación de extensiones PECL para instalar esta extensión en PHP. Debe ejecutarse el comando configure apuntando a la localización de las cabeceras y bibliotecas DB2 de la siguiente forma:

bash$ ./configure --with-IBM_DB2=/path/to/DB2
El comando configure apunta por omisión a /opt/IBM/db2/V8.1.

Nota: Nota para usuarios de IIS

Si desea usar el driver ibm_db2 con Microsoft Internet Information Server (IIS) es posible que sea necesario realizar los siguientes pasos:

  • Instalar DB2 con seguridad de sistema operativo extendidad
  • Añadir la ruta del binario PHP a la variable de entorno del sistema PATH (por omisión C:\php\).
  • Crear una nueva variable de entorno del sistema que contenga la ruta al fichero PHP.INI (por ejemplo: PHPRC = C:\php\).

add a note add a note

User Contributed Notes 5 notes

jean dot ferreira at gmail dot com
7 years ago
==Installation ibm_db2 in PHP5, using Data Server Driver Package and pecl on Debian / Ubuntu==

#You do not need DB2 (database) installed
#The ibm_db2 driver is downloaded and automatically compiled by pecl

#1- Install packages
apt-get install php-pear ksh zip

#2- Make directory
mkdir /opt/ibm

#3- Download Data Server Driver Package (dsdriver), as the architecture

#4- Decompress dsdriver at /opt/ibm/
tar -xvf v10.5fp1_linuxx64_dsdriver.tar.gz  (linux64)
tar -xvf v10.5fp1_linuxia32_dsdriver.tar.gz (linux32)

#5- Change permission instalation script  -  /opt/ibm/dsddriver
chmod 755 installDSDriver

#6- Run the installation script
ksh installDSDriver

#7- Download and install the driver using the pecl
pecl install ibm_db2

downloading ibm_db2-1.9.5.tgz ...
Starting to download ibm_db2-1.9.5.tgz (157,720 bytes)
................done: 157,720 bytes
5 source files, building
running: phpize
Configuring for:
PHP Api Version:         20090626
Zend Module Api No:      20090626
Zend Extension Api No:   220090626

#8- Configure the installation directory
DB2 Installation Directory? : /opt/ibm/dsdriver

Build process completed successfully
Installing '/usr/lib/php5/20090626/'
install ok: channel://
configuration option "php_ini" is not set to php.ini location
You should add "" to php.ini

#9- Change php.ini
vim /etc/php5/apache2/php.ini
; Dynamic Extensions ;
extension =
extension = /usr/lib/php5/20090626/

#10- Reboot the Apache
service apache2 restart
12 years ago
I installed this tool foolwing the next steps:

(Prereq: I've installed DB2 express-c before, and also Apache and php)

- Download the file: ibm_db2-1.8.2.tgz
- Untar the file: tar -xvf ibm_db2-1.8.2.tgz
- Go to the main directory
- Execute 'phpize' and that creates several files.
- Execute './configure --with-IBM_DB2=/opt/ibmn/db2/V9.5_01'
- Execute 'make'
- Execute 'make install'
- Modify the php.ini file in order to activate the extension.

To check that the library is included: php -i

Then, you have to restart Apache: httpd -k restart
kpfitzgerald at gmail dot com
10 years ago
Actually a much simpler way on SLES 11 SP1 and DB2 Express C  is to execute the following.

pecl install ibm_db2

when it asks for your path put in your location of SQLLIB not your db2 install. usually found here...


to verify execute
pecl list

Should show the following:

Installed packages, channel
Package Version State
ibm_db2 1.9.1   stable
rifat dot aras at gmail dot com
9 years ago
If you try to use the php_ibm_db2.dll that comes with the database while working with a WAMP server, you may have difficulties loading the ibm_db2 extension. You can understand this by checking the Apache error log.

This can be solved by downloading the correct dll by visiting and then clicking "IBM_DB2 PHP Driver for Windows > PHP 5.(2|3)._ > VC(6|9) > php_ibm_db2-ver-(nts_ts)-vc(6|9)"

The correct dll version can be determined by checking the "Compiler" and "Thread Safety" fields on the php_info page.

Copy the dll to the extension directory, update the php.ini file, and restart the Apache service.
angoca at yahoo dot com
9 years ago
In DB2 v9 the clients have changed their names. Now, they are called

Data server client

If you search in Internet "DB2 fixpack" you will get an IBM address like

You select the DB2 version and fixpack level, then the platform and finally the product, that in this case is "Data Server client"
To Top