[Risolto] Si è verificata un’eccezione nel driver: impossibile trovare il driver
Quando si esegue un’app Symphony, gli utenti spesso ricevono l’errore Si è verificata un’eccezione nel driver: impossibile trovare il driver seguito dal percorso del driver configurato. Questo è il caso quando l’app utilizza il database MySQL.
L’errore di solito appare quando MySQL non è installato, i nomi dei file sono errati, i file critici mancano o sono archiviati nella directory sbagliata oppure le estensioni richieste non sono installate o attivate.
Come posso correggere l’errore Si è verificata un’eccezione nel driver?
Prima di iniziare con le soluzioni leggermente complesse, prova queste veloci:
- Assicurati di aver salvato il file. env.local con un punto (.) prima del nome del file e che sia archiviato nella directory app/. Sia app/.env che app/.env.local devono essere archiviati nella stessa directory.
- Esegui il comando all’interno del contenitore PHP anziché nel terminale predefinito del PC.
- Assicurati che php.ini sia denominato come tale e non php.ini-prod dopo la modifica.
1. Installa MySQL e i suoi driver
Installa MySQL eseguendo il seguente comando nel terminale:sudo apt install php-mysql
Per coloro che utilizzano Linux, utilizzare questo comando per installare le estensioni mancanti:sudo apt-get install php-mysql php-pdo
Se usi Docker, usa questo comando per installare i driver MySQL:RUN docker-php-ext-install pdo pdo_mysql
2. Attiva le estensioni
Nel file php.ini, aggiungi il percorso in cui xampp ha installato le estensioni accanto a extension_dir. Ad esempio, potrebbe essere:C:\xampp\php\ext
Ora attiva le seguenti estensioni:
- estensione=bz2
- estensione=arricciatura
- estensione=infofile
- estensione=gd2
- estensione=gettesto
- estensione=mbstring
- estensione=exif
- estensione=mysqli
- estensione=pdo_mysql
- estensione=pdo_sqlite
3. Aggiungi il percorso assoluto
Aggiungi il percorso assoluto (potrebbe essere diverso nel tuo caso) a extensions_dir con il seguente comando:extension_dir = "c:\php5\ext"
Una volta terminato, riavviare il server Web e verificare i miglioramenti.
4. Sostituisci 127.0.0.1 con Localhost
Se ricevi l’errore Si è verificata un’eccezione nel driver: impossibile trovare il driver durante l’esecuzione: php bin/console doctrine:database:create
o symfony console doctrine:database:create
Sostituisci 127.0.0.1 con localhost in DATABASE_URL. Alla fine diventa:DATABASE_URL="mysql://db_user:db_password@localhost:3306/db_name?serverVersion=5.7&charset=utf8mb4"
Molti utenti hanno confermato che la soluzione funziona. Dovresti provarlo anche se sia [email protected] che root@localhost sono archiviati nella tabella utente MySQL.
5. Reinstallare PostgreSQL di PHP e rimuovere le versioni PHP non utilizzate
- Rimuovi Symphony dal computer. Controlla la directory ~/.symfony o qualsiasi altra posizione in cui potrebbe essere archiviato.
- Ora esegui il seguente comando per rimuovere PostgreSQL di PHP:
sudo apt-get --purge remove php-pgsql
- Rimuovi la versione PHP non utilizzata con questo comando (la versione potrebbe differire nel tuo caso):
sudo apt-get purge 'php5.6'
- Usa questo comando per installare PostgreSQL di PHP:
sudo apt-get install php-pgsql
- Infine, scarica Symphony dal sito ufficiale per il tuo sistema operativo e controlla i miglioramenti.
Una di queste soluzioni avrebbe dovuto aiutare a risolvere l’errore Si è verificata un’eccezione nel driver: impossibile trovare il driver. Ricorda, l’errore può derivare da banali errori di configurazione fino a gravi corruzioni e dovrai affrontarlo in modo appropriato.
Per qualsiasi domanda o per condividere ciò che ha funzionato per te, lascia un commento qui sotto.
Lascia un commento