PostgreSql ‘PDOException’ mit Meldung ‘Treiber konnte nicht gefunden werden’
Lesezeit: 3 Minuten
Dipro Sen
pdo funktioniert gut mit mysql, aber mit pgsql gibt es einen Fehler 'PDOException' with message 'could not find driver' Ich habe installiert php5-pgsql Paket, das auch enthält pdo_pgsql
Dieses Paket stellt ein Modul für PostgreSQL-Datenbankverbindungen direkt aus PHP-Skripten bereit. Es enthält auch das pdo_pgsql-Modul zur Verwendung mit der PHP Data Object-Erweiterung.
mein dsn ist pgsql:dbname=DB;host=192.168.0.2
Ich verwende Ubuntu 10.04
Entschuldigung, ich habe den falschen Server überprüft. Sein Gentoo und hier ist postgresql nicht installiert.
– Dipro sen
10. April 2012 um 11:09 Uhr
Ich möchte die Moderatoren bitten, die Frage nach Möglichkeit zu löschen
– Dipro sen
10. April 2012 um 11:34 Uhr
auf Ihre eigenen Fragen können Sie diese selbst löschen, indem Sie auf den entsprechenden Link am Ende Ihrer Frage klicken
– JMax
20. Juli 2012 um 8:14 Uhr
Ich habe diesen Fehler auch. Mein Problem ist, dass ich eine Verbindung über einen DSN mit einem Format ähnlich dem von Heroku hergestellt habe: Während dort “postgre:” steht, ist der richtige Treiber für PDO “pgsql:”.
– igorsantos07
20. Dezember 2015 um 6:22 Uhr
Sehen Sie sich mein How to Answer (stackoverflow.com/a/53661888/5279996) in einer anderen ähnlichen Publikation an. GL
– Braian Coronel
7. Dezember 2018 um 1:19 Uhr
Goms
Diese Meldung bedeutet, dass Sie dies tun müssen Installieren und oder aktivieren Sie postgresql-Erweiterung in PHP
Diese Lösung funktioniert bei mir: So installieren Sie postgresql Verlängerung
[sudo] apt-get install php-pgsql
nach, um es zu aktivierenauskommentieren pgsql und pdo-pgsql Erweiterungen ein etc/php/$PHP_VERSION/apache2/php.ini Datei
Geben Sie abschließend Folgendes ein:
[sudo] /etc/init.d/apache2 restart
So starten Sie den Apache-Server neu, wenn Sie Apache wie in meinem Fall verwenden …
Es ist erwähnenswert, dass es bei meiner Erstinstallation von PHP 2 php.ini-Dateien gab. Da ich nicht wusste, was ich auskommentieren sollte, habe ich sie beide gemacht.
– Daniel L. VanDenBosch
12. Juli 2018 um 19:14 Uhr
1) Haben Sie pgsql.so in aktiviert php.ini (extension=pgsql.so)?
2) Hörst du auf Postgresql? 192.168.0.2 Schnittstelle? (Sie können es überprüfen durch netstat -tpln)
3) Wie authentifizieren Sie Ihren Zugang zu Postgresql?
ich musste es machen sudo systemctl restart php-fpm.service bevor es funktionierte.
– Der junge Emil
9. August 2018 um 12:14 Uhr
Stellen Sie sicher, dass Sie die Zeile, die php mitteilt, wo sich der Postgres-Treiber befindet (normalerweise extension=pgsql.so) im Wesentlichen php.ini Datei.
Ich hatte das gleiche Problem. Überprüfen Sie zunächst, ob es in der php.ini aktiviert ist. Kommentieren extension=php_pdo_pgsql...
als Erweiterungsverzeichnis einrichten!!
extension_dir = "ext" ; for your case it could be other dir.
und vergessen Sie nicht, den Server neu zu starten, nachdem Sie die Konfiguration geändert haben.
Rafael Matsumoto
Versuchen Sie, das Semikolon davor zu entfernen
Erweiterung=pgsql
extension=pgsql.so
in Ihrem enthalten php.ini Datei
Sie können dies über das XAMPP Control Panel tun.
Ich hatte das gleiche Problem mit einer anderen Lösung. Ich habe meine ungefähr 4 Stunden verloren, um dieses Problem zu lösen. Bitte überprüfen Sie Folgendes, um dieses Problem zu lösen.
Prüfen php.ini Datei und entfernen Sie das Semikolon aus dieser Zeile
extension=pgsql
extension=pdo_pgsql
Starten Sie Ihren Apache2-Server neu
sudo service apache2 restart
Überprüfen Sie, ob Ihr PDO-Treiber in localhost aktualisiert wurde phpinfo()
Ich habe alles richtig gemacht und trotzdem hatte ich dieses Problem. Und du weißt warum? Weil ich mehrere PHP-Versionen installiert hatte. Also rannte ich php7.4 In meiner PHP-CLI lief aber localhost weiter php7.2. Überprüfen Sie also immer Ihre PHP-Versionen.
Überprüfen Sie Ihre PHP-Version auf localhost und Terminal-Cli
Amir Md Amiruzzaman
Hier ist, was ich getan habe, um das Problem zu lösen.
Bearbeiten php.ini und entfernen ; aus extension=pdo_pgsql. Fügen Sie außerdem hinzu extension=pgsql.so zum php.ini Datei.
Stellen Sie sicher, dass Sie den Apache-Server neu starten, bevor Sie versuchen, das Ergebnis anzuzeigen.
12482600cookie-checkPostgreSql ‘PDOException’ mit Meldung ‘Treiber konnte nicht gefunden werden’yes
Entschuldigung, ich habe den falschen Server überprüft. Sein Gentoo und hier ist postgresql nicht installiert.
– Dipro sen
10. April 2012 um 11:09 Uhr
Ich möchte die Moderatoren bitten, die Frage nach Möglichkeit zu löschen
– Dipro sen
10. April 2012 um 11:34 Uhr
auf Ihre eigenen Fragen können Sie diese selbst löschen, indem Sie auf den entsprechenden Link am Ende Ihrer Frage klicken
– JMax
20. Juli 2012 um 8:14 Uhr
Ich habe diesen Fehler auch. Mein Problem ist, dass ich eine Verbindung über einen DSN mit einem Format ähnlich dem von Heroku hergestellt habe: Während dort “postgre:” steht, ist der richtige Treiber für PDO “pgsql:”.
– igorsantos07
20. Dezember 2015 um 6:22 Uhr
Sehen Sie sich mein How to Answer (stackoverflow.com/a/53661888/5279996) in einer anderen ähnlichen Publikation an. GL
– Braian Coronel
7. Dezember 2018 um 1:19 Uhr