Saya sedang mengembangkan website di server yang hanya memiliki akses ke MySQL dan FTP, jadi semua perintah yang saya jalankan melalui php shell b374k. Saya mengalami masalah Laravel dengan driver SQL. Saya mencoba beralih ke file-hosted SQLite (di database/database.sqlite), tetapi pengecualian yang muncul sama seperti ketika menggunakan MySQL. Masukan &; keluaran konsol adalah sebagai berikut:
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
Ekstensi Apache yang terinstal di server adalah:
/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
Apa masalahnya dan bagaimana saya bisa memperbaikinya? (Saya tidak memiliki akses ke root bash)
Jika Anda bisa, jalankan:
composer update
composer require doctrine/dbal
Sepertinya Anda memiliki ketergantungan yang hilang
Edit:
Anda mungkin perlu mengomentari yang berikut ini di file php.ini Anda.
;extension=pdo_mysql.so
Diambil dari postingan ini: https://stackoverflow.com/questions/35240414/laravel-5-pdoexception-could-not-find-driver . Saya pikir saya harus melakukan sesuatu persis seperti ini ketika menyiapkan laravel di digital ocean.
Driver database Anda hilang. Untuk mengatasi masalah ini
Pertama-tama, instal driver
Untuk ubuntu: Untuk database mysql.
sudo apt-get install php5.6-mysql/php7.2-mysql
Anda juga dapat mencari sistem basis data lainnya.
Anda juga dapat mencari driver:
sudo apt-cache search drivername
Kemudian jalankan cmd php artisan migrate
Akhirnya saya memperbaiki ini. Ada kesalahan ketik dalam konfigurasi server dan semua path ke php extecutable baik-baik saja kecuali path ke php-cli, yang menyebabkan error. Ketika saya memperbaiki path tersebut, semuanya bekerja dengan baik.