云数据库 GAUSSDB(FOR MYSQL)-多租户管理与资源隔离:使用须知

时间:2024-10-28 17:02:19

使用须知

  • 多租户管理与资源隔离功能支持租户级数据隔离、租户级CPU资源隔离、用户级CPU资源隔离。
  • 多租户管理与资源隔离功能需要 GaussDB (for MySQL)实例内核版本为2.0.57.240900及以上。
  • 开启多租户管理与资源隔离前必须开启thread pool功能。
  • 开启多租户管理与资源隔离功能前,要求实例中的数据库名称、用户名称、表空间名称不能包含@字符。
  • Serverless不支持多租户管理与资源隔离功能。
  • 租户跨实例迁移:
    开启多租户管理与资源隔离功能后,DRS迁移可以迁移所有租户下的数据,但DRS不会同步租户相关元数据,故租户信息不会被同步到目标端。如果需要迁移某个租户到另一个实例,需要遵循以下步骤:
    1. 目标端需要使用具备多租特性的实例,首先在目标端手动创建租户。
    2. 使用DRS数据同步功能创建库级同步任务(如果源端和目标端租户名有改动,则这里需要改动目标端库名)。

    3. 进行同步。
  • Binlog:

    目前Binlog没有实现租户隔离,如果允许普通租户拉取Binlog会破坏租户间数据隔离,因此当前禁止普通租户下的用户拉取Binlog。

  • 数据库代理:

    因HTAP标准版和轻量版不支持带@字符的数据库,普通租户下的数据库迁移到该类HTAP引擎时会更改目标端库名,但数据库代理的自动行存/列存引流功能要求源端和目标端的库名一致,因此普通租户创建的数据库将无法使用数据库代理的自动行存/列存引流功能。

  • 备份恢复:

    恢复已打开过多租开关的多租实例数据到新实例,未开启多租开关下,新实例不支持创建带@的用户、数据库和表空间。

  • 兼容性:
    • 先开启后关闭多租开关,创建数据库、用户和表空间时,名称中不能包含@字符。
    • 普通租户下,数据库名称最大长度由64降低为50,用户名称最大长度由32降低为20。
    • 系统库mysql、sys暂不开放给普通租户。
    • 普通租户下,系统库performance_schema里的表使用用户名或库名做条件查询时,需要使用模糊搜索。
    • 系统租户的root用户可以kill/ kill query 其他用户的session;普通租户的用户,只能kill/kill query当前用户的session。
    • 多租实例不支持全文索引。
support.huaweicloud.com/kerneldesc-gaussdbformysql/gaussdbformysql_20_0053.html