CascadiaPHP 2024


Pour compiler l'extension ibm_db2, les fichiers d'en-tête et de bibliothèques de l'application de développement de DB2 doivent être présents sur le système. DB2 ne les installe pas par défaut, il pourrait donc être nécessaire de retourner à l'installation de DB2 et ajouter cette option. Le client de développement d'application DB2 inclus les fichiers d'en-tête et est disponible librement au téléchargement depuis le » support du site de la base de données universelle.

Si les fichiers d'en-têtes et de bibliothèques de l'application de développement de DB2 sont ajoutés sur un système Linux ou Unix où DB2 est déjà installé, la commande db2iupdt -e devra être lancée pour mettre à jour les liens symboliques vers les fichiers d'en-têtes et de bibliothèques des instances DB2.

ibm_db2 est une extension » PECL, alors suivez les instructions présentes dans Installation d'extensions PECL pour installer l'extension ibm_db2 pour PHP. Tapez la commande configure pour pointer vers l'emplacement des fichiers d'en-têtes et de bibliothèques de DB2 comme suit :

bash$ ./configure --with-IBM_DB2=/chemin/vers/DB2
La commande configure prend la valeur par défaut de /opt/IBM/db2/V8.1.

Note: Note pour les utilisateurs de IIS

Si le driver ibm_db2 est utilisé avec IIS (Microsoft Internet Information Server), il pourrait être nécessaire de prendre les mesures suivantes :

  • Installer DB2 avec le système de sécurité étendu.
  • Ajouter le chemin vers le binaire PHP à la variable d'environnement PATH du système (Par défaut : C:\php\).
  • Créer une autre variable d'environnement contenant le chemin vers le fichier PHP.INI (e.g. : PHPRC = C:\php\).
  • Ajouter l'utilisateur IUSR_COMPUTERNAME au groupe DB2USERS.

add a note

User Contributed Notes 5 notes

jean dot ferreira at gmail dot com
10 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
kpfitzgerald at gmail dot com
13 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
12 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.
15 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
angoca at yahoo dot com
12 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