• ADADADADAD

    SQLyog客户端无法连接MySQL服务器案例分析[ mysql数据库 ]

    mysql数据库 时间:2024-12-24 19:12:09

    作者:文/会员上传

    简介:

    实验环境:
    操作系统:Redhat 6.4IP:10.1.1.99(虚拟机)
    数据库:MYSQL5.1 在Linux上安装好MYSQL之后,进行本地登录[root@wjq2~]# mysql -uroot-p Enterpassword:Welcometo the MySQL

    以下为本文的正文内容,内容仅供参考!本站为公益性网站,复制本文以及下载DOC文档全部免费。


    实验环境:
    操作系统:Redhat 6.4IP:10.1.1.99(虚拟机)
    数据库:MYSQL5.1

    在Linux上安装好MYSQL之后,进行本地登录

    [root@wjq2~]# mysql -uroot-p

    Enterpassword:

    Welcometo the MySQL monitor. Commands end with; or \g.

    YourMySQL connection id is 10

    Serverversion: 5.1.66 Source distribution

    Copyright(c) 2000, 2012, Oracle and/or its affiliates. All rights reserved.

    Oracleis a registered trademark of Oracle Corporation and/or its

    affiliates.Other names may be trademarks of their respective

    owners.

    Type'help;' or '\h' for help. Type '\c' to clear the current input statement.

    mysql>

    登陆成功;

    下面通过SQLyog客户端来远程连接MYSQL服务器所遇问题进行分析:

    问题一:

    问题分析:

    [root@wjq2~]# servicemysqld status

    mysqld(pid 2364) is running...

    [root@wjq2~]# netstat -nalp | grep "3306"

    tcp 00 0.0.0.0:33060.0.0.0:* LISTEN 2364/mysqld

    tcp 00 10.1.1.99:330610.1.1.123:55569ESTABLISHED 2364/mysqld

    tcp 00 10.1.1.99:3306 10.1.1.123:55568 ESTABLISHED 2364/mysqld

    本地用户可以用3306端口连接,说明网络没有问题,3306端口也开启着,其实问题可能出在iptables,查看iptables的运行状态

    [root@wjq2~]# serviceiptables status

    iptables:Firewall is not running.

    发现iptables是禁用状态,所以问题并不是出现在iptables这里。

    注意:
    1、如果你的iptables没有禁用,可以禁用iptables;
    2、如果不想禁用iptables也可以,把-A INPUT -m state --state NEW -m tcp -p tcp --dport3306 -j ACCEPT添加到/etc/sysconfig/iptables即可,表示允许3306端口通过防火墙。

    [root@wjq2 ~]# cat/etc/sysconfig/iptables
    # Firewall configuration written by system-config-firewall
    # Manual customization of this file is not recommended.
    *filter
    :INPUT ACCEPT [0:0]
    :FORWARD ACCEPT [0:0]
    :OUTPUT ACCEPT [0:0]
    -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
    -A INPUT -p icmp -j ACCEPT
    -A INPUT -i lo -j ACCEPT
    -A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
    -A INPUT -j REJECT --reject-with icmp-host-prohibited
    -A FORWARD -j REJECT --reject-with icmp-host-prohibited
    -ARH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 3306 -j ACCEPT
    COMMIT
    修改完之后,需要重新启动iptables方可生效

    禁用iptables或修改完配置文件之后,再次远程连接MYSQL,又出现如下的错误:

    问题二:


    问题分析:

    根据错误提示,10.1.1.123是我本地主机的网卡IP,远程连接时不允许通过该主机连接到MYSQL服务器;可以初步判断可能是应为缺少权限;

    下面我将允许用户root使用密码XXX从任何主机连接到MYSQL服务器

    mysql> GRANT ALLPRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'XXX' WITH GRANT OPTION;

    Query OK, 0 rowsaffected (0.00 sec)

    或者是允许用户root从IP为10.1.1.123的主机连接到MYSQL服务器,并使用XXX作为登录密码

    mysql> GRANT ALLPRIVILEGES ON *.* TO 'root'@'10.1.1.123' IDENTIFIED BY 'XXX' WITH GRANTOPTION;

    Query OK, 0 rowsaffected (0.00 sec)

    授权成功之后,再次尝试进行远程连接,可以发现连接成功;




    作者:SEian.G(苦练七十二变,笑对八十一难)

    SQLyog客户端无法连接MySQL服务器案例分析.docx

    将本文的Word文档下载到电脑

    推荐度:

    下载
    热门标签: mysqlsqlyog客户端