Ich habe viele Themen zu diesem Fehler gesehen, aber ich denke, mein Fall ist spezifisch. Hier ist die Sache:Laravel: Fehler [PDOException]: Treiber konnte nicht gefunden werden (PostgreSQL)
Ich hatte zunächst PHP 5.5.9 auf meinem Ubuntu-Server installiert. Um das neueste Laravel Framework zu installieren, musste ich PHP auf 5.6 aktualisieren. Ich habe this guide verwendet, um zu aktualisieren. Ich habe auch PostgreSQL 9.3. Nun, phpinfo
sagt mir, dass ich immer noch PHP 5.5.9 installiert habe. Aber php -v
sagt mir, dass ich PHP 5.6 habe. Ich habe Laravel erfolgreich installiert und kann mich mit meiner Datenbank auf meiner Webseite verbinden (ich kann Felder aus meiner Tabelle anzeigen). Aber wenn ich versuche php artisan migrate
in der Konsole auszuführen bekomme ich folgende Fehlermeldung:
[PDOException]
could not find driver
Das ist seltsam, weil ich PDO pgsql-Treiber auf PHP 5.5.9 vor und unkommentiert extension=pdo_mysql.so
in php.ini und die Anbindung an DB Werk installiert haben gut auf meiner Webseite.
Ich denke, das Problem ist, dass ich zwei verschiedene PHP-Versionen auf meinem Server habe: Ich habe Ordner php5
und php/5.6
in meinem Ordner /etc
, die verschiedene Konfigurationen haben. Ich habe versucht, php5-pgsql
Paket zu löschen und zu installieren, aber es scheint, auf der vorherigen PHP-Version zu installieren. Ich habe auch zwei verschiedene Ordner in meinem Ordner /usr/lib
. Der Befehl php -i | grep -i pdo
zeigt keinen installierten PDO-Pgsql-Treiber in der Konsole an.
Gibt es eine Möglichkeit, dieses Problem zu lösen? Ich denke, das passiert, weil Versionen in Konflikt geraten.
Danke! Ich habe mit Konfigurationsdateien gezaubert und jetzt sieht mein Apache die korrekte PHP-Version (wie CLI). Ich konnte die Erweiterung installieren und kann die Migration durchführen. – thebat93