MySql服务器“错误号2003无法连接到Mysql服务器”,我无法连接,我已经更改了my.cnf并创建了远程用户

时间:2018-04-26 23:40:26

标签: mysql server gcloud

我的服务器在谷歌云平台上运行,我将在此处显示规范:

mysql版本:Ver 15.1使用readline 5.2分发10.1.26-MariaDB,用于debian-linux-gnu(x86_64)

MySql配置文件位于/etc/mysql/mariadb.conf.d/50-server.cnf

我已经将行从bind-address = 127.0.0.1更改为bind-address = 0.0.0.0,之后我使用sudo mysql service restart

重新启动了该服务

然后我创建了用户并允许远程连接,这是我的用户列表:

enter image description here

我一直在尝试通过sqlyog客户端进行连接,但它不断抛出相同的错误消息:

enter image description here

1 个答案:

答案 0 :(得分:1)

我解决了这个问题,这是针对debian 9,以及mysql Ver 15.1 Distrib 10.1.26-MariaDB,我将在这里写下这些步骤:

1-首先我编辑了这个文件/etc/mysql/mariadb.conf.d/50-server.cnf, 只要找到绑定地址= 127.0.0.1的行,如果它被注释只是取消注释它,将地址更改为0.0.0.0以允许来自任何地方的流量, 之后使用service mysql restart命令重启mysql服务

2.-在gcloud中点击你的实例>转到网络接口部分,然后单击>点击防火墙规则部分>选择"默认允许内部"防火墙规则,并将tcp:1-65545更改为tcp:1-3305,并保存。

3.-添加新的防火墙规则>源滤波器>选择Ip间隔>设置0.0.0.0/0,协议和端口设置tcp:3306,保存它和那个

4.-添加远程mysql用户,例如:

CREATE USER 'myus'@'localhost' IDENTIFIED BY 'mypas'; # To connect from the 
server
CREATE USER 'myus'@'%' IDENTIFIED BY 'mypas'; # To connect from everywhere

授予用户

的权限
GRANT ALL PRIVILEGES ON *.* TO 'myus'@'localhost' IDENTIFIED BY 'mypas' WITH 
GRANT OPTION;
GRANT ALL PRIVILEGES ON *.* TO 'myus'@'%' IDENTIFIED BY 'mypas' WITH GRANT 
OPTION;

FLUSH PRIVILEGES;

这对我有用,我希望它也适合你