让所有人都可以连接mysql_允许所有远程连接,MySQL

小编典典

正如上面Ryan指出的,您需要的命令是

GRANT ALL ON *.* to user@'%' IDENTIFIED BY 'password';

但是,请注意,文档指出,要使此功能正常运行,localhost必须为同一用户创建另一个用户帐户。否则,由自动创建的匿名帐户mysql_install_db将具有优先权,因为它具有更特定的主机列。

换一种说法; 为了使用户user能够从任何服务器进行连接;需要创建2个帐户,如下所示:

GRANT ALL ON *.* to user@localhost IDENTIFIED BY 'password';

GRANT ALL ON *.* to user@'%' IDENTIFIED BY 'password';

在此处阅读完整的文档。

这是相关的参考资料:

以root用户身份连接到服务器后,可以添加新帐户。以下语句使用GRANT设置四个新帐户:

mysql> CREATE USER 'monty'@'localhost' IDENTIFIED BY 'some_pass';

mysql> GRANT ALL PRIVILEGES ON *.* TO 'monty'@'localhost'

-> WITH GRANT OPTION;

mysql> CREATE USER 'monty'@'%' IDENTIFIED BY 'some_pass';

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

-> WITH GRANT OPTION;

mysql> CREATE USER 'admin'@'localhost';

mysql> GRANT RELOAD,PROCESS ON *.* TO 'admin'@'localhost';

mysql> CREATE USER 'dummy'@'localhost';

这些语句创建的帐户具有以下属性:

其中两个帐户的用户名是monty,密码是some_pass。这两个帐户都是具有完全权限执行任何操作的超级用户帐户。仅在从本地主机连接时才能使用“

monty” @“ localhost”帐户。“ monty” @“%”帐户将“%”通配符用于主机部分,因此可用于从任何主机进行连接。

必须同时拥有两个帐户,才能作为帐户从任何地方连接

。如果没有localhost帐户,当monty从本地主机连接时,由mysql_install_db创建的localhost匿名用户帐户将具有优先权。结果,monty将被视为匿名用户。原因是匿名用户帐户比“

monty”

@“%”帐户具有更特定的“主机”列值,因此在用户表排序顺序中排在较早的位置。(在第6.2.4节“访问控制,阶段1:连接验证”中讨论了用户表排序。)

除非我误解,否则这对我来说似乎很愚蠢。

2020-05-17

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值