首批通过分布式安全可靠测评,为关键业务系统打造
创建表组
更新时间:2026-04-30 19:05:08
您可以根据业务需要,创建具有 SHARDING 属性的表组。
使用限制
OceanBase 数据库升级过程中,禁止创建表组。
创建表组
创建表组需要当前用户拥有全局 CREATE(*.*)权限。创建表组的 SQL 语句如下:
CREATE TABLEGROUP tablegroup_name [tablegroup_option];
tablegroup_option:
SHARDING = 'NONE'
SHARDING = 'PARTITION'
SHARDING = 'ADAPTIVE'
语句使用说明:
tablegroup_name:待创建的表组名。SHARDING:表组属性。不同属性值对表组中表的要求不同。如果不指定SHARDING属性,则默认创建SHARDING = 'ADAPTIVE'的表组。SHARDING = 'NONE':表示对加入表组的表没有任何限制。SHARDING = 'PARTITION':要求加入表组的所有表其对应的一级分区必须与表组中所有表的一级分区的分区定义一致,包括分区类型、分区个数、分区值。相同的分区定义具体指:
- 分区类型相同,例如,都是 Range 分区。
- 如果是 Hash 分区,要求引用的列数相同,并且分区个数相同。
- 如果是 Range 分区,要求引用的列数相同,分区数相同,Range 分割点也相同。
SHARDING = 'ADAPTIVE':要求加入表组的所有表其对应的一级分区和二级分区必须与表组中所有表的一级分区和二级分区的分区定义一致,包括分区类型、分区个数、分区值。相同的分区定义具体指:
- 分区类型相同,例如,都是 Hash + Range 分区。
- 如果是 Hash 分区,要求引用的列数相同,并且分区个数相同。
- 如果是 Range 分区,要求引用的列数相同,分区数相同,Range 分割点也相同。
- 对于二级分区,根据其分区类型,与一级分区的要求相同。
创建表组的示例如下:
CREATE TABLEGROUP tblgroup1 SHARDING = 'NONE';
后续操作
创建表组后,可以将符合条件的已有表加入到表组中,具体操作请参见 将表添加到表组。