1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 200 201 202 203 204 205 206 207 208 209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233 234 235 236 237 238 239 240 241 242 243 244 245 246 247 248 249 250 251 252 253 254 255 256 257 258 259 260 261 262 263 264 265
|
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<section xml:id="dba.installation" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
&reftitle.install;
<para>
By using the <option role="configure">--enable-dba=shared</option>
configuration option you can build a dynamic loadable module to enable PHP
for basic support of dbm-style databases. You also have to add support
for at least one of the following handlers by specifying the
<option role="configure">--with-XXXX</option> or <option role="configure">--enable-XXXX</option> configure switch to your PHP
configure line.
</para>
<warning>
<para>
After configuring and compiling PHP you must execute the following test
from commandline: <literal>php run-tests.php ext/dba</literal>. This shows
whether your combination of handlers works. Most problematic are
<literal>dbm</literal> and <literal>ndbm</literal> which conflict with
many installations. The reason for this is that on several systems these
libraries are part of more than one other library. The configuration test
only prevents you from configuring malfunctioning single handlers but not
combinations.
</para>
</warning>
<para>
<table>
<title>Supported DBA handlers</title>
<tgroup cols="2">
<thead>
<row>
<entry>Handler</entry>
<entry>Configure Switch</entry>
</row>
</thead>
<tbody>
<row>
<entry><literal>dbm</literal></entry>
<entry>
<para>
To enable support for dbm add
<option role="configure">--with-dbm[=DIR]</option>.
<note>
<para>
dbm normally is a wrapper which often results in failures.
This means you should only use dbm if you are sure it works
and if you really need this format.
</para>
</note>
</para>
</entry>
</row>
<row>
<entry><literal>ndbm</literal></entry>
<entry>
<para>
To enable support for ndbm add
<option role="configure">--with-ndbm[=DIR]</option>.
<note>
<para>
ndbm normally is a wrapper which often results in failures.
This means you should only use ndbm if you are sure it works
and if you really need this format.
</para>
</note>
</para>
</entry>
</row>
<row>
<entry><literal>gdbm</literal></entry>
<entry>
To enable support for gdbm add
<option role="configure">--with-gdbm[=DIR]</option>.
</entry>
</row>
<row>
<entry><literal>db2</literal></entry>
<entry>
<para>
To enable support for Oracle Berkeley DB 2 add
<option role="configure">--with-db2[=DIR]</option>.
<note>
<para>
db2 conflicts with db3 and db4.
</para>
</note>
</para>
</entry>
</row>
<row>
<entry><literal>db3</literal></entry>
<entry>
<para>
To enable support for Oracle Berkeley DB 3 add
<option role="configure">--with-db3[=DIR]</option>.
<note>
<para>
db3 conflicts with db2 and db4.
</para>
</note>
</para>
</entry>
</row>
<row>
<entry><literal>db4</literal></entry>
<entry>
<para>
To enable support for Oracle Berkeley DB 4 or 5 add
<option role="configure">--with-db4[=DIR]</option>.
<note>
<para>
db4 conflicts with db2 and db3.
</para>
</note>
<note>
<para>
The db libraries with
versions 4.1 through 4.1.24 cannot be used in any PHP version.
</para>
<para>
Support for BDB 5 was added in PHP 5.3.3.
</para>
</note>
</para>
</entry>
</row>
<row>
<entry><literal>cdb</literal></entry>
<entry>
<para>
To enable support for cdb add
<option role="configure">--with-cdb[=DIR]</option>.
<note>
<para>
You can omit DIR to use the bundled cdb library
that adds the cdb_make handler which allows creation of cdb files
and allows to access cdb files on the network using PHP's streams.
</para>
</note>
</para>
</entry>
</row>
<row>
<entry><literal>flatfile</literal></entry>
<entry>
<para>
To enable support for flatfile add
<option role="configure">--enable-flatfile</option>.
Before PHP 5.2.1 the <option role="configure">--with-flatfile</option>
had to be used instead.
<note>
<para>
This was added to add compatibility with deprecated
<literal>dbm</literal> extension. Use this handler only
when you cannot install one of the libraries required by the other
handlers and when you cannot use bundled cdb handler.
</para>
</note>
</para>
</entry>
</row>
<row>
<entry><literal>inifile</literal></entry>
<entry>
<para>
To enable support for <literal>inifile</literal> add
<option role="configure">--enable-inifile</option>.
Before PHP 5.2.1 the <option role="configure">--with-inifile</option>
had to be used instead.
<note>
<para>
This was added to allow to read and set microsoft style
<filename>.ini</filename> files (like the &php.ini; file).
</para>
</note>
</para>
</entry>
</row>
<row>
<entry><literal>qdbm</literal></entry>
<entry>
<para>
To enable support for qdbm add
<option role="configure">--with-qdbm[=DIR]</option>.
<note>
<para>
qdbm conflicts with dbm and gdbm.
</para>
</note>
<note>
<para>
The qdbm library can be downloaded from
<link xlink:href="&url.qdbm;"/>.
</para>
</note>
</para>
</entry>
</row>
<row>
<entry><literal>tcadb</literal></entry>
<entry>
<para>
To enable support for Tokyo Cabinet add
<option role="configure">--with-tcadb[=DIR]</option>.
<note>
<para>
The Tokyo Cabinet library can be downloaded from
<link xlink:href="&url.tcadb;"/>.
</para>
</note>
</para>
</entry>
</row>
<row>
<entry><literal>lmdb</literal></entry>
<entry>
<para>
To enable support for the Lightning Memory-Mapped Database add
<option role="configure">--with-lmdb[=DIR]</option>.
<note>
<para>
This was added in PHP 7.2.0. The Lightning Memory-Mapped Database
library can be downloaded from <link xlink:href="&url.lmdb;"/>.
</para>
</note>
</para>
</entry>
</row>
</tbody>
</tgroup>
</table>
</para>
</section>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->
|