Я установил пароль root, но не могу аутентифицироваться с ним. Как я могу сбросить этот пароль?
~ mysql --version: mysql Ver 8.0.13 for osx10.14 on x86_64 (Homebrew)
Я использовал эти инструкции stackoverflow , чтобы установить пароль пользователя root, и запросил таблицу пользователей для проверки пароля.
Затем я попытался mysql -u root -p
и mysql -u root
и получил ошибки аутентификации.
Команда: mysql -u root -p
Ошибка аутентификации: ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: YES)
. Я уверен, что я использую правильный пароль.
Команда: mysql -u root
Ошибка аутентификации: Error: ERROR 1045 (28000): Access denied for user 'root'@'localhost' (using password: NO)
.
Это привело меня к этому этому вопросу о стекопереработке и попыталось найти решение @ Lahiru, но получило No such file or directory
.
Я нашел документацию Mysql и выполнил следующее: (как указано в B.6.3.2.3 Сброс пароля root: общие инструкции )
mysql.server start --skip-grant-tables
Mysql -u root
FLUSH PRIVILEGES
ALTER USER 'root'@'localhost' IDENTIFIED BY 'MyNewPass';
Тогда я получил ошибку:
ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement
Наконец, используя документацию Mysql 8.0: 13.7.1.10 Синтаксис SET PASSWORD Я попытался:
mysql.server start --skip-grant-tables
SET PASSWORD FOR 'root'@'localhost' = '1111';
и получите ошибку: ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement
Я не могу попытаться сделать это, когда сервер работает в безопасном режиме, потому что он не принимает пароль, который я установил.
Заранее спасибо за любую помощь.