Форум русскоязычного сообщества Ubuntu


Автор Тема: MySQL ERROR #1045  (Прочитано 655 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн rojroyy2

  • Автор темы
  • Новичок
  • *
  • Сообщений: 12
    • Просмотр профиля
MySQL ERROR #1045
« : 10 Август 2020, 15:22:01 »
Не могу зайти в mysql под root, выдаёт ошибку 1045, пробовал исправить по этой инструкции:
1. Остановить mysql:
sudo service mysql stop

2. Запустить сервис со следующими параметрами:
sudo mysqld --skip-grant-tables --user=root

Если выдал ошибку то в файле /etc/mysql/mysql.conf.d/mysqld.cnf в секцию [mysqld] добавить строчкуskip-grant-tables и выполнить sudo service mysql restart

3. После этого подключиться к mysql командой:
mysql -u root

4. Обновить пароль root'a:
UPDATE mysql.user SET authentication_string=PASSWORD('<новый пароль>'), plugin='mysql_native_password' WHERE User='root' AND Host='localhost';   
FLUSH PRIVILEGES;

Но на четвёртом шаге выдаёт синтаксическую ошибку.
Установлен mysql v8.0.21
Переустановка не помогает.

Оффлайн es1840

  • Активист
  • *
  • Сообщений: 326
    • Просмотр профиля
Re: MySQL ERROR #1045
« Ответ #1 : 10 Август 2020, 16:01:08 »
А вы попробуйте зайти от рута через рут
не
$ mysql -uroot
a
# mysql -uroot
т.е.
oleh@oleh-MSI-Desk ~ % mysql -uroot     
ERROR 1698 (28000): Access denied for user 'root'@'localhost'
oleh@oleh-MSI-Desk ~ % sudo mysql -uroot
[sudo] password for oleh:

Оффлайн rojroyy2

  • Автор темы
  • Новичок
  • *
  • Сообщений: 12
    • Просмотр профиля
Re: MySQL ERROR #1045
« Ответ #2 : 11 Август 2020, 00:02:54 »
А вы попробуйте зайти от рута через рут
не
$ mysql -uroot
a
# mysql -uroot
т.е.
oleh@oleh-MSI-Desk ~ % mysql -uroot     
ERROR 1698 (28000): Access denied for user 'root'@'localhost'
oleh@oleh-MSI-Desk ~ % sudo mysql -uroot
[sudo] password for oleh:

Так а толку, если ему не нравится что я пытаюсь обновить пароль через update, синтаксическая ошибка почему то.
через sudo mysql_secure_installation, устанавливал пароль, только всё равно не помогло!

Оффлайн es1840

  • Активист
  • *
  • Сообщений: 326
    • Просмотр профиля
Re: MySQL ERROR #1045
« Ответ #3 : 11 Август 2020, 00:30:46 »
На что вы пытаетесь обновить пароль? Авторизация пользователей происходит через auth_socket.
Т.е. вы можете просто в терминале войти
$ mysqlЕсли хотите создать другого админа - создайте.
Например dbadmin

CREATE USER 'dbadmin'@'localhost' IDENTIFIED BY 'password';
или
CREATE USER 'dbadmin'@'%' IDENTIFIED BY 'password';

Для ясности
MariaDB [(none)]> show grants\G
*************************** 1. row ***************************
Grants for root@localhost: GRANT ALL PRIVILEGES ON *.* TO 'root'@'localhost' IDENTIFIED VIA mysql_native_password USING 'invalid' OR unix_socket WITH GRANT OPTION
*************************** 2. row ***************************
Grants for root@localhost: GRANT PROXY ON ''@'%' TO 'root'@'localhost' WITH GRANT OPTION
2 rows in set (0.000 sec)
« Последнее редактирование: 11 Август 2020, 00:35:50 от es1840 »

 

Страница сгенерирована за 0.064 секунд. Запросов: 25.