加入收藏 | 设为首页 | 会员中心 | 我要投稿 聊城站长网 (https://www.0635zz.com/)- 智能语音交互、行业智能、AI应用、云计算、5G!
当前位置: 首页 > 站长学院 > MySql教程 > 正文

MySQL 8.0资源组有效解决慢SQL引发CPU预警

发布时间:2023-07-24 14:46:27 所属栏目:MySql教程 来源:
导读:资源组的作用是资源隔离(你可以理解为开通云主机时勾选的硬件配置),将线上的慢SQL线程id分配给CPU一个核,让它慢慢跑,从而不影响CPU整体性能。

创建一个资源组

mysql> create resource group slowsql_rg
资源组的作用是资源隔离(你可以理解为开通云主机时勾选的硬件配置),将线上的慢SQL线程id分配给CPU一个核,让它慢慢跑,从而不影响CPU整体性能。
 
创建一个资源组
 
mysql> create resource group slowsql_rg type=user vcpu=3
 
thread_priority=19 enable;
 
slowsql_rg为资源组名字
 
type=user 来源是用户端的慢SQL
 
vcpu=3 给它分配到哪个CPU核上(你可以用cat /proc/cpuinfo  | grep processor查看CPU有多少核)
 
thread_priority为优先级别,范围是0到19,19是最低优先级,0是最高优先级。
 
查看资源组信息
 
mysql> select * from information_schema.resource_groups;
 
查找慢SQL的线程ID
 
SELECT THREAD_ID,PROCESSLIST_INFO,RESOURCE_GROUP,PROCESSLIST_TIME FROM
 
performance_schema.threads WHERE PROCESSLIST_INFO REGEXP
 
'SELECT|INSERT|UPDATE|DELETE|ALTER' AND PROCESSLIST_TIME > 10;
 
把THREAD_ID取出来的值,放入资源组里做限制
 
set resource group slowsql_rg for 379;
 
比如你想放宽的限制,也可以更改
 
ALTER RESOURCE GROUP slowsql_rg VCPU = 3 THREAD_PRIORITY = 0;
 
关闭资源组,解除限制
 
ALTER RESOURCE GROUP slowsql_rg DISABLE FORCE;
 
 

(编辑:聊城站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章