MySQL 5.7 смена пароля

758
03 февраля 2017, 04:54

Не могу сменить пароль, mysql 5.7

sudo mysqld_safe --skip-grant-tables
mysql
mysql> use mysql;
mysql> UPDATE user SET authentication_string=PASSWORD('123456') WHERE User='root';
mysql> FLUSH PRIVILEGES;
mysql> \q
sudo service mysql start

Однако никакого эффекта, при попытке соединиться:

Access denied for user 'root'@'localhost'
Answer 1

В MySQL версии 5.7 некоторые способы смены пароля были объявилены устаревшими и перестали работать. Хорошим тоном, по-видимому, стало использовать такой синтаксис:

SET PASSWORD FOR 'username'@'localhost' = password_option;

В опции password_option можно передавать пароль как в виде строки, так и обёрнутым в конкретную функцию хэширования, причём поведение хэширующих функций меняется в зависимости от минорной версии 5.7.x.

Подробнее в документации: https://dev.mysql.com/doc/refman/5.7/en/set-password.html

Также можно вместо UPDATE USER использовать ALTER USER:

ALTER USER 'username' IDENTIFIED BY 'secret_password';
READ ALSO
Беда с кавычками при запросе по средствам Delphi из БД mySQL

Беда с кавычками при запросе по средствам Delphi из БД mySQL

Вычитал на одном форуме, что избегания попадания кавычек из БД, лишь прибегать к функции StringReplace и иного пути, какого-нибудь хитрого экранирования,...

452
Хэширование алгоритмом CRC

Хэширование алгоритмом CRC

Объясните как работает этот алгоритм ибо хорошей, понятной информации по этому алгоритму я не нашелВсе описывают в математических формулах,...

439
как нарисовать SVG Elliptical Arcs

как нарисовать SVG Elliptical Arcs

Пытаюсь понять как преобразовать данные для прорисовки эллипса из svg к виду для прорисовки в addArc(float left, float top, float right, float bottom, float startAngle, float sweepAngle)Все...

370
Ошибка при создании массива generics

Ошибка при создании массива generics

Предположим, есть такой код:

413