Memulihkan password root MySQL

Jadi ada hal yang konyol terjadi saat saya ingin mengecek database yang ada di salah satu server saya. Ternyata saya lupa apa password root untuk database server MySQL. 🙁 Mungkin karena terburu – buru saat instalasi web hostingnya supaya tidak lama down akhirnya malah terlewat untuk mencatatnya.

Ya… ngeblank saat mengetikkan perintah login ke MySQL dan mengisikan kata sandi untuk root:
mysql -u root -p

Ternyata berbeda dengan skema password yang biasa saya gunakan, malah muncul pesan kesalahan:
ERROR 1045 (28000): Access denied for user ‘root’@’localhost’ (using password: YES)
Suram. 🙁

Walaupun bukan hal yang urgent dan saya masih bisa mengakses database WordPress lewat user lain bukan root tapi ya tidak enak juga rasanya kalau semua tidak ada dalam kendali. Maka dari itu saya putuskan agar direset saja password rootnya. Saya anjurkan sebelum mulai mengikuti tutorial berikut agar anda membackup dulu database yang ada, kalau bisa.

Sudah siap? Pertama kita harus menghentikan dulu proses daemon MySQL

  • Debian/Ubuntu/Mint
    /etc/init.d/mysql stop
  • RHEL/CentOS/Fedora
    /etc/init.d/mysqld stop

Selanjutnya kita jalankan MySQL lagi tapi tanpa pengecekan hak akses:
mysqld_safe –skip-grant-tables &
Simbol tanda tanya di akhir (&) itu wajib diikutkan.

Kemudian mari kita login menggunakan root tanpa password:
mysql -u root -p

Kita akan mengakses dan memakai database untuk server MySQL itu sendiri:
USE mysql;

Mari kita update user root dengan kata sandi barunya:
UPDATE user SET password=PASSWORD(“katasandibaru”) WHERE user=’root’;
Tentu saja gantikan contoh password katasandibaru ke yang anda inginkan, saya anjurkan dibuat yang rumit dan panjang. Jangan lupa dicatat juga. Haha. 😀

Kita muat ulang tabel hak akses database servernya:
FLUSH PRIVILEGES;

Selesai, pada tahap ini password root MySQL sudah berhasil diganti. Silahkan keluar dari mode MySQL setelahnya.

Akhirnya stop kembali proses MySQL yang sudah berjalan dan restart menggunakan mode standarnya. Oh ya, solusi yang saya tuliskan juga berlaku untuk MariaDB dan Percona karena masih sama – sama satu keluarga database server.

Semoga membantu. 🙂

Satu pemikiran pada “Memulihkan password root MySQL”

Tulis komentar...