Laravel: Fehler [PDOException]: Treiber in PostgreSQL nicht gefunden
P粉722409996
P粉722409996 2023-07-31 18:16:43
0
2
692
<p>Übersetzen: „Ich versuche, über Laravel eine Verbindung zu einer PostgreSQL-Datenbank herzustellen, um den Befehl „php artisan migrate“ auszuführen, aber es scheint nicht erfolgreich zu sein, da der MySQL-Datenbankname gelesen wird.<br / ><br /> ;Die folgenden Befehle sind in der Datenbank.php aufgeführt:</p><p><br /></p> <pre class="brush:php;toolbar:false;">'connections' => 'sqlite' => array( 'driver' => 'sqlite', 'database' => __DIR__.'/../database/produktion.sqlite', 'Präfix' => '', ), 'mysql' => array( 'driver' => 'mysql', 'host' => 'localhost', 'database' => 'database', 'Benutzername' => 'root', 'Passwort' => '', 'charset' => 'utf8', 'collation' => 'utf8_unicode_ci', 'Präfix' => '', ), 'pgsql' => array( 'driver' => 'pgsql', 'host' => 'localhost', 'Datenbank' => 'Postgres', 'Benutzername' => 'postgres', 'Passwort' => 'root', 'charset' => 'utf8', 'Präfix' => '', 'schema' => 'public', ), 'sqlsrv' => array( 'driver' => 'sqlsrv', 'host' => 'localhost', 'database' => 'database', 'Benutzername' => 'root', 'Passwort' => '', 'Präfix' => '', ), ),</pre> <p>Wenn ich den Pfad zu MySQL entferne, erhalte ich: </p> <pre class="brush:php;toolbar:false;">[InvalidArgumentException] Datenbank [mysql] nicht konfiguriert.</pre> <p><br /></p><hr /> <strong>Übersetzen: „Bearbeiten: Beim Versuch, den Befehl „php artisan migrate“ auszuführen, wurde der Fehler „PDOException: Treiber konnte nicht gefunden“ angezeigt. Ich verwende WAMP und unter Windows 8.1. Die Datenbank verwendet PostgreSQL.“< /strong><p><br /></p> <p><br /></p><hr /> <strong>EDIT:</strong> Übersetzen: „Ich habe eine Reihe alternativer Lösungen ausprobiert, aber das Problem bleibt ungelöst. Habe php.ini in Apache, WAMP (aus dem PHP-Ordner) und der PostgreSQL-Datei überprüft. extension_dir ist festgelegt.“ korrekt wie folgt: -> extension_dir = "c:/wamp/bin/php/php5.5.12/ext/". extension=pdo_pgsql.dll wurde auskommentiert < br /><br /> in den „Systemvariablen“ eingegeben und den Computer neu gestartet, aber immer noch kein Erfolg.<br /><br />Vielen Dank für die bisherige Hilfe. <br /><br />Dies sind meine Treiber php_pdo_driver.h und php_pdo.h in C:Programme (x86)PostgreSQLEnterpriseDB-ApachePHPphpSDKincludeextpdo<br /><br />Von phpinfo erhaltene Informationen : <br /><p><br /></p> <blockquote> <p>Übersetzen: "PHP Version 5.5.12<br /><br />Compiler MSVC11 (Visual C++ 2012) Konfigurationsbefehl cscript /nologo configure.js "--enable-snapshot-build" "- - disable-isapi“ „--enable-debug-pack“ „--without-mssql“ „--without-pdo-mssql“ „--without-pi3web“ „--with-pdo-oci=C:php-sdkoraclex64instantclient10sdk ,shared“ „--with-oci8=C:php-sdkoraclex64instantclient10sdk,shared“ „--with-oci8-11g=C:php-sdkoraclex64instantclient11sdk,shared“ „--enable-object-out-dir=../ obj /" "--enable-com-dotnet=shared" "--with-mcrypt=static" "--disable-static-analyze" "--with-pgo""</p><p>< ; br /></p> </blockquote><p><br /></p>
P粉722409996
P粉722409996

Antworte allen(2)
P粉043295337

"对于 PDOException: could not find driver for MySQL 错误,如果是基于 Debian 的操作系统

sudo apt-get -y install php5-mysql
P粉037450467

Translate: "Be sure to configure the 'default' key in app/config/database.php.

对于PostgreSQL,配置应该是 'default' => 'postgres'。

如果您收到 [PDOException] could not find driver 错误,请检查您是否安装了正确的PHP扩展。您需要安装并启用 pdo_pgsql.so 和 pgsql.so。如何安装这些扩展因操作系统而异。

对于Windows,pgsql扩展应该已经随官方PHP发行版预先下载。只需编辑您的php.ini文件,并取消注释以下行 extension=pdo_pgsql.so 和 extension=pgsql.so。

此外,在php.ini中,确保 extension_dir 设置为正确的目录。它应该是您的PHP安装目录中名为extensions或ext或类似的文件夹。

最后,将 libpq.dll 从 C:\wamp\bin\php\php5.*\ 复制到 C:\wamp\bin\apache*\bin,并通过WampServer界面重新启动所有服务。

如果仍然出现异常,您可能需要将PostgreSQL的 \bin 目录添加到您的PATH环境变量中。"

  1. System Properties -> Advanced tab -> Environment Variables
  2. 在窗口的下半部分的 '系统变量' 组中,滚动查找并找到 PATH 条目。
  3. 选择它并点击编辑。
  4. 在现有条目的末尾,输入您的 postgres bin 目录的完整路径。bin 文件夹应该位于您的 postgres 安装目录的根目录中。
  5. 重新启动任何打开的命令提示符,或者为了确保,请重新启动您的计算机。

这样应该可以解决任何问题。更多信息请参见:

Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage