如何在mysql服务器中为用户设置远程访问?

时间:2018-10-11 17:44:32

标签: mysql spring

当我在mysql中创建用户时,请遵循以下步骤:

CREATE USER IF NOT EXISTS 'devadmin'@'localhost' IDENTIFIED BY 'admindev';
GRANT ALL PRIVILEGES ON developerparse.* TO 'devadmin'@'%';
FLUSH PRIVILEGES;

我可以加入mysql:

mysql -u devadmin -p

但是我需要为用户设置远程访问权限,因此当我将主机设置为'%'时:

CREATE USER IF NOT EXISTS 'devadmin'@'%' IDENTIFIED BY 'admindev';

并尝试加入mysql时出现错误:

MySQL ERROR 1045 (28000): Access denied for user 'devadmin'@'localhost' (using password: YES)

该如何解决?


用户帐户表:

select user, host from mysql.user;

+------------------+-----------+
| user             | host      |
+------------------+-----------+
| devadmin         | %         |
| devuser          | %         |
| prodadmin        | %         |
| produser         | %         |
| testadmin        | %         |
| testuser         | %         |
| debian-sys-maint | localhost |
| developer        | localhost |
| mysql.session    | localhost |
| mysql.sys        | localhost |
| root             | localhost |
+------------------+-----------+

1 个答案:

答案 0 :(得分:1)

%表示该用户可以来自任何主机。本地主机,用户只能从该服务器。举例来说,这可能是有用的(出于安全目的)。 root @ localhost意味着除了服务器本身之外,没有人可以与root用户连接。