DLM功能使用了两张系统表,即mysql.dlm_policies
表和mysql.dlm_progress
表,您可以使用高权限账户查看当前集群上所有可用的DLM策略和DLM策略的执行记录。系统启动时会自动创建这两张表,无需您手动创建。
mysql.dlm_policies表
表mysql.dlm_policies
主要用于记录当前集群上所有可用的DLM策略。
表结构
CREATE TABLE `dlm_policies` (
`Id` bigint(20) NOT NULL AUTO_INCREMENT,
`Table_schema` varchar(64) NOT NULL,
`Table_name` varchar(64) NOT NULL,
`Policy_name` varchar(64) NOT NULL,
`Policy_type` varchar(64) DEFAULT NULL,
`Archive_type` varchar(20) DEFAULT NULL,
`Storage_mode` varchar(20) DEFAULT NULL,
`Storage_engine` varchar(64) DEFAULT NULL,
`Storage_media` varchar(20) DEFAULT NULL,
`Storage_schema_name` varchar(64) DEFAULT NULL,
`Storage_table_name` varchar(64) DEFAULT NULL,
`Data_compressed` varchar(10) DEFAULT 'OFF',
`Compressed_algorithm` varchar(64) DEFAULT NULL,
`Enabled` varchar(10) DEFAULT 'ON',
`Priority_number` int(11) NOT NULL,
`Tier_partition_number` int(11) DEFAULT '0',
`Tier_condition` varchar(512) DEFAULT NULL,
`Extra_info` json NOT NULL,
`Comment` varchar(2048) DEFAULT NULL,
PRIMARY KEY (`Id`),
UNIQUE KEY `unique_policy` (`Table_schema`,`Table_name`,`Policy_name`)
) /*!50100 TABLESPACE `mysql` */ ENGINE=InnoDB AUTO_INCREMENT=24 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='PolarDB DLM policies table'
1 row in set (0.00 sec)
参数说明
参数 | 说明 |
Id | 自增主键。 |
Table_schema | DLM策略对应表所在数据库。 |
Table_name | DLM策略对应表的表名称。 |
Policy_name | DLM策略的名称。 |
Policy_type | DLM策略的类型。取值范围:
|
Archive_type | DLM策略的执行方式。取值范围:
|
Storage_mode | 存储模式。取值范围:
|
Storage_engine | DLM表的存储引擎,目前仅支持将数据归档为CSV格式。 |
Storage_media | DLM表的存储介质,目前仅支持OSS引擎,对应OSS存储。 |
Storage_schema_name | DLM归档为表时,表所在的数据库。 |
Storage_table_name | DLM归档为表时的表名称。 |
Data_compressed | 归档后的数据是否压缩。暂不支持。 |
Compressed_algorithm | 数据压缩算法。暂不支持。 |
Enabled | DLM策略是否生效。取值范围:
|
Priority_number | DLM策略的执行优先级。暂不支持。 |
Tier_partition_number | 以PARTITION COUNT进行数据归档时,执行的分区数量。 |
Tier_condition | 以CONDITION进行数据归档时的执行条件。暂不支持。 |
Extra_info | 其他信息。 |
Comment | DLM策略的备注。 |
mysql.dlm_progress表
表mysql.dlm_progress
主要用于保存当前集群上DLM策略的执行记录。
表结构
CREATE TABLE `dlm_progress` (
`Id` bigint(20) NOT NULL AUTO_INCREMENT,
`Table_schema` varchar(64) NOT NULL,
`Table_name` varchar(64) NOT NULL,
`Policy_name` varchar(64) NOT NULL,
`Policy_type` varchar(64) DEFAULT NULL,
`Archive_option` varchar(64) DEFAULT NULL,
`Storage_engine` varchar(64) DEFAULT NULL,
`Storage_media` varchar(20) DEFAULT NULL,
`Data_compressed` varchar(10) DEFAULT 'OFF',
`Compressed_algorithm` varchar(64) DEFAULT NULL,
`Archive_partitions` varchar(2048) DEFAULT NULL,
`Archive_stage` varchar(64) DEFAULT NULL,
`Archive_percentage` int(11) DEFAULT NULL,
`Archived_file_info` json NOT NULL,
`Start_time` datetime NOT NULL,
`End_time` datetime DEFAULT NULL,
`Extra_info` json NOT NULL,
PRIMARY KEY (`Id`),
UNIQUE KEY `unique_progress` (`Table_schema`,`Table_name`,`Policy_name`,`Start_time`)
) /*!50100 TABLESPACE `mysql` */ ENGINE=InnoDB AUTO_INCREMENT=21 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='PolarDB DLM progress table'
1 row in set (0.00 sec)
参数说明
参数 | 说明 |
Id | 自增主键。 |
Table_schema | DLM策略对应表所在数据库。 |
Table_name | DLM策略对应表的表名称。 |
Policy_name | DLM策略的名称。 |
Policy_type | DLM策略的类型。取值范围:
|
Archive_option | DLM策略的执行条件。 |
Storage_engine | DLM策略的存储引擎,目前仅支持将数据归档为CSV格式。 |
Storage_media | DLM策略的存储介质。取值范围:
|
Data_compressed | 归档后的数据是否压缩。暂不支持。 |
Compressed_algorithm | 数据压缩算法。暂不支持。 |
Archive_partitions | DLM归档分区的名称。 |
Archive_stage | DLM的执行阶段。具体阶段如下:
说明
|
Archive_percentage | 当前DLM策略执行进度百分比。 |
Archived_file_info | DLM策略归档后的文件信息。 |
Start_time | 开始执行DLM策略的时间。 |
End_time | DLM策略执行结束的时间。 |
Extra_info | 其他信息。 |