我刚刚在ubuntu18.04上安装了mariadb 10.1.29。在命令行中,我可以使用sudo进行连接:
sudo mysql -u root -p
但没有sudo不行。另外,如果我尝试通过dbeaver连接到数据库,我会得到:
Could not connect: Access denied for user 'root'@'localhost'
而凭证是正确的。我试着安装mysql 5.7,但是我也遇到了同样的问题。我错过了什么?
j9per5c41#
事实证明,这是mariadb和mysql的预期行为。为了解决这个问题,建议创建一个单独的用户并授予对所创建的所有数据库的访问权。下面是一个逐步指南,介绍如何使用命令行创建数据库并向您选择的用户授予权限。
$ sudo mysql -u root -p
mysql> CREATE DATABASE `database_name`;
mysql> CREATE USER 'user_name' IDENTIFIED BY 'a_secure_password';
mysql> GRANT ALL PRIVILEGES ON database_name.* TO 'user_name'@'%' WITH GRANT OPTION;
mysql> FLUSH PRIVILEGES;
1条答案
按热度按时间j9per5c41#
事实证明,这是mariadb和mysql的预期行为。为了解决这个问题,建议创建一个单独的用户并授予对所创建的所有数据库的访问权。下面是一个逐步指南,介绍如何使用命令行创建数据库并向您选择的用户授予权限。
登录mariadb/mysql
创建数据库
创建用户
授予用户权限
应用更改