Einführung
    
     PDO_MYSQL ist ein Treiber, der die
     PHP Data Objects (PDO)-Schnittstelle
     implementiert, um von PHP aus auf MySQL Datenbanken zugreifen zu können.
    
    
     PDO_MYSQL verwendet standardmäßig emulierte vorbereitete Anweisungen.
    
    
      MySQL 8
    
    
     Bei PHP-Versionen vor PHP 7.1.16 oder der 7.2-Serie vor 7.2.4 muss das
     Standard-Passwort-Plugin des MySQL 8-Servers auf
     mysql_native_password gesetzt werden, da sonst
     Fehler angezeigt werden wie The server requested authentication
     method unknown to the client [caching_sha2_password], auch
     wenn caching_sha2_password nicht verwendet wird.
    
    
     Das liegt daran, dass MySQL 8 standardmäßig caching_sha2_password
     verwendet und dieses Plugin von den älteren PHP- (mysqlnd) Versionen
     nicht erkannt wird. Stattdessen muss die Voreinstellung durch den
     Eintrag
     default_authentication_plugin=mysql_native_password in
     der Datei my.cnf geändert werden. Das Plugin
     caching_sha2_password wird seit PHP 7.4.4
     vollständig unterstützt. In älteren Versionen wird es von der Erweiterung
     mysql_xdevapi unterstützt.
    
    Warnung
     
      Vorsicht ist geboten: Einige MySQL-Tabellentypen (Speicher-Engines)
      unterstützen keine Transaktionen. Wenn transaktionaler Datenbankcode für
      einen Tabellentyp geschrieben wird, der keine Transaktionen unterstützt,
      verhält sich MySQL so, als sei eine Transaktion erfolgreich initiiert
      worden. Darüber hinaus werden alle ausgelösten DDL-Abfragen implizit
      alle anstehenden Transaktionen festschreiben.
     
     
    Hinweis: 
     
      Der MySQL-Treiber unterstützt die Konstante
      PDO::PARAM_INPUT_OUTPUT über die Methode
      PDOStatement::bindParam() nicht korrekt; solche
      Parameter können zwar verwendet werden, werden aber nicht aktualisiert
      (d. h. die eigentliche Ausgabe wird ignoriert).
     
    
    
   
 Installation
 
  In allen gängigen Unix-Distributionen sind Binärversionen von PHP enthalten,
  die installiert werden können. Obwohl diese Binärversionen in der Regel mit
  Unterstützung für die MySQL-Erweiterungen gebaut werden, müssen die
  Erweiterungsbibliotheken selbst möglicherweise über ein zusätzliches Paket
  installiert werden. Ob dies der Fall ist, erfahren Sie in der Paketverwaltung
  Paketverwaltung der von Ihnen gewählten Distribution.
 
 
  Unter Ubuntu zum Beispiel installiert das Paket php5-mysql
  die PHP-Erweiterungen ext/mysql, ext/mysqli und PDO_MYSQL. Auch unter CentOS
  installiert das Paket php-mysql diese drei
  PHP-Erweiterungen.
 
 
  Alternativ können Sie diese Erweiterung auch selbst kompilieren. Wenn Sie
  PHP aus dem Quellcode kompilieren, können Sie die MySQL-Erweiterungen
  angeben, die Sie verwenden möchten, und auch die Client-Bibliothek für jede
  Erweiterung auswählen.
 
 
  Um die Erweiterung PDO MySQL zu installieren, verwenden Sie beim Kompilieren
  --with-pdo-mysql[=DIR], wobei das
  optionale [=DIR] die MySQL-Basisbibliothek angibt. Die
  Standardbibliothek ist Mysqlnd. Für
  Details über die Auswahl einer Bibliothek, siehe
  Auswahl einer MySQL-Bibliothek.
 
 
  Mit dem optionalen --with-mysql-sock[=DIR]
  kann der Speicherort des Unix-Sockets von MySQL für alle MySQL Erweiterungen,
  einschließlich PDO_MYSQL, festgelegt werden. Wenn nichts angegeben ist,
  werden die standardmäßigen Speicherorte durchsucht.
 
 
  Optional kann --with-zlib-dir[=DIR]
  verwendet werden, um den Pfad zum libz-Installationspräfix festzulegen.
 
 
  
$ ./configure --with-pdo-mysql --with-mysql-sock=/var/mysql/mysql.sock
 
 
 
  Die SSL-Unterstützung wird mit den entsprechenden
  Pdo\Mysql::ATTR_SSL_*-Konstanten
  aktiviert, was dem Aufruf der
  » MySQL C API-Funktion mysql_ssl_set()
  entspricht. Darüber hinaus kann SSL nicht mittels
  PDO::setAttribute() aktiviert werden, da die Verbindung
  bereits existiert. Siehe auch die MySQL-Dokumentation über den
  » Aufbau einer Verbindung zu MySQL mit SSL.
 
 
   
 Laufzeit-Konfiguration
 Das Verhalten dieser Funktionen wird
durch Einstellungen in der php.ini beeinflusst.
 
  
  Weitere Details und die Definitionen der
INI_*-Konstanten sind unter 
Wo Konfigurationseinstellungen gesetzt werden können zu finden.
 
 
Hier eine kurze Erklärung der
Konfigurationsoptionen:
 
  
   
    - 
     pdo_mysql.default_socketstring
- 
     
      Setzt einen Unix-Domain-Socket. Wenn während der Ausführung von
      configure ein Domain-Socket gefunden wird, wird dieser Wert bereits beim
      Kompilieren gesetzt. Diese INI-Einstellung gilt nur unter Unix.
      
- 
     pdo_mysql.debugbool
- 
     
      Aktiviert das Debugging für PDO_MYSQL. Diese Einstellung ist nur
      verfügbar, wenn PDO_MYSQL mit mysqlnd und im PDO-Debugmodus kompiliert
      wurde.