Choosing a library
The mysqli, PDO_MySQL and mysql PHP extensions are lightweight wrappers on top of a C client library. The extensions can either use the mysqlnd library or the libmysqlclient library. Choosing a library is a compile time decision.
The mysqlnd library is part of the PHP distribution since 5.3.0. It offers features like lazy connections and query caching, features that are not available with libmysqlclient, so using the built-in mysqlnd library is highly recommended. See the mysqlnd documentation for additional details, and a listing of features and functionality that it offers.
Example #1 Configure commands for using mysqlnd or libmysqlclient
// Recommended, compiles with mysqlnd $ ./configure --with-mysqli=mysqlnd --with-pdo-mysql=mysqlnd --with-mysql=mysqlnd // Alternatively recommended, compiles with mysqlnd as of PHP 5.4 $ ./configure --with-mysqli --with-pdo-mysql --with-mysql // Not recommended, compiles with libmysqlclient $ ./configure --with-mysqli=/path/to/mysql_config --with-pdo-mysql=/path/to/mysql_config --with-mysql=/path/to/mysql_config
Library feature comparison
It is recommended to use the mysqlnd library instead of the MySQL Client Server library (libmysqlclient). Both libraries are supported and constantly being improved.
MySQL native driver (mysqlnd) | MySQL client server library (libmysqlclient) | |
---|---|---|
Part of the PHP distribution | Yes | No |
PHP version introduced | 5.3.0 | N/A |
License | PHP License 3.01 | Dual-License |
Development status | Active | Active |
Lifecycle | No end announced | No end announced |
PHP 5.4 and above; compile default (for all MySQL extensions) | Yes | No |
PHP 5.3; compile default (for all MySQL extensions) | No | Yes |
Compression protocol support | Yes (5.3.1+) | Yes |
SSL support | Yes (5.3.3+) | Yes |
Named pipe support | Yes (5.3.4+) | Yes |
Non-blocking, asynchronous queries | Yes | No |
Performance statistics | Yes | No |
LOAD LOCAL INFILE respects the open_basedir directive | Yes | No |
Uses PHP's native memory management system (e.g., follows PHP memory limits) | Yes | No |
Return numeric column as double (COM_QUERY) | Yes | No |
Return numeric column as string (COM_QUERY) | Yes | Yes |
Plugin API | Yes | Limited |
Read/Write splitting for MySQL Replication | Yes, with plugin | No |
Load Balancing | Yes, with plugin | No |
Fail over | Yes, with plugin | No |
Lazy connections | Yes, with plugin | No |
Query caching | Yes, with plugin | No |
Transparent query manipulations (E.g., auto-EXPLAIN or monitoring) | Yes, with plugin | No |
Automatic reconnect | No | Optional |
Vertaling niet beschikbaar
De PHP-handleiding is nog niet in het Nederlands vertaald, dus het scherm is in het Engels. Als u wilt, kunt u het ook in het Frans of in het Duits raadplegen.
Als je de moed voelt, kun je je vertaling aanbieden ;-)
Nederlandse vertaling
U hebt gevraagd om deze site in het Nederlands te bezoeken. Voor nu wordt alleen de interface vertaald, maar nog niet alle inhoud.Als je me wilt helpen met vertalingen, is je bijdrage welkom. Het enige dat u hoeft te doen, is u op de site registreren en mij een bericht sturen waarin u wordt gevraagd om u toe te voegen aan de groep vertalers, zodat u de gewenste pagina's kunt vertalen. Een link onderaan elke vertaalde pagina geeft aan dat u de vertaler bent en heeft een link naar uw profiel.
Bij voorbaat dank.
Document heeft de 30/01/2003 gemaakt, de laatste keer de 26/10/2018 gewijzigd
Bron van het afgedrukte document:https://www.gaudry.be/nl/php-rf-mysqlinfo.library.choosing.html
De infobrol is een persoonlijke site waarvan de inhoud uitsluitend mijn verantwoordelijkheid is. De tekst is beschikbaar onder CreativeCommons-licentie (BY-NC-SA). Meer info op de gebruiksvoorwaarden en de auteur.
Referenties
Deze verwijzingen en links verwijzen naar documenten die geraadpleegd zijn tijdens het schrijven van deze pagina, of die aanvullende informatie kunnen geven, maar de auteurs van deze bronnen kunnen niet verantwoordelijk worden gehouden voor de inhoud van deze pagina.
De auteur Deze site is als enige verantwoordelijk voor de manier waarop de verschillende concepten, en de vrijheden die met de referentiewerken worden genomen, hier worden gepresenteerd. Vergeet niet dat u meerdere broninformatie moet doorgeven om het risico op fouten te verkleinen.