Lupa kata sandi root MySQL Anda? Jangan khawatir, semua orang bisa lupa, dan juga MySQL adalah pengaturan yang bisa jadi jarang kita lihat. Kecuali jika database error atau ingin memanipulasi data di database.

Tutorial ini bergantung pada versi server MySQL atau MariaDB yang Anda jalankan di sistem, Anda akan menggunakan perintah yang berbeda untuk memulihkan kata sandi root. Jadi jika Anda memiliki MySQL terinstall di sistem, maka hanya gunakan perintah untuk MySQL.

Dalam tutorial ini kami akan menunjukkan kepada Anda bagaimana cara mereset kata sandi root MySQL jika Anda lupa. Panduan ini juga bekerja dengan distribusi Linux modern seperti Ubuntu 18.04 dan CentOS 7.

Prasyarat

Sebelum melanjutkan dengan langkah-langkah di bawah ini, pastikan Anda masuk ke MySQL server sebagai pengguna dengan hak istimewa sudo.

Identifikasi Versi Server

Bergantung pada versi server MySQL atau MariaDB yang Anda jalankan di sistem, Anda harus menggunakan perintah yang berbeda untuk memulihkan kata sandi root.

Anda dapat menemukan versi server Anda dengan mengetik perintah berikut:

mysql --version

Jika Anda menginstal MySQL di sistem Anda, hasilnya akan terlihat seperti ini:

mysql  Ver 14.14 Distrib 5.7.22, for Linux (x86_64) using  EditLine wrapper

Atau output seperti ini untuk MariaDB:

mysql  Ver 15.1 Distrib 10.1.33-MariaDB, for debian-linux-gnu (x86_64) using readline 5.

Pastikan untuk mencatat versi MySQL atau MariaDB mana yang Anda jalankan.

Cara Reset Password Root MySQL atau MariaDB

Ikuti langkah-langkah ini untuk mengatur ulang kata sandi root MySQL / MariaDB Anda:

1. Stop MySQL/MariaDB service

Untuk mengubah kata sandi root, pertama-tama kita harus menghentikan server MySQL. Untuk melakukannya ketik perintah berikut:

sudo systemctl stop mysql

2. Mulai MySQL/MariaDB server Tanpa Memuat grant tables

Ketika opsi --skip-grant-tables diaktifkan, siapa pun dapat terhubung ke server database tanpa kata sandi dan dengan semua hak istimewa.

Untuk memulai server database tanpa memuat grant tables ketik:

sudo mysqld_safe --skip-grant-tables &

Simbol & di akhir perintah di atas akan menyebabkan program berjalan di latar belakang, sehingga kita dapat terus menggunakan shell.

3. Login ke MySQL shell

Sekarang Anda dapat terhubung ke server database sebagai pengguna root, tanpa dimintai kata sandi oleh MySQL server:

mysql -u root

4. Atur Password Root Baru

  • Jalankan perintah berikut jika Anda memiliki MySQL 5.7.6 dan yang lebih baru atau MariaDB 10.1.20 dan yang lebih baru:
    ALTER USER 'root'@'localhost' IDENTIFIED BY 'passwordbaruanda'; FLUSH PRIVILEGES;

    Jika pernyataan ALTER USER tidak berfungsi, coba ubah tabel pengguna secara langsung:

    UPDATE mysql.user SET authentication_string = PASSWORD('passwordbaruanda') WHERE User = 'root' AND Host = 'localhost'; FLUSH PRIVILEGES;

    Jalankan perintah berikut jika Anda memiliki MySQL 5.7.5 dan sebelumnya atau MariaDB 10.1.20 dan sebelumnya:

    SET PASSWORD FOR 'root'@'localhost' = PASSWORD('passwordbaruanda'); FLUSH PRIVILEGES;

Jika semuanya berjalan dengan baik, Anda akan melihat output berikut:

Query OK, 0 rows affected (0.00 sec)

5. Stop dan Start Database Server Secara Normal

Sekarang setelah kata sandi root diatur, kita harus menghentikan server database dan memulainya secara normal.

Hentikan server database menggunakan perintah berikut:

mysqladmin -u root -p shutdown

Anda akan diminta memasukkan kata sandi root baru:

Mulai server database secara normal:

  • Untuk MySQL, ketik:
    sudo systemctl start mysql
  • Untuk MariaDB, ketik :
    sudo systemctl start mariadb

6. Verifikasi Password

Untuk memverifikasi bahwa kata sandi root baru telah diterapkan dengan benar ketik:

mysql -u root -p

Anda akan diminta memasukkan kata sandi root baru. Anda sudah dapat masuk ke server database Anda.

Kesimpulan

Dalam tutorial ini, Anda belajar cara mengatur ulang kata sandi root MySQL atau MariaDB. Pastikan kata sandi root baru Anda kuat dan aman, serta simpan di tempat yang aman.

Lihat juga panduan lain tentang mengolah dan mengatur database :