Installation

Die mysqli-Erweiterung wurde in PHP 5.0.0 eingeführt; der MySQL Native Driver mit PHP 5.3.0.

Installation unter Linux

Die gängigen Unix-Distributionen enthalten Binärversionen von PHP, die installiert werden können. Obwohl diese Binärversionen typischerweise mit Unterstützung für die MySQL-Erweiterungen erstellt wurden, müssen möglicherweise die Erweiterungs-Bibliotheken selbst unter Verwendung eines zusätzlichen Pakets installiert werden. Die Paketverwaltung der gewählten Distribution ist auf dessen Verfügbarkeit zu prüfen.

Beispielsweise installiert unter Ubuntu das Paket php5-mysql die PHP-Erweiterungen ext/mysql, ext/mysqli und pdo_mysql. Unter CentOS installiert das Paket php-mysql diese drei Erweiterungen ebenfalls.

Alternativ kann diese Erweiterung auch selbst kompiliert werden. Das Kompilieren von PHP aus den Quellen erlaubt die Auswahl der MySQL-Erweiterungen, die verwendet werden sollen, sowie die Wahl der Client-Bibliothek für jede Erweiterung.

Der MySQL Native Driver wird empfohlen, da er zu einer verbesserten Performance führt und Zugriff auf Funktionen gewährt, die bei der Verwendung der MySQL-Client-Bibliothek nicht zur Verfügung stehen. Lesen Sie Was versteht man unter dem MySQL Native Driver von PHP?, um einen kurzen Überblick über die Vorteile des MySQL Native Drivers zu erhalten.

/path/to/mysql_config stellt den Pfad des mysql_config-Programms dar, das mit MySQL-Server ausgeliefert wird.

Unterstützungsmatrix für die MySQLi-Kompilierung
PHP-Version Standard Konfigurationsoptionen: mysqlnd Konfigurationsoptionen: libmysqlclient Changelog
5.4.x und höher mysqlnd --with-mysqli --with-mysqli=/path/to/mysql_config mysqlnd ist nun standardmäßig aktiviert
5.3.x libmysqlclient --with-mysqli=mysqlnd --with-mysqli=/path/to/mysql_config mysqlnd wird unterstützt
5.0.x, 5.1.x, 5.2.x libmysqlclient Nicht verfügbar --with-mysqli=/path/to/mysql_config mysqlnd wird nicht unterstützt

Es ist möglich, MySQL-Erweiterungen und Client-Bibliotheken frei zu mischen. Zum Beispiel ist es denkbar, dass die MySQL-Erweiterung die MySQL-Client-Bibliothek (libmysqlclient) verwendet, während die mysqli-Erweiterung so konfiguriert ist, dass sie den MySQL Native Driver verwendet. Alle Kombinationen von Erweiterungen und Client-Bibliotheken sind möglich.

Installation auf Windows-Systemen

Unter Windows muss die DLL php_mysqli.dll in der php.ini aktiviert werden.

Wie bei der Aktivierung jeder anderen PHP-Erweiterung (wie z. B. php_mysqli.dll) sollte auch hier die PHP-Anweisung extension_dir auf das Verzeichnis zeigen, in dem die vorhandenen PHP-Erweiterungen liegen. Siehe dazu auch den Abschnitt Manuelle PHP-Installation auf Windows. Ein entsprechender extension_dir-Wert ist zum Beispiel c:\php\ext.

Hinweis:

Wenn beim Starten des Webservers ein Fehler ähnlich dem folgenden auftritt: "Unable to load dynamic library './php_mysqli.dll'", liegt das daran, dass php_mysqli.dll vom System nicht gefunden wird.

add a note add a note

User Contributed Notes 3 notes

up
-2
David dot Kit dot Friedman at gmail dot com
15 years ago
>On Windows, PHP is most commonly installed using the binary installer. Once PHP has been installed, some >configuration is required to enable mysqli and specify the client library you want it to use.

Basically, if you want to add extensions you can double-click again on the installer file. The installer will find the already installed PHP and will ask if you want to change the installation.

When you go through the prompts it will take you back to the list of extensions and you can pick which extensions you want to add.

For the mysqli extension the installer also edited php.ini so that the extension was enabled:

[PHP_MYSQLI]
extension=php_mysqli.dll

the installer added those lines to the end of the file.
up
-24
Mark F
13 years ago
Just to note with regards to SSL and compression. MySQLnd and thus extensions using mysqlnd such as mysqli... now supports SSL and compression. Both have been supported inside mysqlnd since PHP 5.3.3 - http://www.php.net/manual/en/mysqlnd.overview.php
up
-42
bansi
5 years ago
In Windows 10 if mysqli is not working in PHP 7.3 you should add PHP directory to the PATH and restart your web server. This behavior was not there in PHP 7.0.27.
To Top