CentOS7.3远程连接mysql出现10038错误如何解决
文章图片
image.png
首先设置远程访问权限 在mysql中执行语句:
GRANT ALL PRIVILEGES ON * .* TO 'root'@'%' IDENTIFIED BY '123456' WITH GRANT OPTION;"." 允许远程访问的IP地址 .表示所有IP都可以根据root用户进行访问,123456就是mysql数据库密码,注意把空格去掉
flush privileges; //刷新MySQL的系统权限相关表-
quit; // 退出mysql
service mysqld restart #重启mysql命令如果还是不行,就是防火墙的问题了。
CentOS7的防火墙默认使用的是firewall作为防火墙,这里改为iptables防火墙步骤
1、关闭firewall:
systemctl stop firewalld.service #停止firewall2、iptables防火墙(这里iptables已经安装,下面进行配置,如果没有安装可先安装防火墙)
systemctl disable firewalld.service #禁止firewall开机启动
firewall-cmd --state #查看默认防火墙状态(关闭后显示notrunning,开启后显示running)
service iptables status #先检查是否安装了iptables3、编辑iptables防火墙配置
yum install -y iptables #安装iptables
yum update iptables #升级iptables(安装的最新版本则不需要)
yum install iptables-services #安装iptables-services
vi /etc/sysconfig/iptables #编辑防火墙配置文件下边是一个完整的配置文件:
*filter:wq! #保存退出 完成后执行下面的命令
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 80 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT
【CentOS7.3远程连接mysql出现10038错误如何解决】systemctl restart iptables.service #最后重启防火墙使配置生效
systemctl enable iptables.service #设置防火墙开机启动
推荐阅读
- CVE-2020-16898|CVE-2020-16898 TCP/IP远程代码执行漏洞
- py连接mysql
- Android|Android BLE蓝牙连接异常处理
- springboot整合数据库连接池-->druid
- Python3|Python3 MySQL 数据库连接
- Xshell5|Xshell5 远程连接本地虚拟机Ubuntu16
- 为Google|为Google Cloud配置深度学习环境(CUDA、cuDNN、Tensorflow2、VScode远程ssh等)
- mac|mac 链接linux服务器 如何在Mac上连接服务器
- TCP长连接与段链接
- [2018-02-22]|[2018-02-22] Git之远程仓库