- Usuń lub skomentuj stare_hasło =1 w my.cnf
Uruchom ponownie MySQL. Jeśli tego nie zrobisz, MySQL będzie nadal używał starego formatu haseł, co oznacza, że nie możesz zaktualizować haseł za pomocą wbudowanej funkcji mieszającej PASSWORD().
Stare skróty hasła mają 16 znaków, nowe 41 znaków.
-
Połącz się z bazą danych i uruchom następujące zapytanie:
SELECT user, Length(`Password`) FROM `mysql`.`user`;
To pokaże Ci, które hasła są w starym formacie, np.:
+----------+--------------------+ | user | Length(`Password`) | +----------+--------------------+ | root | 41 | | root | 16 | | user2 | 16 | | user2 | 16 | +----------+--------------------+
Zwróć uwagę, że każdy użytkownik może mieć wiele wierszy (po jednym dla każdej innej specyfikacji hosta).
Aby zaktualizować hasło dla każdego użytkownika, wykonaj następujące czynności:
UPDATE mysql.user SET Password = PASSWORD('password') WHERE user = 'username';
Wreszcie, opróżnij uprawnienia:
FLUSH PRIVILEGES;