[有偿] mysql 偶尔连不上,查询超时

2017-02-13 23:10:20 +08:00
 yuyuyu

大部分时间是正常的,但偶尔会出现 mysql 连不上、查询超时的问题,系统是 windows ,可以有偿帮忙解决问题,企鹅 MjEyNTcwNTM0MA==

1581 次点击
所在节点    问与答
11 条回复
ixiaohei
2017-02-13 23:43:21 +08:00
查询超时?这个是慢 sql 么?如果是网络抓包就能分析出来了
yuyuyu
2017-02-13 23:52:04 +08:00
@ixiaohei 确实有慢 SQL ,已经在优化了,但是慢 SQL 会导致 MYSQL 连接都连接不上吗?另外我也不知道这个慢 SQL 是不是真正的罪魁祸首,因为有可能是其他的慢 SQL 导致了表锁什么的然后才会有后面的慢 SQL ?
ixiaohei
2017-02-13 23:57:24 +08:00
慢 SQL 会导致超时异常。如果是 java 一般是 SQLTimeoutException 这种异常。其他的语言也会类似。看你连接池或者链接超时时间设置的是多少。慢 sql 很好优化的,看执行计划就行,最头痛的就是有时候走索引,有时候不走,这时候建议 hint 。
yuyuyu
2017-02-14 00:02:40 +08:00
@ixiaohei 我现在直接执行慢 sql 语句又很快,这是慢 SQL 语句:
# User@Host: root[root] @ [x.x.x.x] Id: 223
# Query_time: 12.136800 Lock_time: 0.000000 Rows_sent: 1 Rows_examined: 1
SET timestamp=xxxx;
SELECT
`Extent1`.`ID`,
`Extent1`.`Email`,
`Extent1`.`Password`,
`Extent1`.`Start`,
`Extent1`.`End`,
`Extent1`.`Register`
FROM `userinfo` AS `Extent1`
WHERE `Extent1`.`ID` = 1;
这是执行计划:
# id, select_type, table, type, possible_keys, key, key_len, ref, rows, Extra
'1', 'SIMPLE', 'Extent1', 'const', 'PRIMARY,ID_UNIQUE', 'PRIMARY', '4', 'const', '1', NULL
yuyuyu
2017-02-14 00:52:33 +08:00
好吧,我有一个表是空的表,一条数据都没有,居然也在慢 SQL 记录里面找到了对这个表的查询有 19 秒……感觉出现这种问题的时候,整个 mysql 所有的表查询都会超时或者很慢很慢……是不是 mysql 哪里配置或者和 windows 有兼容性问题? mysql 版本是 5.6.19 , win2008r2
yuyuyu
2017-02-14 09:50:31 +08:00
我愿意支付 1000 元酬劳帮忙解决问题
ixiaohei
2017-02-14 19:36:34 +08:00
建议换 linux 服务器试试。把数据导过来就行了。以前在 windows server 上跑几年的 mysql 也没有出现过问题。估计可能你的应用程序有问题
yuyuyu
2017-02-14 20:33:42 +08:00
@ixiaohei 就是因为不熟 linux 才弄的 windows ,生产环境 linux 出问题不懂要死人的……不应该是应用程序的问题,我建了一个最简单只包含 select count(0) from xxx 的程序,在服务器上每隔 1 分钟执行一次这条 SQL ,当出现问题的时候,这个应用程序也会报查询超时错误,实在不知道什么原因折腾了很久,所以愿意花钱找人帮忙, 1000 不够就 2000 !
ixiaohei
2017-02-14 20:55:40 +08:00
那我感觉你还是有慢查询了,占用完 cpu 线程了,后面的阻塞超时了?
yuyuyu
2017-02-14 21:17:28 +08:00
@ixiaohei 我估计也是这样但不知道要怎么查
ixiaohei
2017-02-14 23:01:20 +08:00
建议你监控 mysql 的 cpu , io 这些东西,网上搜 mysql 慢查询,能找到很多解决的方法的。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/340265

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX