加入收藏 | 设为首页 | 会员中心 | 我要投稿 开发网_新乡站长网 (https://www.0373zz.com/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

连接远程mysql数据库失败(10038)解决办法

发布时间:2022-10-20 10:57:39 所属栏目:MySql教程 来源:
导读:  ##远程连接mysql(10038)的问题解决

  1、用户权限问题

  连接linux,登录数据库:mysql -uroot -p
  这里写图片描述

  修改root用户远程登录权限:

  想myuser使用mypassword从任何主
  ##远程连接mysql(10038)的问题解决
 
  1、用户权限问题
 
  连接linux,登录数据库:mysql -uroot -p
  这里写图片描述
 
  修改root用户远程登录权限:
 
  想myuser使用mypassword从任何主机连接到mysql服务器的话
 
  myuser是你的用户名,mypassword是你的密码
 
  use mysql;
  GRANT ALL PRIVILEGES ON *.* TO 'myuser'@'%' IDENTIFIED BY 'mypassword' WITH GRANT OPTION;
  flush privileges;
  quit
 
  2、my.cnf文件配置问题
 
  将选项skip-networking注释掉(注:有的资料上说还要讲bind-address设置成127.0.0.1,我的配置文件中反正没看到这句话,也就没有设置。这个选项是用来设置可以进行外部访问Mysql的IPmysql远程,有一个过滤的作用,也没有必要设置)。
 
  skip-networking
 
  单机运行MySQL使用skip-networking关闭MySQL的TCP/IP连接方式,开启该选项后就不能远程访问MySQL
 
  bind-address
 
  为安全考虑希望指定的IP访问MySQL,可以在配置文件中增加bind-address=IP,前提是关闭skip-networking
 
  vi /etc/my.cnf
  这里写图片描述
 
  保存退出
  esc
  :wq
  3、去看看防火墙有没有屏蔽掉3306端口。Centos系统的话,在 /etc/sysconfig/iptables 中,加入
 
  -A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
  vi /etc/sysconfig/iptables
  保存退出
  esc
  :wq
  特别提示:很多网友把这两条规则添加到防火墙配置的最后一行,导致防火墙启动失败,正确的应该是添加到默认的22端口这条规则的下面 。(我就是坑在了这里)
 
  4、重启防火墙和mysql
 
  service iptables restart
 
  service mysql restart
 

(编辑:开发网_新乡站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!