ubuntu 访问远程mysql_远程连接Mysql Ubuntu

小编典典

要将MySQL暴露给localhost以外的任何东西,您将必须具有以下行

对于mysql 5.6及以下版本

取消注释/etc/mysql/my.cnf并分配给您的计算机IP地址,并且不环回

对于mysql 5.7及更高版本

取消注释/etc/mysql/mysql.conf.d/mysqld.cnf并分配给您的计算机IP地址,并且不环回

#Replace xxx with your IP Address

bind-address = xxx.xxx.xxx.xxx

bind-address = 0.0.0.0如果不想指定IP,则添加一个

然后停止并使用新的my.cnf条目重新启动MySQL。一旦运行,请转到终端并输入以下命令。

lsof -i -P | grep :3306

您应该在xxx的实际IP中返回类似的内容

mysqld 1046 mysql 10u IPv4 5203 0t0 TCP xxx.xxx.xxx.xxx:3306 (LISTEN)

如果以上语句正确返回,则可以接受远程用户。但是,要使远程用户连接正确的特权,您需要在本地主机和“%”中都创建该用户,如下所示。

CREATE USER 'myuser'@'localhost' IDENTIFIED BY 'mypass';

CREATE USER 'myuser'@'%' IDENTIFIED BY 'mypass';

然后,

GRANT ALL ON *.* TO 'myuser'@'localhost';

GRANT ALL ON *.* TO 'myuser'@'%';

最后,

FLUSH PRIVILEGES;

EXIT;

如果您没有创建与上述相同的用户,则在本地登录时,您可能会继承基本的localhost特权,并且会出现访问问题。如果你想限制访问为myuser已经那么你就需要在GRANT语句的语法读了这里如果你通过这一切,仍然有问题发布一些额外的错误输出和my.cnf中适当的行。

注意:如果lsof不返回或找不到,则可以根据Linux发行版本在此处安装。您不需要lsof就能使事情正常运行,但是当事情没有按预期进行时,这非常方便。

2020-05-17

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值