Aug 23
เราสามารถสั่งให้ MySQL สามารถใช้ OLD_PASSWORD() เพื่อกำหนดให้ MySQL ใช้รูปแบบการจัดเก็บ password แบบเดิมได้ เช่น
mysql> SET PASSWORD FOR 'some_user'@'some_host' = OLD_PASSWORD('newpwd');
หากมี user อยู่แล้ว
mysql> UPDATE mysql.user SET Password = OLD_PASSWORD('newpwd') WHERE Host = 'some_host' AND User = 'some_user';
mysql> FLUSH PRIVILEGES;
Share This
written by Mr-San
\\ tags: mysql
Aug 23
เอาวิธีแรก ที่ใช้กันง่ายๆก่อนนะ
- รันด้วย
/usr/sbin/mysqld --skip-grant-tables --user=root &
- ต่อจากนั้นก็เข้า
mysql -u root -p
- เปลี่ยน password ด้วย
UPDATE user SET password=password('secret') WHERE user='root';
- restart mysql กลับไปใช้แบบเดิม ก็เป็นอันเสร็จสิ้น
ส่วนวิธีที่สองไปอ่านเจอที่อื่น
- เพิ่ม “skip-grant-tables” ลงใน my.cnf โดยเพิ่มในส่วนของ [mysqld] สำคัญมากห้ามลืม อย่าใส่ผิดที่ ไม่อย่างนั้นจะไม่สามารถ reset password ได้
- restart mysql ก่อน เพื่อจะได้มีผล
- จากนั้นก็ใช้ login แล้วก็ เปลี่ยน password ด้วยคำสั่งข้างต้น
- พอแก้เรียบร้อยแล้วก็ comment บรรทัด skip-grant-tables แล้วก็ restart ก็เป็นอันเสร็จสิ้น
Share This
written by Mr-San
\\ tags: mysql