• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

解决Linux服务器centos系统和MySQL连接失败相关问题

武飞扬头像
进步中的程序猿~
帮助1

一、考虑 防火墙 问题

        centos 有两种防火墙 FirewallD 和 iptables 防火墙。

        centos7 使用的是 FirewallD 防火墙。

        1. 首先需要检查防火墙是否打开?

    执行命令: systemctl status firewalld.service; #查看防火墙运行状态

学新通

学新通

        

         2. 此时你需要考虑,你的服务器 是否需要在开启防火墙的同时开放mysql的3306端口?

解决方案一、实现开启防火墙的同时开放mysql的3306端口

        第一步:执行命令-编辑文件

vim /etc/sysconfig/iptables;   # 需要编辑这个文件

        第二步:在该文件中末尾添加

-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT

        第三步:保存并退出

  1.  
    先按键盘左上角的exc
  2.  
    再执行命令::wq!

        最后一步:执行命令-重启防火墙

firewall-cmd --reload;   # 重启防火墙

解决方案二、实现关闭防火墙并禁止防火墙自启动

        第一步:执行命令

systemctl stop firewalld.service;   # 关闭防火墙

        最后一步:执行命令

systemctl disable firewalld.service;   # 禁止防火墙自启动

        执行完这一步就可以尝试是否可以连接成功啦!

        如果不行的话就继续执行下面的步骤

附. 防火墙相关命令:

systemctl status firewalld.service;      #查看防火墙状态
systemctl stop firewalld.service;         #关闭防火墙
systemctl start firewalld.service;         #开启防火墙
firewall-cmd --reload;                          #防火墙重启
systemctl disable firewalld.service;     #禁止防火墙自启动
systemctl enable firewalld.service;     #防火墙随系统开启启动

二、考虑 mysql中用户访问权限 问题

        注:因为mysql中可以限制每个用户的访问ip,一般默认为localhost(即此用户只能服务器本地登录)。有些时候会因为此问题导致无法链接!

        解决方案:进入mysql修改指定用户的访问ip

                第一步:执行命令-登录mysql

mysql -u账号 -p密码;   # 服务器中登录mysql,账号密码都是登录mysql用的

                第二步:执行命令-进入mysql库

use mysql;   # 进入mysql库

                第三步:执行命令-修改数据

  1.  
    update user set host='访问ip' where user='root'; # 更新指定用户的指定访问ip
  2.  
     
  3.  
    这条命令中的 访问ip 可替换的参数如下:
  4.  
    访问ip替换为%   # 代表不对此用户做访问ip限制
  5.  
    访问ip替换为 localhost 或者 指定ip #代表只能本地访问或者指定ip访问

                第四步:执行命令-刷新访问权限

FLUSH PRIVILEGES; #执行命令-刷新访问权限

                第五步:执行命令-退出mysql

exit

                最后一步:执行命令-重启mysql数据库

systemctl restart mysqld.service; # 重启mysql数据库

附. mysql服务相关命令(如果mysql采用压缩包方式部署,以下代码则不可用)

systemctl stop mysqld.service;      #停止mysql服务
systemctl start mysqld.service;      #启动mysql服务
systemctl restart mysqld.service;   #重启mysql服务
systemctl status mysqld.service;    #查看mysql运行状态
whereis mysql;                               #查看mysql安装路径

三、考虑服务器的ip地址自动变更问题

注:这种情况一般不会发生,但是每次当出现这种问题的时候仍需要关注一下

执行命令: ip addr;   #用于查看ip地址相关信息的命令

学新通

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhfjihkc
系列文章
更多 icon
同类精品
更多 icon
继续加载