远程连接mysql 报错 1130-host . is not allowed to connect to this MySql server,MySQL

本文介绍了解决在阿里云上遇到的MySQL远程连接1130错误的方法,包括修改数据库权限、更新iptables配置以开放3306端口等步骤,适用于初学者及运维人员。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

开发 码代码 运维的事情都要自己弄, 在阿里云安装mysql的时候出现1130-host . is not allowed to connect to this MySql   错误 。。正常操作一下 1.2 点就可以远程连接了。  但是不排除有第三点,没开放3306端口..(我就是使用第三种解决的)

1. 改表法。

可能是你的帐号不允许从远程登陆,只能在localhost。这个时候只要在localhost的那台电脑,登入MySQL后,更改 "mysql" 数据库里的 "user" 表里的 "host" 项,从"localhost"改称"%"

mysql -u root -p

mysql>use mysql;

mysql>update user set host = '%' where user = 'root';

mysql>select host, user from user;

 

2. 授权法。

例如,你想root使用mypassword从任何主机连接到mysql服务器的话。

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

FLUSH   PRIVILEGES;

如果你想允许用户myuser从ip为192.168.1.6的主机连接到mysql服务器,并使用mypassword作为密码

GRANT ALL PRIVILEGES ON *.* TO 'root'@'192.168.1.3' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;

FLUSH   PRIVILEGES;

如果你想允许用户myuser从ip为192.168.1.6的主机连接到mysql服务器的dk数据库,并使用mypassword作为密码

GRANT ALL PRIVILEGES ON dk.* TO 'root'@'192.168.1.3' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;

FLUSH   PRIVILEGES;

 

3.转发机的iptables脚本,没有开放3306端口。。(我就是使用这种方法解决的)

vim /etc/iptables.sh  大多人的是 这个   /etc/sysconfig/iptables 根据位置自由选择

加上

iptables -t nat -A PREROUTING -p tcp --dport  3306 -j DNAT --to 你的ip:3306

(你的ip 替换成你阿里云的内网ip)

改完 执行 /etc/iptables.sh 

 

刚刚接触运维这块 还得多学习(前提是敲完代码)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值