Jeg utvikler et nettsted på en server jeg bare har tilgang til MySQL og FTP, så alle kommandoer jeg kjører er gjennom b374k php shell. Jeg opplever et Laravel-problem med SQL-driveren. Jeg prøvde å bytte til fil-hosted SQLite (i database/database.sqlite), men unntaket er det samme som ved bruk av MySQL. Inngangen & utdata fra konsollen er som følger:
php artisan migrate:refresh --seed
[Illuminate\Database\QueryException]
could not find driver (SQL: select * from sqlite_master where type = 'table ' and name = migrations)
[Doctrine\DBAL\Driver\PDOException]
could not find driver
[PDOException]
could not find driver
Apache-utvidelsene som er installert på serveren, er:
/etc/php/5.6/apache2/conf.d/10-mysqlnd.ini,
/etc/php/5.6/apache2/conf.d/10-opcache.ini,
/etc/php/5.6/apache2/conf.d/10-pdo.ini,
/etc/php/5.6/apache2/conf.d/15-xml.ini,
/etc/php/5.6/apache2/conf.d/20-calendar.ini,
/etc/php/5.6/apache2/conf.d/20-ctype.ini,
/etc/php/5.6/apache2/conf.d/20-curl.ini,
/etc/php/5.6/apache2/conf.d/20-dom.ini,
/etc/php/5.6/apache2/conf.d/20-exif.ini,
/etc/php/5.6/apache2/conf.d/20-fileinfo.ini,
/etc/php/5.6/apache2/conf.d/20-ftp.ini, /etc/php/5.6/apache2/conf.d/20-gd.ini,
/etc/php/5.6/apache2/conf.d/20-gettext.ini,
/etc/php/5.6/apache2/conf.d/20-iconv.ini,
/etc/php/5.6/apache2/conf.d/20-json.ini,
/etc/php/5.6/apache2/conf.d/20-mbstring.ini,
/etc/php/5.6/apache2/conf.d/20-mcrypt.ini,
/etc/php/5.6/apache2/conf.d/20-mysql.ini,
/etc/php/5.6/apache2/conf.d/20-mysqli.ini,
/etc/php/5.6/apache2/conf.d/20-pdo_mysql.ini,
/etc/php/5.6/apache2/conf.d/20-phar.ini,
/etc/php/5.6/apache2/conf.d/20-posix.ini,
/etc/php/5.6/apache2/conf.d/20-readline.ini,
/etc/php/5.6/apache2/conf.d/20-shmop.ini,
/etc/php/5.6/apache2/conf.d/20-simplexml.ini,
/etc/php/5.6/apache2/conf.d/20-sockets.ini,
/etc/php/5.6/apache2/conf.d/20-sysvmsg.ini,
/etc/php/5.6/apache2/conf.d/20-sysvsem.ini,
/etc/php/5.6/apache2/conf.d/20-sysvshm.ini,
/etc/php/5.6/apache2/conf.d/20-tokenizer.ini,
/etc/php/5.6/apache2/conf.d/20-wddx.ini,
/etc/php/5.6/apache2/conf.d/20-xmlreader.ini,
/etc/php/5.6/apache2/conf.d/20-xmlwriter.ini,
/etc/php/5.6/apache2/conf.d/20-xsl.ini,
/etc/php/5.6/apache2/conf.d/20-zip.ini
Hva kan problemet være, og hvordan kan jeg løse det? (Jeg har ikke tilgang til root bash).
Hvis du kan, kjør:
composer update
composer require doctrine/dbal
Det ser ut til at du mangler en avhengighet.
Rediger:
Du må kanskje kommentere ut følgende i php.ini-filen.
;extension=pdo_mysql.so
Hentet fra dette innlegget: https://stackoverflow.com/questions/35240414/laravel-5-pdoexception-could-not-find-driver . Jeg tror jeg måtte gjøre noe nøyaktig som dette da jeg satte opp laravel på digital ocean.
Databasedriveren mangler. Slik løser du problemet
Installer først driveren
For ubuntu: For mysql-databasen.
sudo apt-get install php5.6-mysql/php7.2-mysql
Du kan også søke etter andre databasesystemer.
Du kan også søke etter driveren:
sudo apt-cache search drivername
Kjør deretter cmd php artisan migrate
.