Mariadb не-пользователь root

Я установил mariadb и, когда я являюсь пользователем root, я могу запустить команду mysql для доступа к базе данных. Но когда я пытаюсь войти в систему как обычный пользователь Linux и запустить mysql -u root -pЯ получаю сообщение об ошибке:

ERROR 1698 (28000): Access denied for user 'root'@'localhost'. 

Я пробовал несколько способов, таких как сброс пароля для пользователя root mysql, но безрезультатно.

Любая помощь будет отличной.

1 ответ

У меня была такая же проблема, она была вызвана значением "plugin" в таблице "mysql.user".

Вы пробовали с этим ответом: /questions/273055/oshibka-1045-28000-dostup-zapreschen-dlya-polzovatelya-rootlocalhost-ispolzuetsy/273065#273065

Вот объяснение этому: https://superuser.com/a/1071043/592085

В MariaDB вы не можете войти с обычным пользователем, вы должны получить root-доступ или использовать sudo, Еще одно решение - добавить еще одного пользователя root с полными привилегиями.

Соединиться с sudo в db:

sudo mysql -u root

Проверьте свой аккаунт в настоящей базе данных:

mysql> SELECT User,Host FROM mysql.user;
+------------------+-----------+
| User             | Host      |
+------------------+-----------+
| root             | localhost |

Воссоздать пользователя root (используйте пароль, если вам нужно):

mysql> CREATE USER 'root'@'%' IDENTIFIED BY '';

Давать разрешение:

mysql> GRANT ALL PRIVILEGES ON *.* TO 'root'@'%';

Румянец:

mysql> FLUSH PRIVILEGES;

Показать базу данных использует:

SELECT User,Host FROM mysql.user;
+------+-----------+
| User | Host      |
+------+-----------+
| root | %         |
| root | localhost |
+------+-----------+

Выйдите и соединитесь с обычным пользователем:

mysql -u root
Другие вопросы по тегам