Mengembalikan (restore) password user MySQL

Suatu hari ketika Mini sedang coding sebuah aplikasi Java sederhana yang membutuhkan koneksi dengan MySQL, ternyata Mini menemukan bahwa password user-nya salah. Ketika Mini menggunakan PhpMyAdmin dengan user root dan password yang biasa digunakannya, ternyata tidak berhasil. PhpMyAdmin menampilkan pesan berwarna merah yang terkesan mengerikan.

Ahirnay Mini membuka sebuah konsol kemudian mematikan server MySQL

$ sudo /etc/init.d/mysql stop

Konsol memintanya memasukkan password dan Mini menjawab dengan sempurna. Berikutnya Mini menjalankan MySQL server tanpa permintaan previleges/otentikasi dengan peritah:

$ sudo /usr/sbin/mysqld --skip-grant-table

Konsol menunjukkan:

80125 9:48:30 InnoDB: Started; log sequence number 0 43655
080125 9:48:30 [Note] /usr/sbin/mysqld: ready for connections.
Version: '5.0.45-Debian_1ubuntu3-log' socket: '/var/run/mysqld/mysqld.sock' port: 3306 Debian etch distribution

Berikutnya, Mini membuka tab konsol kedua dengan Ctrl + Shift + T dan menyalakan mysql-client dengan perintah:

$ mysql
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 1
Server version: 5.0.45-Debian_1ubuntu3-log Debian etch distribution

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

Dari konsol MySQL, Mini menggunakan tabel mysql (tabel tersebut menyimpan berbagai informasi tentang database MySQL).

mysql> use mysql
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A

Database changed

Berikutnya, Mini mengubah password nya untuk User ‘root’ dengan password barunya ‘Rahasia’.

mysql> update user set Password=password('Rahasia') where ((User like 'root') and (Host like 'localhost'));
Query OK, 0 rows affected (0.05 sec)
Rows matched: 1 Changed: 0 Warnings: 0

Previleges tersebut segera dijalankan dengan perintah:

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)

Jika ini telah didapat, Mini sudah selesai dengan masalahnya dan bisa keluar dari konsol MySQL

mysql> exit
Bye

Mini me-restart MySQL servernya.

$ sudo /etc/init.d/mysql restart
[sudo] password for mini:
* Stopping MySQL database server mysqld [ OK ]
* Starting MySQL database server mysqld [ OK ]
* Checking for corrupt, not cleanly closed and upgrade needing tables.

Dan benar, setelah ini semua dilakukan, Mini bisa bekerja kembali dengan lancar. Dibukanya PhpMyAdmin kemudian login dengan user ‘root’ dan password ‘Rahasia’. Berhasil.

2 komentar:

Anonim mengatakan...

Terima kasih atas tutorialnya, sangat sangat berterima kasih... dan saya minta ijijn untuk memposting tutor tersebut ke blogg saya. Ya bagi-bagi ilmu dong..????

For You mengatakan...

wah tutorialnya menarik sekali, terima kasih karena telah membaginya, oh saya minta ijin untuk posting di web saya, ini alamatnya http://the-exploration.net/index.php/mengembalikan-restore-password-user-mysql-di-linux/