mysql分组后为0也显示_MySQL8.0功能详解——资源组管理

news/2024/7/16 7:10:14
以下文章来源于MySQL解决方案工程师,作者徐轶韬

MySQL8.0里包括一款功能——CPU资源分组管理。它实现的目的是将CPU资源分组,并且赋予运行不同类型的查询。通过它可以解决DBA的一些痛点,例如:夜间进行的批处理、大型报表非常耗费资源,为了不影响其它查询的进行,不得不将其放在从服务器上运行。使用资源组管理后,DBA可以将工作分配给限定的CPU核心或者是vCPU。另外,DBA还可以将资源分配给不同的应用,例如分配8个核心给应用A,分配4个核心给应用B,使服务器的资源更加合理的使用。

简单说明一下它的使用过程,首先,需要创建资源组,为每个资源组分配适当的CPU核心数量或者是vCPU。其次,将资源组分配给正在运行查询的线程ID。之后,各个查询就会按照不同的资源组限定的范围运行。

下面详细介绍一下相关的内容:

资源组:资源组包括名称,类型,分配的CPU核心,以及优先顺序。创建资源组时,使用SQL执行CREATE RESOURCE GROUP,例句如图:

c243695b658ac0498b196c4f389529ec.png

资源组的类型分为user和system,system的优先顺序要高于user,system的优先范围在-20到0之间,user的范围在0到19。创建之后,可以通过SELECT * FROM INFORMATION_SCHEMA.RESOURCE_GROUPS来查看资源组的信息。例如:

0a3ef49b84caee6b4f11f78c30c3d1d3.png

有没有发现什么问题?这个图是创建资源组之前的信息,vcpu显示的为何是0-0?原因在于我的虚机一开始只有一个vCPU,重新配置虚机后,再看一下:

f81bf91c3c3191b98703899920cf89e4.png

这次显示0-3,证明我为虚机配置了4个vCPU。看一下创建资源组之后的结果:

c9c13d77e9b67fd0287e24bc246b1b7f.png

线程ID:创建好资源组之后,DBA要做的事情就是将其分配给对应的线程ID。可以通过查询performance_schema.threads来查看线程ID。

41a4b94046b0aa52604744949c9d2f30.png

然后执行:SET RESOURCE GROUP Batch FOR thread_id;

为执行的查询分配资源组之后,DBA还可以根据实际情况修改资源的分配。执行:

7e02f31f0951180b0636f0a47ae102dd.png

这时我们再看一下资源组的信息:

106f8784646a3300bfabe94c1404b4c9.png

资源已经重新调配,因此,DBA可以灵活的控制CPU资源为各个应用进行服务。

注意事项:

  • 执行资源组元数据的SQL文不会计入日志,因此MySQL的复制功能不会将其进行复制。
  • 如果使用了线程池插件,资源组功能无法使用。
  • 资源组无法在macOS上使用。
  • 资源组在FreeBSD 和 Solaris上会忽略优先顺序。
  • Linux上也会忽略优先顺序,除非开启CAP_SYS_NICE 功能。

更为详尽的内容请访问“https://dev.mysql.com/doc/ref...”,希望该功能对您有所帮助。

感谢关注MySQL!


http://www.niftyadmin.cn/n/3071541.html

相关文章

国外、国内各大OJ

下面是几个比较大的在线提交系统(Online Judge)里面有大量历年的竞赛题目,注册一个ID,然后用自己熟悉的语言(一般有Pascal/C/C/Java)写好源代码提交即可,会实时返 回信息告诉你是否正确。采用黑…

python提取邮件里面的发件人

import reimport fileinput pat re.compile(From: (.*) <.*?>$)for line in fileinput.input("ab.txt"):m pat.match(line)if m:print(m.group(1))转载于:https://blog.51cto.com/victor2016/2108261

开发步骤_课程设计与开发七大步骤

课程设计与开发是每一位职业培训师都必须会的技能&#xff0c;今天我们就来分享一下课程都是如何开发的。课程开发可以分为以下七个步骤&#xff1a;步骤一&#xff1a;选定主题&#xff0c;考虑针对组织和学员的需求问题&#xff0c;最后以最紧迫&#xff0c;最需要&#xff0…

该好好学习英语了

发音&#xff0c;这个应该算是学习英语的头等大事&#xff0c;如果没有机会和条件练好发音&#xff0c;也可以先将就着&#xff0c;不过后面你就会感觉到你说的人家可能会听不懂&#xff0c;我自己也曾经深受其害。基本常用单词积累&#xff08;大概2000~4000左右的词汇量就可以…

Vue 字面量语法 vs 动态语法

初学者常犯的一个错误是使用字面量语法传递数值&#xff1a; <!-- 传递了一个字符串 "1" --> <comp some-prop"1"></comp> 因为它是一个字面量 prop&#xff0c;它的值是字符串 "1" 而不是一个数值。如果想传递一个真正的 Jav…

安徽省2018工程计价电子版_二级造价工程师多少分及格

二级造价工程师的及格分数是各省市自定的&#xff0c;各省市的分数都不太一样&#xff0c;具体以人事考试中心发布的及格分数为准。二级造价师合格标准二级造价师全国统一标准是总分的60%&#xff0c;但是二级造价工程师跟二级建造师一样&#xff0c;由各地划线&#xff0c;具体…

vim 使用说明

vim 使用说明 本使用说明与 把VIM打造成IDE 配套0 快捷键和命令F1 --- 帮助F2 --- 移动到下一标签F3 --- 在工程中查找F4 --- 全部退出F5 --- 全部保存F6 --- 代码补全 ( insert模式 )F7 --- 编译项目F8 --- 重新编译…

goland环境配置_golang goland环境安装配置

安装 GoGo语言的优劣&#xff0c;这里就不介绍了&#xff0c;下面直接讲Go 的安装&#xff1a;下载对应平台的安装包。注意区分32位还是64位操作系统。安装包下载完成之后&#xff0c;安装过程很简单&#xff0c;傻瓜式下一步到底就好了。Go 环境变量安装go 的时候&#xff0c;…