数字海洋,使用MySQL Workbench连接数据库

3
我刚刚开始使用运行Ubuntu 14.04 LAMP服务器的Digital Ocean服务器。我使用我的droplets IP地址,root作为用户和端口3306。我输入了正确的密码,但是我无法连接到我的服务器上的SQL。有什么建议吗?
MySQL Workbench报错信息:
Your connection attempt failed for user 'root' from your host to server at myIP:3306:
  Can't connect to MySQL server on 'myIP' (61)

错误。你遇到过吗?防火墙。它开着吗? - tadman
也许尝试使用33060端口而不是3306。 - Rise Ledger
UFW已开启,我为我输入到MySQL中的端口设置了一个例外。错误代码是61。 - Mike
我还没有为远程访问创建帐户。我对托管自己的服务器还很新,只是为我的SQL设置了root用户。 - Mike
“无法连接”通常意味着连接被拒绝,因此我建议您仔细检查防火墙规则并确保端口已打开。顺便提一下,这通常是一个非常糟糕的想法,所以您是否可以使用“ssh”隧道进行连接? - tadman
显示剩余3条评论
3个回答

3

1
我昨天刚经历了这个过程。但是听起来你已经准备好了,不需要更多的输入了吗? - Elvn

1
请确认是否允许root用户从本地外部、127.0.0.1或::1(即localhost)连接,如果不允许,请为连接本地外部创建root用户。
CREATE USER 'root'@'%' IDENTIFIED BY 'YourPassWord';
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'YourPassWord' WITH GRANT OPTION MAX_QUERIES_PER_HOUR 0 MAX_CONNECTIONS_PER_HOUR 0 MAX_UPDATES_PER_HOUR 0 MAX_USER_CONNECTIONS 0;

@'%'表示现在可以从任何站点连接, 或者您可能想指定一个IP地址进行连接,如:

.... 'root'@'yourIpAddress' .....

0

考虑到错误,问题出在您的连接而不是身份验证上。

首先应检查以下几点:

  1. 默认情况下,根帐户通常只允许127.0.0.7使用(请参阅@Jhonny Montoya的答案)。
  2. 一些托管公司可能会限制整个服务器或3306端口仅可本地使用,请在远程表中允许您的IP地址。

请记住,家庭用户很可能每次路由器重新启动时都会更改其IP地址,因此当发生这种情况时,您需要重新添加自己。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接