Installation

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

Installation on 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 wird PHP in der Regel durch den Binär-Installer installiert.

PHP 5.3.0 und neuer

Unter Windows gilt für die PHP-Versionen 5.3 und neuer, dass die mysqli-Erweiterung standardmäßig aktiviert ist und den MySQL Native Driver verwendet. Das bedeutet, dass Sie sich nicht um die Konfiguration des Zugriffs auf die libmysql.dll kümmern müssen.

PHP 5.0, 5.1, 5.2

Unter diesen alten, nicht mehr unterstützten PHP-Versionen (die Unterstützung von PHP 5.2 wurde am 6. Januar 2011 eingestellt), sind zusätzliche Konfigurationsschritte notwendig, um mysqli zu aktivieren und die Client-Bibliothek anzugeben, die verwendet werden soll.

Die mysqli-Erweiterung ist standardmäßig nicht aktiviert, daher muss die php_mysqli.dll-DLL in der php.ini aktiviert werden. Um dies zu tun, müssen Sie die php.ini-Datei finden (typischerweise liegt diese unter c:\php) und das Kommentarzeichen (ein Semikolon) vom Anfang der Zeile extension=php_mysqli.dll im Abschnitt [PHP_MYSQLI] entfernen.

Wenn Sie die MySQL-Client-Bibliothek mit mysqli verwenden wollen, stellen Sie sicher, dass PHP auf die Bibliothek zugreifen kann. Die MySQL-Client-Bibliothek ist in einer Datei namens libmysql.dll der PHP-Windowsdistribution enthalten. Um sie erfolgreich laden zu können, muss sie innerhalb des Pfades liegen, der von der Windows-Umgebungsvariablen PATH bestimmt wird. Lesen Sie dazu auch den FAQ-Eintrag "Wie füge ich mein PHP-Verzeichnis der PATH-Variablen unter Windows hinzu?", um mehr Informationen darüber zu erhalten. Das Kopieren von libmysql.dll in das Windows-Systemverzeichnis (typischerweise c:\Windows\system) funktioniert ebenfalls, da das Systemverzeichnis standardmäßig im PATH enthalten ist. Allerdings raten wir dringend von dieser Arbeitsweise ab.

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. Lesen Sie dazu auch den Abschnitt Manuelle PHP-Installation auf Windows. Ein entsprechender extension_dir-Wert für PHP 5 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 und/oder libmysql.dll vom System nicht gefunden wird.

Hier Kannst Du einen Kommentar verfassen


Bitte gib mindestens 10 Zeichen ein.
Wird geladen... Bitte warte.
* Pflichtangabe
Es sind noch keine Kommentare vorhanden.

PHP cURL-Tutorial: Verwendung von cURL zum Durchführen von HTTP-Anfragen

cURL ist eine leistungsstarke PHP-Erweiterung, die es Ihnen ermöglicht, mit verschiedenen Servern über verschiedene Protokolle wie HTTP, HTTPS, FTP und mehr zu kommunizieren. ...

TheMax

Autor : TheMax
Kategorie: PHP-Tutorials

Midjourney Tutorial - Anleitung für Anfänger

Über Midjourney, dem Tool zur Erstellung digitaler Bilder mithilfe von künstlicher Intelligenz, gibt es ein informatives Video mit dem Titel "Midjourney Tutorial auf Deutsch - Anleitung für Anfänger" ...

Mike94

Autor : Mike94
Kategorie: KI Tutorials

Grundlagen von Views in MySQL

Views in einer MySQL-Datenbank bieten die Möglichkeit, eine virtuelle Tabelle basierend auf dem Ergebnis einer SQL-Abfrage zu erstellen. ...

admin

Autor : admin
Kategorie: mySQL-Tutorials

Tutorial veröffentlichen

Tutorial veröffentlichen

Teile Dein Wissen mit anderen Entwicklern weltweit

Du bist Profi in deinem Bereich und möchtest dein Wissen teilen, dann melde dich jetzt an und teile es mit unserer PHP-Community

mehr erfahren

Tutorial veröffentlichen

Ein data POST via Curl funktioniert nicht.

Anmorg93 Respekt, du bist ja nur um rund 10 Jahre zu spät dran.

Geschrieben von scatello am 21.11.2024 10:57:00
Forum: PHP Developer Forum
Ein data POST via Curl funktioniert nicht.

Hey, hatte auch mal das Problem. Oft liegt’s an fehlenden oder falschen Headern. Probier mal:​ $ch = curl_init(); curl_setopt($ch, CURLOPT_UR ...

Geschrieben von Anmorg93 am 21.11.2024 10:48:17
Forum: PHP Developer Forum
Probleme mit einem Linux-Befehl...

guten Tag liebe Community ;) hallo liebe Freunde auf der php-Ressource, hoffe, das landet im richtigen Unterforum also, womit ich im Moment zu ...

Geschrieben von dhubs am 15.11.2024 16:21:52
Forum: Off-Topic Diskussionen
ein .htaccess-File für eine WordPress-Installation - wie gehe ich hier vor.?

hallo und guten Tag, wie lege ich denn einen .htaccess für eine WordPress-Installation an - wie gehe ich hier vor. Kann man das denn so mache ...

Geschrieben von dhubs am 13.11.2024 15:52:54
Forum: Webmaster