介绍
您好,我是本际云服务器推荐网的小编小本本。今天我们来了解一个Mysql登陆挂起案例浅析。

分析
某天应用人员小C跑过来咨询mysql库是不是有问题,任务处理总是超时,让帮着看看核实一下。通过核实会话记录日志、慢日志、系统负载记录日志,我们确认数据库负载较低,没有问题。小C带着他的老大小A再次过来反馈数据库有问题,已经引起用户投诉了,必须要解决。通过分析应用日志,我们发现其是一个循环更新一批用户状态的一个模块,在循环内部采用的是短连接模式。实际SQl执行实际是毫秒级非常快,而获取连接时间则超过1分钟,直观上问题比较大。
解决
我们使用mysql客户端登录测试一下,发现客户端连接时确实会卡顿很久,提示显示正在读取元数据信息,且可以使用-A关闭该特性,而实际该会话已正常登录数据库。我们根据提示使用–A进行测试连接,可以看到登录响应时间恢复正常,通知应用使用该参数后程序运行恢复正常,问题得到解决。我们再来查阅文档看一下这个-A是什么情况:mysql客户端默认登陆时,会读取数据库表、字段等元数据信息构建hash表以进行自动补全功能。当表、字段过多时该hash表的构建就会变慢从而影响连接时长。针对这个问题,我们可以使用案例中的-A参数,也可以在my.cnf中使用no_auto_rehash关闭该功能。
以上是本次Mysql登陆挂起案例浅析,感谢您的阅读!
原创文章,作者:小编小本本,如若转载,请注明出处:https://www.benjiyun.com/yunzhujiyunwei/vps-yunwei/6393.html
