zoukankan      html  css  js  c++  java
  • linux中MySQL本地可以连接,远程连接不上问题

    1.网络或防火墙问题

    (1)检查网络直接ping你的远程服务器,ping 182.61.22.107,可以ping通说明网络没问题

    (2)看端口号3306是不是被防火墙挡住了,telnet 182.61.22.107 3306

    下图这样就是防火墙挡住了3306端口不允许访问

    配置防火墙,开启3306端口

    vi /etc/sysconfig/iptables         //防火墙配置
    
    -A INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT            //允许3306端口通过
    
    service iptables restart        //重启防火墙

    配置如下:

    2.MySQL配置

    在你开启防火墙以后发现还是telnet失败,我去,报错如下:

    这里的原因是因为你的数据库只允许root用户在本地登录,你可以设置允许访问的用户跟地址

    (1)进入数据库查看用户表

    mysql -u root -p         //登录数据库
    
    use mysql                  //进入mysql数据库
    
    select Host,User from user;       //查看可以访问数据库的ip

    结果如下:

    (2)设置可以访问的ip

    update user set host='%' where host='localhost';        //允许所有访问
    
    flush privileges;        //刷新生效

    当然也可以只允许一些ip访问,或者ip段访问:GRANT ALL PRIVILEGES ON *.* TO 'root'@'182.61.*.*' IDENTIFIED BY 'password' WITH GRANT OPTION;    //允许182.61段在root账号登录

  • 相关阅读:
    一般性能指标
    Spring之AOP框架
    关于电子商务网站
    超级省代码的TAB选项卡
    sql递归
    程序员必备工具,程序员专用工具,程序员专用搜索
    类拟google那样的图片载入
    创建脚本编辑器
    Ancher常用的三种三栏网页宽度自适应布局方法
    js日期加天数
  • 原文地址:https://www.cnblogs.com/zzqit/p/10095597.html
Copyright © 2011-2022 走看看