Bodhon: Sampai Saya Yang Terbodoh itu Tahu.. Silakan Copy Paste (by bimosaurus)


Mereset Password Mysql
Desember 15, 2008, 8:40 am
Diarsipkan di bawah: 1

MERESET PASSWORD MYSQL (Seperti yang saya tuliskan di GECC-ugm.com)

Anda punya masalah dengan LUPA password Root MySQL? Berikut caranya:

Pada intinya, seluruh login dan properti mysql telah terdapat pada MYSQL itu sendiri.
Untuk user password root mysql juga telah terdapat pada suatu database yaitu database mysql. Hanya saja, database MYSQL hanya dapat dibuka oleh root saja. Sedangkan jika kita kehilangan password root, maka kita tidak dapat masuk ke database MySQL.
Untuk mengganti MySQL root password, maka kita akan masuk ke Database MySQL, dan mengubah password root dari sana.

Lantas? Bagaimana cara masuk ke MySQL?

Kuncinya adalah: Masuk ke MySQL pada mode –skip-grant-tables

- matikan mysql terlebih dahulu

Code:
killall mysqld

atau kalau windows, matikan dari konsole panel mysql (xampp, wamp, appserv dll)

- masuklah ke direktori bin mysql yaitu direktori yang memuat command mysql

contoh:

Code:
cd /usr/sbin/

atau di windows dapat amsuk lebih dulu ke CMD:

contoh:

Code:
cd \
cd xampp\mysql\bin\

jalankanlah perintah ini:

Untuk Linux:

Code:
mysqld_safe –skip-grant-tables &

atau jika tidak ketemu

Code:
safe_mysqld –skip-grant-tables &

Untuk windows:

Code:
mysqld_safe –skip-grant-tables

Proses menjalankan mysql dengan safe mode telah berjalan

Selanjutnya masuklah ke mysql:

Code:
mysql -u root

Enter:

SIM SALABIM.. masuk

dan masuk ke database mysql:

Code:
use mysql

Tampilan menjadi seperti berikut

Code:
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

dan selanjutnya lakukanlah pengubahan password…

Code:
select user, password, host from user;

Tampilan menjadi seperti berikut:

Code:
mysql> select user, password, host from user;
+—————+——————————————-+———–+
| user          | password                                  | host      |
+—————+——————————————-+———–+
| root          | *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B | localhost |
| root          | *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B | 192       |
|               | *A04C187CFFE689E1D4ACF3935D234263765BBB16 | 192       |
|               | *A04C187CFFE689E1D4ACF3935D234263765BBB16 | localhost |
| joomla        | *998522DC8932663DD0AFE4C32520FB17462CD8AD | localhost |
| wordpress     | *C260A4F79FA905AF65142FFE0B9A14FE0E1519CC | localhost |
| aplikasi_lat1 | *2470C0C06DEE42FD1618BB99005ADCA2EC9D1E19 | localhost |
+—————+——————————————-+———–+

Pada kolom password, anda dapat melihat bahwa password tetap tidak dapat dibaca. Hal tersebut karena enkripsi password satu arah dari MySQL. Kita hanya perlu mengetahui tipe ENKRIPSI. Untuk MySQL biasanya adalah tipe enkripsi password ataupun old_password

kemudian testlah tipe tipe enkripsi dengan seperti ini:

Code:
select password('admin');

hasilnya adalah:

Code:
mysql> select password('admin');
+——————————————-+
| password('admin')                         |
+——————————————-+
| *4ACFE3202A5FF5CF467898FC58AAB1D615029441 |
+——————————————-+
1 row in set (0.04 sec)

Dan

Code:
select old_password('password');

hasilnya adalah

Code:
mysql> select old_password('admin');
+———————–+
| old_password('admin') |
+———————–+
| 43e9a4ab75570f5b      |
+———————–+
1 row in set (0.00 sec)

Dengan demikian kita dapat mengetahui bahwa tipe enkkripsinya adalah password.

Nah selanjutnya….

Code:
update user set password=password('root') where user='root' and host='localhost';

hasilnya adalah:

Code:
mysql> update user set password=password('root') where user='root' and host='localhost';
Query OK, 0 rows affected (0.19 sec)
Rows matched: 1  Changed: 0  Warnings: 0

Jangan lupa menambahkan:

Code:
flush privileges;

Hasilnya adalah:

Code:
mysql> flush privileges;
Query OK, 0 rows affected (0.05 sec)

Untuk password sesuaikan dengan kebutuhan dan syaratnya.. ingat bahwa mysql adalah multiple password. 1 User dapat memiliki lebih dari 1 password.

matikan mysql anda, dan hidupkan seperti biasa, tanpa mode –skip-grant-tables..

SIM SALABIM, masuk!!

Mode –skip-grant-tables hanya boleh dipakai untuk keadaan seperti itu.. dan juga repair database. Untuk keadaan lainnya, not recomended.. Karena –skip-grant-tables memungkinkan seluruh sisi dapat membuka mysql dengan login root tanpa password.


No Comments Yet sejauh ini
Tinggalkan komentar



Tinggalkan komentar
Baris dan paragraf terpisah secara otomatis, alamat email tidak akan ditampilkan, kode HTML diperbolehkan: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <pre> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>