設定オプション --enable-dba=shared を使用することにより、dbm 形式のデータベースをサポートする動的に ロード可能なモジュールを有効にして PHP を構築することができます。 また、PHP の configure 行に設定スイッチ --with-XXXX を指定することにより、少なくとも以下のハンドラの一つのサポートを 追加する必要があります。
PHP の configuring とコンパイルを済ませたら、コマンドラインから次の テストを実行する必要があります: php run-tests.php ext/dba これは、指定したハンドラの組み合わせが動作するかどうかを調べます。 いちばん問題のあるのは dbm と ndbm の組み合わせで、これらは多くの場合何らかの衝突を引き起こします。 その原因は、いくつかのシステムではこれらのライブラリが他のライブラリの 一部となっていることで。configure 時のテストでは個々のハンドラについての 設定不備は調べられますが、それらの組み合わせについてはテストできません。
| ハンドラ | configure のスイッチ | 
|---|---|
| dbm | dbm のサポートを有効にするには、
       --with-dbm[=DIR] を追加します。 
 | 
| ndbm | ndbm のサポートを有効にするには、
       --with-ndbm[=DIR] を追加します。 
 | 
| gdbm | gdbm のサポートを有効にするには、 --with-gdbm[=DIR] を追加します。 | 
| db2 | db2 のサポートを有効にするには、
       --with-db2[=DIR] を追加します。 
 | 
| db3 | db3 のサポートを有効にするには、
       --with-db3[=DIR] を追加します。 
 | 
| db4 | db4 のサポートを有効にするには、
       --with-db4[=DIR] を追加します。 
 
 | 
| cdb | cdb のサポートを有効にするには、
       --with-cdb[=DIR] を追加します。 
 | 
| flatfile | flatfile のサポートを有効にするには、
       --with-flatfile を追加します。 
 | 
| inifile | inifile のサポートを有効にするには、
       --with-inifile を追加します。 
 | 
| qdbm | qdbm のサポートを有効にするには、
       --with-qdbm[=DIR] を追加します。 
 
 | 
注意: PHP 4.3.0 までは、db2 および db3 ハンドラの両方を追加することが できましたが、内部的に使用できるのは片方だけでした。 これは、両方のファイル形式を使用することができないことを意味します。 PHP 5.0.0 以降、このような設定ミスを回避するよう設定の確認が行われます。