MySql 查询数据时间过长,导致程序报错 怎么解决

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了MySql 查询数据时间过长,导致程序报错 怎么解决相关的知识,希望对你有一定的参考价值。

mysql 查询数据时间过长,导致程序报错 怎么解决

参考技术A 如果不能更改数据库结构,且不能更改查询的语句,只是希望不报错的话,
请检查你程序文件中,调用Mysql的模块,
以C#为例,会使用ado.NET来操作Mysql数据库,
在配置文件中,会有<TimeOut>属性,默认是60000ms 即一分钟.
查询时,程序请求Sql =>sql处理 =>sql返回结果,
如果处理过程超过60000ms 就会报错,
将这个属性该为更大的数值即可解决,

如果是其他语言开发的程序,应该也会有类似的属性可供修改。
参考技术B 查询超时,需要看具体的查询语句以及数据库结构、代码等是否有问题。
数据库创建索引,对查询条件where进行优化(重点看看这块)。追问

本人 对于sql优化这块不是很了解,where语句因为业余需要已经不能改了。
有没有什么办法让程序不报错,查询慢点没事

参考技术C 1 主要优化程序方法,
2 提升电脑性能
3 病毒清理
参考技术D 优化你的查询,60秒都完不成的查询,要是多用户会怎样? 第5个回答  2016-04-08 ???????????

不知道你在说什么?

MySQL报错Lock wait timeout exceeded怎么办

参考技术A 用下面步骤尝试一下,看看能不能解决:
1、登录到mysql后,输入命令:show processlist;
查看当前会话列表,左边红框是会话执行的命令,右边红框是会话的时间。通常会话时间太长的多半是因为锁等待活死锁造成的,但也不排除一些慢查询。
我们删除那些时间过长的会话。

2、输入命令:kill ×××(×××为等待时间最长的会话);
删除会话列表中等待时间最长的会话

3、依次删除其他等待时间过长的会话本回答被提问者采纳

以上是关于MySql 查询数据时间过长,导致程序报错 怎么解决的主要内容,如果未能解决你的问题,请参考以下文章

MySQL报错Lock wait timeout exceeded怎么办

mysql下监测数据库语句creating sort index时间过长的问题

MySQL innoDB:查询执行时间过长

oracle数据库表被锁了怎么解锁

mysql查询时间过长

阿里四面:为何MySQL没有使用建立的索引?