文档首页
MySQL 9.0 参考手册
相关文档 下载本手册
PDF (US Ltr) - 40.0Mb
PDF (A4) - 40.1Mb
手册页 (TGZ) - 258.2Kb
手册页 (Zip) - 365.3Kb
信息 (Gzip) - 4.0Mb
信息 (Zip) - 4.0Mb


MySQL 9.0 参考手册  /  ...  /  CREATE RESOURCE GROUP 语句

15.7.2.2 CREATE RESOURCE GROUP 语句

CREATE RESOURCE GROUP group_name
    TYPE = {SYSTEM|USER}
    [VCPU [=] vcpu_spec [, vcpu_spec] ...]
    [THREAD_PRIORITY [=] N]
    [ENABLE|DISABLE]

vcpu_spec: {N | M - N}

CREATE RESOURCE GROUP 用于资源组管理(参见 第 7.1.16 节,“资源组”)。此语句创建一个新的资源组并分配其初始属性值。它需要 RESOURCE_GROUP_ADMIN 权限。

group_name 用于标识要创建的资源组。如果该组已经存在,则会发生错误。

TYPE 属性是必需的。对于系统资源组,它应该是 SYSTEM,对于用户资源组,它应该是 USER。组类型会影响允许的 THREAD_PRIORITY 值,如后面所述。

VCPU 属性指示 CPU 亲和性;也就是说,该组可以使用的一组虚拟 CPU

  • 如果没有给出 VCPU,则资源组没有 CPU 亲和性,可以使用所有可用的 CPU。

  • 如果给出了 VCPU,则属性值是逗号分隔的 CPU 编号或范围列表

    • 每个编号都必须是 0 到 CPU 数量 - 1 之间的整数。例如,在具有 64 个 CPU 的系统上,编号范围可以从 0 到 63。

    • 范围以 MN 的形式给出,其中 M 小于或等于 N,两个数字都在 CPU 范围内。

    • 如果 CPU 号码是允许范围之外的整数或不是整数,则会发生错误。

示例 VCPU 指定符(这些都是等效的)

VCPU = 0,1,2,3,9,10
VCPU = 0-3,9-10
VCPU = 9,10,0-3
VCPU = 0,10,1,9,3,2

The THREAD_PRIORITY 属性指示分配给该组的线程的优先级

  • 如果没有给出 THREAD_PRIORITY,则默认优先级为 0。

  • 如果给出了 THREAD_PRIORITY,则属性值必须在 -20(最高优先级)到 19(最低优先级)的范围内。系统资源组的优先级必须在 -20 到 0 的范围内。用户资源组的优先级必须在 0 到 19 的范围内。对系统组和用户组使用不同的范围可确保用户线程的优先级永远不会高于系统线程。

ENABLEDISABLE 指定资源组最初是启用还是禁用。如果没有指定,则该组默认情况下是启用的。禁用的组不能分配线程。

示例

  • 创建一个启用的用户组,该组具有一个 CPU 和最低优先级

    CREATE RESOURCE GROUP rg1
      TYPE = USER
      VCPU = 0
      THREAD_PRIORITY = 19;
  • 创建一个禁用的系统组,该组没有 CPU 亲和性(可以使用所有 CPU)并且具有最高优先级

    CREATE RESOURCE GROUP rg2
      TYPE = SYSTEM
      THREAD_PRIORITY = -20
      DISABLE;

资源组管理是发生在服务器上的本地操作。 CREATE RESOURCE GROUP 语句不会写入二进制日志,也不会复制。