MYSQL错误 NO.1130 ERROR的解决(使用客户端远程连接数据库)

问题背景:

        linux系统,centos6.5(/7.4),mysql数据库,

        远程计算机:SQLyog客户端,xshell远程工具;

通过xshell连接数据库,输入mysql -u root -p,然后输入密码,可以进入mysql,但是通过SQLyog在页面MYSQL Host Address这一项输入IP地址无法连接到数据库,出现1130 error。具体如下图:

查询原因:

        用xshell进入mysql,

        首先use mysql;

        然后select host, user from user;

        得到的结果里的host只有“127.0.0.1”、“localhost”,

        所以需要添加host为“%”或将localhost修改为“%”

  出现这种情况是因为mysql服务器出于安全考虑,默认只允许本地登录数据库服务器,如果不常用我们还是关了这个功能的好。

解决办法:

        改mysql的user表,具体方法如下:

        1、先用use mysql;进入名字为mysql的数据库;

        2、mysql>update user set host='%' where host='localhost' and user='root';

        3、mysql>flush privileges;

        4、使用查询语句查看是否修改过来:mysql>select host,user from user;

结果中若有,host为“%”的root用户,则直接在SQLyog客户端重新连接,就会连接成功,问题解决
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要在MySQL中进行远程连接数据库,需要进行以下步骤: 1. 在MySQL服务器上,确保MySQL配置文件(通常是my.cnf或my.ini)中的bind-address设置为服务器的IP地址,而不是默认的本地回环地址(127.0.0.1)。 2. 在MySQL服务器上,创建一个允许远程访问的数据库用户。可以使用以下命令创建用户并授予相应的权限: ``` CREATE USER '用户名'@'远程主机IP' IDENTIFIED BY '密码'; GRANT ALL PRIVILEGES ON 数据库名.* TO '用户名'@'远程主机IP'; FLUSH PRIVILEGES; ``` 请将 '用户名' 替换为您希望创建的用户名,'远程主机IP' 替换为允许访问的远程主机IP地址,'密码' 替换为您希望设置的密码,'数据库名' 替换为您要访问的数据库名称。 3. 在防火墙上打开MySQL的端口(默认为3306),以允许远程主机连接到MySQL服务器。具体方法取决于您使用的操作系统和防火墙软件。 4. 在远程主机上,使用MySQL客户端工具(如MySQL命令行或Navicat等)连接到MySQL服务器。使用以下命令进行连接: ``` mysql -h <MySQL服务器IP> -u <用户名> -p ``` 请将 <MySQL服务器IP> 替换为MySQL服务器的IP地址,<用户名> 替换为之前创建的数据库用户的用户名。然后会提示您输入密码,输入之前设置的密码即可。 这样,您就可以通过远程连接访问MySQL数据库了。请注意,为了安全起见,请确保设置强密码,并仅允许受信任的远程主机访问您的数据库

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值