Treiber nicht gefunden – „Im Treiber ist eine Ausnahme aufgetreten: Treiber konnte nicht gefunden werden' in Symfony 5
P粉651109397
2023-08-22 20:59:57
<p>Ich stehe derzeit vor diesem Problem. Ich bin ein echter Neuling, was Symfony betrifft. </p>
<p>Frage:
Wenn ich mit cli <code>symfony console doctrine:database:create</code> eine neue Datenbank erstelle, erhalte ich die folgende Fehlermeldung: </p>
<pre class="brush:php;toolbar:false;">In AbstractPostgreSQLDriver.php Zeile 102:
Im Treiber ist eine Ausnahme aufgetreten: Der Treiber konnte nicht gefunden werden
In Exception.php Zeile 18:
Treiber konnte nicht gefunden werden
In PDOConnection.php Zeile 38:
Treiber konnte nicht gefunden werden</pre>
<p>Ich verwende PHP 7.4 mit xampp, normalerweise ist pdo_sql installiert: </p>
<pre class="brush:php;toolbar:false;">extension=bz2
extension=curl
;extension=ffi
;extension=ftp
extension=fileinfo
Erweiterung=gd2
extension=gettext
;extension=gmp
;extension=intl
;extension=imap
;extension=ldap
extension=mbstring
extension=exif ; Muss nach mbstring stehen, da es davon abhängt
extension=mysqli
;extension=oci8_12c ; Verwendung mit Oracle Database 12c Instant Client
;extension=odbc
extension=openssl
;extension=pdo_firebird
extension=pdo_mysql
;extension=pdo_oci
;extension=pdo_odbc
;extension=pdo_pgsql
extension=pdo_sqlite
;extension=pgsql
;extension=shmop</pre>
<p>Dies ist meine .env-Dateikonfiguration: </p>
<pre class="brush:php;toolbar:false;">###>
#Das Format finden Sie unter https://www.doctrine-project.org/projects/doctrine-dbal/en/latest/reference/configuration.html#connecting-using-a-url
# WICHTIG: Sie müssen Ihre Serverversion hier oder in config/packages/doctrine.yaml konfigurieren
#
# DATABASE_URL="sqlite:///%kernel.project_dir%/var/data.db"
DATABASE_URL="mysql://root:@127.0.0.1:3306/dbname"
DATABASE_URL="postgresql://db_user:db_password@127.0.0.1:5432/db_name?serverVersion=13&charset=utf8"
###< doctrine/doctrine-bundle ###</pre>
<p>Dies ist die Konfiguration meiner doctrine.yaml-Datei:</p>
<pre class="brush:php;toolbar:false;">doktrin:
dbal:
URL: '%env(resolve:DATABASE_URL)%'
# WICHTIG: Sie müssen Ihre Serverversion hier oder in der Umgebungsvariablen DATABASE_URL konfigurieren (siehe .env-Datei)
#server_version: '13'
orm:
auto_generate_proxy_classes: true
naming_strategy: doctrine.orm.naming_strategy.underscore_number_aware
auto_mapping: wahr
Zuordnungen:
App:
is_bundle: false
Typ: Anmerkung
dir: '%kernel.project_dir%/src/Entity'
Präfix: 'AppEntity'
Alias: App</pre>
<p>Ich habe ein paar Stunden lang gesucht, kann aber keine Lösung für mein Problem finden. Hat jemand eine Idee?
Ich verwende ein Windows-System.</p>
<p>Vielen Dank! </p>
如果您在Linux上工作,可能缺少一些扩展,运行以下命令
如果您想使用Mysql,请注释掉这行代码:
DATABASE_URL="postgresql://db_user:db_password@127.0.0.1:5432/db_name?serverVersion=13&charset=utf8"
如果不是,请注释掉另一行代码