远程连接ubuntu mysql出现2003错误 cant connect to mysql
远程连接mysql报错

解决方案
1、若是阿里云的ecs服务器,需要在安全策略中开启3306的端口号
2、在控制台查找my.cnf配置文件,我本地的环境中引入了两个配置文件
第二个路径 /etc/mysql/mysql.conf.d文件夹中打开 vim mysqld.cnf文件修改即可。
找到 bind-address = 127.0.0.1 在前面加上#注释掉,如下:

重新启动mysql服务
systemctl restart mysql.service
赋予远程访问权限
顺便在跟大家说一下连接时遇到 is not allowed to connect to this MySQL server 错误的解决方法;
1.在控制台输入 mysql -uroot -p密码 进入mysql
2.输入 use mysql; 进入mysql数据库
3.输入 update user set host=’%’ where user=‘root’ ; 来允许通过ip访问。)注意:括号中的方法是允许所有人连接,容易被别人黑,所以要设置指定IP访问。具体方法如下:
直接输入 :
GRANT ALL PRIVILEGES ON *.* TO 'root'@'要指定的IP地址' IDENTIFIED BY '设置的密码' WITH GRANT OPTION;
也可以先更新将host更新为% ,然后通过图形化界面(SqlYog, workbench 等)来更新host为自己的ip。
4.继续输入 flush privileges; 记住,不管选用上面那种方法,都要执行这步来更新数据库用户权限。非常重要!!!
5.然后重新连接,这样问题就解决了。

当远程连接Ubuntu系统的MySQL时遇到2003错误,可以尝试以下步骤解决:1) 检查阿里云ECS的安全组策略,确保3306端口开放;2) 修改MySQL配置文件`/etc/mysql/mysql.conf.d/mysqld.cnf`,取消`bind-address`的注释;3) 重启MySQL服务;4) 更新MySQL用户权限,允许远程访问,如使用`update user set host='%' where user='root';`,并执行`flush privileges;`;5) 重新连接MySQL,问题即可解决。注意,允许所有IP访问可能带来安全风险,建议设置特定IP访问。
1118

被折叠的 条评论
为什么被折叠?



