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