mysql无法远程访问的解决办法

本文介绍了如何跳过MySQL的密码验证以实现本地免密登录,并通过更改用户访问控制表来允许远程访问。步骤包括在配置文件中添加skip_grant_tables,更新用户主机限制,然后移除该选项并重启服务。遇到远程访问问题时,可能涉及防火墙未关闭、仅监听IPv6或密码错误等常见因素。
摘要由CSDN通过智能技术生成

一、跳过mysql密码验证

更改配置文件/etc/my.cnf,在里面插入skip_grant_tables ,然后重启服务systemctl restart mysqld。这样就可以免密本机登录mysql了,但是开了免密登录,mysql服务不会监听任何端口,因为只能本机登录服务。

二、更改访问控制表

进入mysql库,select host,user from user;,查看对应的用户是否开启了远程可访问的权限,如下图所示‘%’代表任意主机可远程连接访问mysql,‘localhost’代表仅本地可访问该数据库。当然也可以指定一个ip地址,代表仅该主机可以访问该mysql。
update user set host = '%' where user = 'root'; 使用该可以更改用户访问主机限制。
在这里插入图片描述
完成上述操作就可以把配置文件中的skip_grant_tables去掉并重启mysql,正常来说就可以远程访问mysql了。

三、几个常见问题

如果完成第二步的操作之后,依然无法远程访问,常见的问题一般为以下几个:

1. 防火墙没关

2. mysql只监听了ipv6地址

3. 登录用户的密码不对

  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值