Ada dua kondisi error Could not find driver (Connection: mysql) yang terjadi saat pengembangan projek menggunakan Laravel. Pertama error ini terjadi di local (komputer kita) saat pengembangan kode program dilakukan. Kedua saat kode program laravel kita dijalankan di server (hosting). Oleh karena itu, artikel ini akan menjelaskan dalam 2 hal tersebut.
Kondisi 2: Terjadi di Local (komputer)
Saat ingin menjalankan php artisan migrate, muncul error could not find driver Connection Mysql seperti ini:
neon@neon:~/Documents/Kerja/pltu_biomassa$ php artisan migrate
Illuminate\Database\QueryException
could not find driver (Connection: mysql, SQL: select * from information_schema.tables where table_schema = pltu_biomassa and table_name = migrations and table_type = ‘BASE TABLE’)
at vendor/laravel/framework/src/Illuminate/Database/Connection.php:801
797▕ $this->getName(), $query, $this->prepareBindings($bindings), $e
798▕ );
799▕ }
800▕
➜ 801▕ throw new QueryException(
802▕ $this->getName(), $query, $this->prepareBindings($bindings), $e
803▕ );
804▕ }
805▕ }
+35 vendor frames
36 artisan:35
Illuminate\Foundation\Console\Kernel::handle()
Solusinya untuk memperbaiki permasalahan ini, cukup instalasi paket mysql. Untuk itu, gunakan perintah berikut:
sudo apt install php-mysql
Kondisi 2: Terjadi di Hosting (cPanel)
Kita dapat memperbaiki ini dengan masuk ke cPanel. Sekarang silahkan masuk ke cPanel, lalu cari MultiPHP Manager seperti yang ditunjukkan pada gambar dibawah ini:
Di cPanel, biasanya menyediakan 2 jenis bundel PHP. Salah satunya adalah cPanel yang menyediakan Easy Apache PHP dan yang lainnya adalah CloudLinux yang menyediakan PHP Alternatif. Easy Apache yang disediakan PHP diberi nama ea-php dan CloudLinux diberi nama alt-php.
Perhatikan gambar berikut ini. Pilih website yang ingin diubah versi PHPnya (1), lalu cari versi php dengan alt-php (2). Lalu klik Apply (3).
Sekarang, silahkan reload kembali website anda dan cek apakah error could not find driver Connection: mysql masih ada apa tidak. Seharusnya tidak ada error lagi.