DEV Community

Dhimas Kirana
Dhimas Kirana

Posted on

Solusi MySQL 8.0 Error Cannot Start

Haloo teman-teman, di postingan kali ini aku mau share tutorial mengatasi MySQL 8.0 yang tidak bisa di start ketika teman-teman upgrade ke MySQL 8.0

Error yang terjadi

Nah error ini terjadi ketika aku melakukan proses upgrade dari MySQL 5.1.72 ke MySQL 8.0.32 di aplikasi Laragon.

Error yang terjadi seperti ini, ketika aku Start All di aplikasi Laragon.

Error MySQL Laragon

MySQL 8.0 Error di Laragon

Kemudian aku mengecek di file log yang berlokasi di C:\Laragon\data\mysql-8\mysqld.log

Di situ aku temukan error seperti berikut

mysqld: Table 'mysql.plugin' doesn't exist
2023-02-16T23:34:54.041942Z 0 [ERROR] [MY-010735] [Server] Could not open the mysql.plugin table. Please perform the MySQL upgrade procedure.
Enter fullscreen mode Exit fullscreen mode

Selain itu aku juga menemukan error seperti ini

2023-02-16T23:34:54.460889Z 0 [ERROR] [MY-010326] [Server] Fatal error: Can't open and lock privilege tables: Table 'mysql.user' doesn't exist
2023-02-16T23:34:54.462984Z 0 [ERROR] [MY-010952] [Server] The privilege system failed to initialize correctly. For complete instructions on how to upgrade MySQL to a new version please see the 'Upgrading MySQL' section from the MySQL manual.
Enter fullscreen mode Exit fullscreen mode

Dari error tersebut sudah jelas terlihat bahwa proses upgrade yang aku lakukan salah. Kesalahannya adalah aku tidak menginisiasi terlebih dahulu MySQL 8.0 ini, sehingga menyebab MySQL 8.0 tidak menemukan table yang dibutuhkan.

Solusi: Initialize MySQL

Oke jadi solusi yang akan kita lakukan adalah menginisiasi terlebih dahulu MySQL 8.0 ini sebelum kita start server MySQL nya.

Buka command prompt di Windows, kemudian jalankan perintah berikut ini

mysqld --initialize-insecure
Enter fullscreen mode Exit fullscreen mode

Sebenarnya ada 2 opsi, yang pertama menggunakan –initialize yang kedua –initialize-insecure. Perbedaannya hanya di masalah password untuk root account. Kalau opsi yang pertama akan digenerate random password sementara. Kalau opsi yang kedua, root account tidak memiliki password, tapi nanti bisa kita set password untuk root.

Oke selesai proses untuk inisiasi MySQL 8.0, seharusnya sampai sini MySQL 8.0 sudah bisa di start atau servernya dijalankan tanpa ada error lagi.

Ubah Password Root

Karena kita tadi menggunakan opsi kedua, artinya root account tidak memiliki password, sehingga dengan mudah bisa diakses tanpa menggunakan password. Kalau di lokal komputer masih okelah yaa, karena keperluan web development lebih cepat juga.

Tetapi jika teman-teman ingin menambahkan password untuk root account sangat mudah caranya.

Pertama jalankan perintah berikut ini untuk masuk ke MySQL command line.

mysql -u root
Enter fullscreen mode Exit fullscreen mode

Setelah masuk, jalankan perintah berikut ini. Jangan lupa titik koma paling belakang.

ALTER USER 'root'@'localhost' IDENTIFIED BY 'password_baru_untuk_root';
Enter fullscreen mode Exit fullscreen mode

Ubah password_baru_untuk_root dengan password yang kamu inginkan. Kemudian enter.

Sekarang jalankan perintah exit untuk keluar dari MySQL command line. Kemudian jalankan perintah berikut ini. Kemudian masukan password baru yang sudah kamu buat tadi.

mysql -u root -p
Enter fullscreen mode Exit fullscreen mode

Selamat mencoba 🙂

Top comments (0)