前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >MySQL中2种方法限制查询超时时间

MySQL中2种方法限制查询超时时间

原创
作者头像
保持热爱奔赴山海
发布2022-05-07 14:46:41
3.3K0
发布2022-05-07 14:46:41
举报
文章被收录于专栏:数据库相关

场景:

某个复杂查询虽然前端YearningSQL的窗口关闭了,但实际SQL已经下发到数据库层去执行了,这种任然会对MySQL造成过大的压力。

解决方法:

方法1、在MySQL8中,可在select后面添加   /*+ MAX_EXECUTION_TIME(5000) */   (单位毫秒) 这种注解的方式,限制查询超时自动熔断。 

此外,在springboot的jdbc连接串定期全局超时时间(在mybatis 纯sql中可按sql粒度去定义超时时间)。具体看业务方是否有这方面的需求场景。

YearningSQL查询示例如下:

方法2、后台通过定时任务启动pt-kill去遍历相关的MySQL,将凡是由yearningsql平台发起的select操作,超过阈值就自动kill掉。

两种方法,都可以达到目的。 方法1的适用面更广,可以推广到业务侧去自行控制sql查询超时阈值。方法2一般只能供DBA用用。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
云数据库 SQL Server
腾讯云数据库 SQL Server (TencentDB for SQL Server)是业界最常用的商用数据库之一,对基于 Windows 架构的应用程序具有完美的支持。TencentDB for SQL Server 拥有微软正版授权,可持续为用户提供最新的功能,避免未授权使用软件的风险。具有即开即用、稳定可靠、安全运行、弹性扩缩等特点。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档