MySQL的远程连接出现错误提示分析

技巧问题 Mysql的远程连接出现"Lost connection to MySQL server during query" 安装完了RH 8.0用自带的mysql以后直接在本机上可以正常使用mysql登陆,用

mysql -u root -p

添加了一些用户,如* beginner pass

即beginner可以从任何地方通过密码可以访问这台Mysql服务器(假设我的mysql服务器为mysql.test.com)但当我运行

mysql -h mysql.test.com -u beginner -p

就提示:

ERROR 2013: Lost connection to MySQL server during query

其实我只要输入

mysql -h mysql.test.com时就出现上面的提示,也就是说它根本还没有到验证密码那一步。<br>

这个问题是由于glibc的一个bug造成的。

在glibc某些版本中,gethostbyaddr函数(确切地说是_nss_dns_gethostbyaddr_r)存在缓冲区溢出问题,在处理大数据时会造成SEGMENT FAULT。

在处理远程连接时,mysqld会调用ip_to_hostname()函数,再由这个函数调用gethostbyaddr函数,最后系统在执行nss_dns_gethostbyaddr_r函数处崩溃。因此,会出现上述情况。

解决问题的办法是升级glibc。

时间: 2025-01-01 11:37:38

MySQL的远程连接出现错误提示分析的相关文章

MySQL数据库远程连接开启方法_Mysql

第一中方法:比较详细以下的文章主要介绍的是MySQL 数据库开启远程连接的时机操作流程,其实开启MySQL 数据库远程连接的实际操作步骤并不难,知识方法对错而已,今天我们要向大家描述的是MySQL 数据库开启远程连接的时机操作流程. 1.d:\MySQL\bin\>MySQL -h localhost -u root 这样应该可以进入MySQL服务器 复制代码 代码如下: MySQL>update user set host = '%' where user = 'root'; MySQL&g

MySQL数据库远程连接开启方法

第一中方法:比较详细 以下的文章主要介绍的是MySQL 数据库开启远程连接的时机操作流程,其实开启MySQL 数据库远程连接的实际操作步骤并不难,知识方法对错而已,今天我们要向大家描述的是MySQL 数据库开启远程连接的时机操作流程. 1.d:\MySQL\bin\>MySQL -h localhost -u root 这样应该可以进入MySQL服务器 复制代码代码如下: MySQL>update user set host = '%' where user = 'root'; MySQL&g

解决MySQL无法远程连接的方法_Mysql

MySql远程连接无法打开解决办法 1.改表法. 请使用mysql管理工具,如:SQLyog Enterprise.navicate mysql 可能是你的帐号不允许从远程登陆,只能在localhost.这个时候只要在localhost的那台电脑使用mysql管理工具登入mysql后,更改 "mysql" 数据库里的 "user" 表里的 "host" 项,从"localhost"改称"%" 2. 授权法.

MySQL数据库远程连接很慢的解决方案_Mysql

有次同事提出开发使用的MySQL数据库连接很慢,因为我们的MySQL开发数据库是单独一台机器部署的,所以认为可能是网络连接问题导致的. 在进行 ping和route后发现网络通信都是正常的,而且在MySQL机器上进行本地连接发现是很快的,所以网络问题基本上被排除了.以前也遇到过一次这样的问题,可后来就不知怎么突然好了,这次又遭遇这样的问题,所以想看看是不是MySQL的配置问题.在查询MySQL相关文档和网络搜索后,发现了一个配置似乎可以解决这样的问题,就是在MySQL的配置文件中增加如下配置参数

mysql 开启远程连接的三种方法

本文章收藏了三种关于如何开启mysql教程 远程连接,第一款就是在mysql cmd命令提示符下给mysql开启远程连接的,方法三是修改mysql my.ini的文件配置来修改的哦. 方法一 样给mysql开启远程连接功能? 首先链接本机的mysql(用ssh登录终端,输入如下命令): mysql -uroot -p 输入密码登陆进去后,输入如下的语句,执行. grant all privileges on *.* to 'user'@'%' identified by 'password' w

MySQL数据库远程连接怎么提升速度

有次同事提出开发使用的MySQL数据库连接很慢,因为我们的MySQL开发数据库是单独一台机器部署的,所以认为可能是网络连接问题导致的. 在进行 ping和route后发现网络通信都是正常的,而且在MySQL机器上进行本地连接发现是很快的,所以网络问题基本上被排除了.以前也遇到过一次这样的问题,可后来就不知怎么突然好了,这次又遭遇这样的问题,所以想看看是不是MySQL的配置问题. 在查询MySQL相关文档和网络搜索后,发现了一个配置似乎可以解决这样的问题,就是在MySQL的配置文件中增加如下配置参

mysql允许远程连接的方法_Mysql

一.概述  本文主要介绍通过federated存储引擎建立远程连接表 测试环境:mysql 5.6.21 二.步骤 开启federated存储引擎 先查看federated存储引擎存储引擎是否启用 SHOW ENGINES ; 默认mysql是没有开启federated存储引擎,我这里因为已经配置了. 开启federated存储引擎只需要在my.cnf文件中增加'federated'就可以. 创建远程连接表  mysql配置远程连接必须在本地创建federated存储引擎的表,配置远程连接参数,

MySql允许远程连接如何实现该功能

MySql允许远程连接如何实现该功能 要达到这个目的需要实现两点 开通用户权限 解除本地绑定 开通用户权限 首先登陆服务器端的MySQL //不使用空格可以直接登陆 mysql -u用户名 -p密码 mysql> use mysql mysql> select user, host from user; 效果图 执行了代码以后会看到所有的用户以及对应的host 其中host的意思就是指允许访问的Ip地址,%的意思就是任何IP,当然如果是你的本地服务器,你也可以配置为本地的一个IP. 用户可以通

mysql数据库-远程连接服务器上,在自己的帐号下建立java连接mysql的程序,但是一直连接不上

问题描述 远程连接服务器上,在自己的帐号下建立java连接mysql的程序,但是一直连接不上 我是通过远程连接在实验室机房的一台机器(linux操作系统)上,然后在该机器上建立JAVA程序,其中涉及到连接mysql数据库的操作,但是在获取连接时一直提示"Communications link failure",涉及的代码为:connect=DriverManager.getConnection(""jdbc:mysql://localhost:3306/pyq_te