为了账号安全,请及时绑定邮箱和手机立即绑定

如何允许远程连接到MySQL

如何允许远程连接到MySQL

精慕HU 2019-06-03 17:04:17
如何允许远程连接到MySQL我已经在我的本地机器上安装了MySQL CommunityEdition 5.5,我希望允许远程连接,这样我就可以从外部源连接。我怎么能这么做?
查看完整描述

4 回答

?
慕姐8265434

TA贡献1813条经验 获得超2个赞

默认情况下,这在MySQL上是允许的。

默认情况下禁用的是远程。root进入。如果要启用该命令,请在本地运行此SQL命令:

 GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION;
 FLUSH PRIVILEGES;

然后找到下面的行评论掉在你的my.cnf文件,它通常存在于/etc/mysql/my.cnf在Unix/OSX系统上。在某些情况下,文件的位置是/etc/mysql/mysql.con.d/mysqld.cnf)。

如果是Windows系统,您可以在MySQL安装目录中找到它,通常如下所示C:\Program Files\MySQL\MySQL Server 5.5\文件名将是my.ini.

变更线

 bind-address = 127.0.0.1

 #bind-address = 127.0.0.1

并重新启动MySQL服务器(Unix/OSX,和)更改才能生效。


查看完整回答
反对 回复 2019-06-03
?
Helenr

TA贡献1780条经验 获得超3个赞

在做了以上所有的工作后,我仍然无法以root远程,但远程传送到端口3306证实MySQL接受联系。

我开始查看MySQL中的用户,并注意到多根用户有不同的密码。

select user, host, password from mysql.user;

所以在MySQL I 为root设置所有密码。我终于可以远程登录了root.

use mysql;update user set password=PASSWORD("NEWPASSWORD") where User='root';flush privileges;


查看完整回答
反对 回复 2019-06-03
?
ABOUTYOU

TA贡献1812条经验 获得超5个赞

在我的例子中,我试图连接到分操作系统上的远程MySQL服务器。在经历了许多解决方案(授予所有权限、删除IP绑定、启用网络)之后,问题仍然没有得到解决。

结果,在研究各种解决方案时,我遇到了iptable,这使我意识到MySQL端口3306不接受连接。

这里有一个关于我如何检查和解决这个问题的小笔记。

  • 检查端口是否接受连接:
telnet (mysql server ip) [portNo]
  • 添加IP表规则以允许端口上的连接:
iptables -A INPUT -i eth0 -p tcp -m tcp --dport 3306 -j ACCEPT
  • 在生产环境中不推荐这样做,但是如果您的iptables配置不正确,添加规则可能仍然无法解决这个问题。在这种情况下,应开展以下工作:
service iptables stop

希望这能帮上忙。


查看完整回答
反对 回复 2019-06-03
  • 4 回答
  • 0 关注
  • 860 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信