资讯专栏INFORMATION COLUMN

Mysql登陆挂起案例浅析

IT那活儿 / 3046人阅读
Mysql登陆挂起案例浅析

点击上方“IT那活儿”公众号,关注后了解更多内容,不管IT什么活儿,干就完了!!!


01


某天应用人员小C跑过来咨询mysql库是不是有问题,任务处理总是超时,让帮着看看核实一下。
在我们了解了相关数据库信息后,登陆实例观察到数据库非常空闲,基本没有活动会话,看着不像是有问题的样子,如下:
经过反复核验会话记录日志、慢日志、系统负载记录日志,确认数据库负载较低,没有问题,便给小C打发走了。 
第二天小C带着他的老大小A再次过来反馈数据库有问题,已经引起用户投诉了,必须要解决不然要把我支棱了。没法子,只能让其打开程序详细日志记录,以观察到底哪里耗时异常。


02


通过分析应用日志,发现其是一个循环更新一批用户状态的一个模块,在循环内部采用的是短连接模式。
实际SQl执行实际是毫秒级非常快,而获取连接时间则超过1分钟,直观上问题比较大。如下:
发现了短连接问题,我们使用mysql客户端登录测试一下。如下:
客户端连接时确实会卡顿很久,提示显示正在读取元数据信息,且可以使用-A关闭该特性,而实际该会话已正常登录数据库。
我们根据提示使用 –A进行测试连接:
可以看到登录响应时间恢复正常。通知应用使用该参数后程序运行恢复正常,问题得到解决。


03


我们再来查阅文档看一下这个-A是什么情况:
通俗的翻译就是mysql客户端默认登陆时,会读取数据库表、字段等元数据信息构建hash表以进行自动补全功能。
通过与应用沟通,他们在前几天进行了上线也就是新建了表。当表、字段过多时该hash表的构建就会变慢从而影响连接时长
如下我们可以使用tab后发现提示出了大量备选项:
针对这个问题,我们可以使用案例中的-A参数,也可以在my.cnf中使用no_auto_rehash关闭该功能。

END




本文作者:胡 杰(上海新炬王翦团队)

本文来源:“IT那活儿”公众号

文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。

转载请注明本文地址:https://www.ucloud.cn/yun/129425.html

相关文章

  • 切图崽的自我修养-[ES6] 生成器Generator浅析

    摘要:搞这么神秘其实就是个迭代器的核心实际上就是一个,通过关键字能够把函数体拆成完全可控执行片段,在函数体外部通过来对这些执行片段进行遍历这和遍历这些数据结构是一个道理只不过用来遍历函数片段,而用来遍历元素对生成器执行操作,进行生成器的入口开始执 Generator 搞这么神秘 其实就是个迭代器 Generator的核心实际上就是一个Iterator,通过yield关键字能够把函数体拆成完全...

    Dogee 评论0 收藏0
  • 切图崽的自我修养-[ES6] 生成器Generator浅析

    摘要:搞这么神秘其实就是个迭代器的核心实际上就是一个,通过关键字能够把函数体拆成完全可控执行片段,在函数体外部通过来对这些执行片段进行遍历这和遍历这些数据结构是一个道理只不过用来遍历函数片段,而用来遍历元素对生成器执行操作,进行生成器的入口开始执 Generator 搞这么神秘 其实就是个迭代器 Generator的核心实际上就是一个Iterator,通过yield关键字能够把函数体拆成完全...

    李义 评论0 收藏0
  • 切图崽的自我修养-[ES6] 生成器Generator浅析

    摘要:搞这么神秘其实就是个迭代器的核心实际上就是一个,通过关键字能够把函数体拆成完全可控执行片段,在函数体外部通过来对这些执行片段进行遍历这和遍历这些数据结构是一个道理只不过用来遍历函数片段,而用来遍历元素对生成器执行操作,进行生成器的入口开始执 Generator 搞这么神秘 其实就是个迭代器 Generator的核心实际上就是一个Iterator,通过yield关键字能够把函数体拆成完全...

    mj 评论0 收藏0
  • 线程间的同步与通信(3)——浅析synchronized的实现原理

    摘要:由此可见,自旋锁和各有优劣,他们分别适用于竞争不多和竞争激烈的场景中。每一个试图进入同步代码块的线程都会被封装成对象,它们或在对象的中,或在中,等待成为对象的成为的对象即获取了监视器锁。 前言 系列文章目录 前面两篇文章我们介绍了synchronized同步代码块以及wait和notify机制,大致知道了这些关键字和方法是干什么的,以及怎么用。 但是,知其然,并不知其所以然。 例如...

    keithxiaoy 评论0 收藏0
  • node.js中文资料导航

    摘要:中文资料导航官网七牛镜像深入浅出系列进阶必读中文文档被误解的编写实战系列热门模块排行榜,方便找出你想要的模块多线程,真正的非阻塞浅析的类利用编写异步多线程的实例中与的区别管道拒绝服务漏洞高级编程业界新闻看如何评价他们的首次尝鲜程序员如何说服 node.js中文资料导航 Node.js HomePage Node官网七牛镜像 Infoq深入浅出Node.js系列(进阶必读) Nod...

    geekidentity 评论0 收藏0

发表评论

0条评论

IT那活儿

|高级讲师

TA的文章

阅读更多
最新活动
阅读需要支付1元查看
<