Trong mã của bạn, hãy thử đặt mật khẩu bên trong một dấu ngoặc kép. Ngoài ra, theo tài liệu của mysql, sau đây sẽ hoạt động -
SET PASSWORD FOR 'jeffrey'@'localhost' = PASSWORD('cleartext password');
FLUSH PRIVILEGES;
Dòng cuối cùng là quan trọng, nếu không, rất tiếc, việc thay đổi mật khẩu của bạn sẽ không có hiệu lực.
CHỈNH SỬA:
Tôi đã chạy một bài kiểm tra tại địa phương của mình và nó hoạt động -
mysql> set password for 'test' = PASSWORD('$w0rdf1sh');
Query OK, 0 rows affected (0.00 sec)
Của tôi là phiên bản 5. Bạn có thể sử dụng lệnh sau để xác định phiên bản của mình -
SHOW VARIABLES LIKE "%version%";