全部产品
Search
文档中心

云原生数据库 PolarDB:参数配置

更新时间:Jun 17, 2025

本文将详细介绍PolarDB MySQL版内核参数信息。

您可以在这里了解到根据不同的功能的相关参数。

说明

集群参数在PolarDB控制台上都已加上MySQL配置文件的兼容性前缀loose_

列存索引(IMCI)

参数名称

级别

参数说明

loose_allow_implicit_imci_alter_comment

Session

是否允许修改表级备注信息。取值范围如下:

  • ON(默认):以修改备注的方式创建列存索引。

  • OFF:以不修改备注的方式创建列存索引。

loose_imci_enable_pack_order_key

Global/Session

新建列存索引时数据排序功能控制开关。取值如下:

  • ON(默认):开启新增列存索引时数据排序功能。

  • OFF:关闭新增列存索引时数据排序功能。

loose_imci_enable_pack_order_key_changed_rebuild

Global

列存索引在索引排序发生变化时,是否需要重建表。取值范围如下:

  • ON:列存索引在Order Key发生变化时,需要重建表。

  • OFF(默认):列存索引在Order Key发生变化时,不需要重建表。

loose_imci_parallel_build_threads_per_table

Global

设置列索引的排序键的单张表的线程数量。

取值范围:1~128。默认值:8。

loose_imci_optimizer_switch

Global/Session

是否在满足条件的查询语句中使用Hybrid Plan加速宽表查询。取值范围如下:

  • 'force_hybrid_index_search=OFF'(默认):不强制使用Hybrid Plan加速宽表查询(通过优化器自动选择)。

  • 'force_hybrid_index_search=ON':强制使用Hybrid Plan加速宽表查询。

说明

如果查询语句中涉及的表没有统计信息,或未启用列存索引的基数估计和代价计算功能,即使该参数设置为ON,列存索引的JOIN REORDER功能也不会启用。

loose_imci_auto_update_statistic

Global/Session

当统计信息过旧时,列存索引(IMCI)优化器是否重新收集统计信息。取值如下:

  • ASYNC(默认):当统计信息过旧时,列存索引(IMCI)优化器会异步采样并重新收集统计信息。

  • SYNC:当统计信息过旧时,列存索引(IMCI)优化器会同步采样并重新收集统计信息。

  • OFF:当统计信息过旧时,列存索引(IMCI)优化器不会重新收集统计信息。

loose_imci_max_enum_join_pairs

Global

在使用列存索引功能并开启连接重排序时,允许列存索引(IMCI)优化器搜索的等价执行计划数量。

取值范围:0~4294967295。默认值:2000。

loose_etl_from_imci

Global/Session

是否开启使用ETL从列存中读取数据。取值范围如下:

  • ON:开启。

  • OFF(默认):关闭。

  • FORCED:取消事务限制。

loose_etl_from_imci_compress

Global/Session

从只读列存节点读取数据时,是否需要压缩文件。取值如下:

  • ON:从只读列存节点读取数据时,压缩文件。

  • OFF(默认):从只读列存节点读取数据时,不压缩文件。

loose_imci_enable_hybrid_plan

Global

使用Hybrid Plan加速宽表查询功能的控制开关。取值范围如下:

  • ON(默认):开启Hybrid Plan加速宽表查询功能。

  • OFF:关闭Hybrid Plan加速宽表查询功能。

loose_imci_enable_window_function

Global

含有窗口函数的SQL语句能否使用列存索引功能。取值范围如下:

  • 2(默认):含有窗口函数的SQL语句可以使用列存索引功能。

  • 1:含有窗口函数,且窗口函数中不指定FRAME的SQL语句,可以使用列存索引功能。

  • 0:含有窗口函数的SQL语句不支持使用列存索引功能。

loose_imci_min_virtual_memory

Global

使用列存索引进行查询的最小内存。

取值范围:1~9223372036854775807。默认值:DBNodeClassMemory*3/20。单位为Byte。

loose_imci_max_virtual_memory

Global

使用列存索引进行查询的最大内存。

取值范围:1~9223372036854775807。默认值:9223372036854775807。单位为Byte。

loose_imci_ap_threshold

Global/Session

分发至列存节点的SQL语句的预估执行代价阈值。

取值范围:1~18446744073709551615。默认值:50000。

说明

开启列存和行存自动引流功能后,如果SQL语句的预估执行代价阈值大于50000,则路由至列存节点。

loose_cost_threshold_for_imci

Session

列存节点内部当前SQL语句的预估执行代价阈值。

取值范围:1~18446744073709551615。默认值:50000。

说明

开启列存和行存自动引流功能后,如果SQL语句的预估执行代价阈值大于50000,则选择列存执行计划。否则,选择行存执行计划。

loose_imci_enable_query_trace

Global

列存索引查询优化过程中,是否打印内核错误日志的控制开关。取值范围如下:

  • ON:列存索引查询优化过程中,打印内核错误日志。

  • OFF(默认):列存索引查询优化过程中,不打印内核错误日志。

loose_polar_enable_implicit_imci_with_create_table

Global

是否为所有新建的表添加全表覆盖的列索引。取值范围如下:

  • ON:为所有新建的表添加全表覆盖的列索引。

  • OFF(默认):不为所有新建的表添加全表覆盖的列索引。

loose_imci_columnar_advise_buffer_size

Global

设置dbms_imci.columnar_advise();存储过程的可用内存大小。

取值范围:0~18446744073709551615。默认值:8388608。单位为Byte。

loose_imci_default_pack_shift

Global

设置列存索引的行组(row group)大小。

取值范围:7~18。默认值:14。

说明

PolarDB MySQL版8.0.1版本且小版本为8.0.1.1.36及之前版本,该参数的默认值为16。

loose_slow_log_record_imci

Global

设置是否在慢日志中添加与列存索引相关的信息。取值范围如下:

  • ON:在慢日志中添加与列存索引相关的信息。

  • OFF(默认):在慢日志中不添加与列存索引相关的信息。

loose_imci_default_write_policy

Global

设置列存索引数据的写入策略。取值范围如下:

  • Tradeoff(默认):在Skip4K基础上进行优化,当写入的数据量小于1 MB时等价于ForPerformance。写入的数据量大于或等于1 MB时,尽可能地将数据分割到不同的文件中。

  • ForCapacity:优先考虑存储空间,尽可能地将数据切分后跨越多个文件进行写入,以最大化减少内部碎片,每次写入最多产生1个4 KB的内部碎片。

  • ForPerformance:优先考虑性能,每次写入时选择一个ExtentSize最合适的文件。IO性能最好,内部碎片率最大,空间浪费较多。

  • Skip4K:数据切分逻辑类似ForCapacity。大于4 KB的数据在写入时完全不考虑4 KB Extent,每次写入最多产生1个16 KB的内部碎片。

弹性并行查询(Elastic Parallel Query)

参数名称

级别

参数说明

loose_max_parallel_degree

Global/Session

单个查询的最大并行度,即并行执行的最大Worker数量。

取值范围:0~1024。默认值:0,表示关闭并行查询。

说明
  • PolarDB优化器可能会对主查询和子查询分别并行执行,如果同时并行执行,它们的最大Worker数不能超过loose_max_parallel_degree的值,整个查询使用的Worker数为主查询和子查询使用的Worker数之和。

  • 控制台中的并行查询设置与loose_max_parallel_degree参数说明如下:

    • 若控制台和系统参数loose_max_parallel_degree均有设置,则以控制台配置为准。因此,建议使用控制台来开启并行查询。

    • 若控制台未开启并行查询,但系统参数loose_max_parallel_degree被设置为大于0时,相当于默认开启了单机并行。

loose_max_parallel_workers

Global

最大允许同时运行的并行worker线程数,超过该值后并行查询需要进入任务队列中等待。

取值范围:1~10000。默认值为CPU核数的2倍。

说明
  • loose_max_parallel_workers参数在Serverless集群中会根据节点规格的弹性扩展/收缩而进行调整。

  • 更多关于并行查询排队策略的详细介绍,请参见并行资源控制策略配置

loose_queuing_parallel_degree_limit

Global

最大允许同时进入并行排队的并行度总和,超过该值后查询将被禁止并行查询,回退为串行执行。

取值范围:0~10000。默认值:64。

loose_pq_max_queuing_time

Global/Session

并行查询在队列中最大等待时间,等待时间超出该值后直接回退为串行执行。

取值范围:0~18446744073709551615。默认值:200。单位:毫秒。

loose_parallel_degree_policy

Global

设置单个查询的并行度配置策略,取值范围如下:

  • TYPICALPolarDB选择查询并行度时不会考虑数据库负载(如CPU使用率等),而尽可能与loose_max_parallel_degree设置的并行度保持一致。

  • AUTOPolarDB会根据数据库负载(如CPU使用率等)来决定是否禁止并行查询计划,并会根据查询代价选择并行度。

  • REPLICA_AUTO(默认):仅只读节点会根据数据库负载(如CPU使用率等)决定是否禁止并行查询计划,并会根据查询代价选择并行度,而主节点不会开启并行查询。

说明

更多关于并行度配置策略的详细介绍,请参见并行资源控制策略配置

loose_records_threshold_for_parallelism

Session

若优化器估算出语句中存在扫描记录数超过该阈值的表,优化器会考虑选择并行执行计划

取值范围:0~18446744073709551615。默认值:10000。

说明

若您的业务量较小或复杂查询业务并发较低,您可以选择将该阈值设置为2000或以上。

loose_cost_threshold_for_parallelism

若优化器估算查询的串行执行代价超过该阈值,优化器会考虑选择选择并行执行计划

取值范围:0~18446744073709551615。默认值:50000。

loose_records_threshold_for_mpp

查询语句中表扫描行数超过该阈值后,优化器会考虑选择多机并行执行方式。

取值范围:0~18446744073709551615。默认:0,含义是自动取值loose_records_threshold_for_parallelism的N倍,N为ePQ集群的节点个数

loose_cost_threshold_for_mpp

查询语句的串行执行代价超过该阈值后,优化器会考虑选择多机并行执行方式。

取值范围:0~18446744073709551615。默认值:0,含义是自动取值loose_cost_threshold_for_parallelism的N倍,N为节点个数

loose_auto_dop_cpu_pct_hwm

Global

CPU使用率阈值。若CPU使用率超过阈值,PolarDB会禁止并行查询计划。

取值范围:0~100。默认值:70。

loose_auto_dop_mem_pct_hwm

内存使用率阈值。若内存使用率超过阈值,PolarDB会禁止并行查询计划。

取值范围:0~100。默认值:90。

loose_auto_dop_iops_pct_hwm

IOPS使用率阈值。若IOPS使用率超过阈值,PolarDB会禁止并行查询计划。

取值范围:0~100。默认值:80。

查询优化

参数名称

级别

参数说明

loose_polar_optimizer_switch

Global/Session

仅开启或关闭子查询折叠功能。默认不做子查询合并。

取值范围如下:

  • coalesce_subquery=ON:开启子查询折叠功能。

  • coalesce_subquery=OFF:关闭子查询折叠功能。

Global/Session

查询优化控制开关。取值范围如下:

  • 'having_cond_pushdown=ON'(默认):开启条件下推(HAVING to WHERE)功能。

  • 'having_cond_pushdown=OFF':关闭条件下推(HAVING to WHERE)功能。

Global/Session

连接条件下推开关。取值范围如下:

  • 'join_predicate_pushdown=ON'(默认):开启连接条件下推功能。

  • 'join_predicate_pushdown=OFF':关闭连接条件下推功能。

loose_in_predicate_conversion_threshold

Global

IN谓词转JOIN功能控制开关。

当SQL语句的IN列表中的元素个数大于或等于该参数值时,SQL语句进行转换,将IN谓词转换为JOIN。

取值范围:0~999999。默认值:5000。

说明

当该参数设置为0时,表示关闭该功能。

loose_join_elimination_mode

Global

LEFT JOIN(左连接)消除功能控制开关。取值范围:

  • REPLICA_ON(默认):仅在只读节点开启LEFT JOIN(左连接)消除功能。

  • ON:开启LEFT JOIN(左连接)消除功能。

  • OFF:关闭LEFT JOIN(左连接)消除功能。

loose_join_predicate_pushdown_opt_mode

Global

用于控制在何种节点上开启连接条件下推功能。取值范围如下:

  • REPLICA_ON(默认):仅在只读节点开启连接条件下推功能。

  • ON:在所有节点都开启连接条件下推功能。

  • OFF:在所有节点都关闭连接条件下推功能。

loose_having_cond_pushdown_mode

Global

控制在何种节点上开启条件下推(HAVING to WHERE)功能。取值范围如下:

  • REPLICA_ON(默认):仅在只读节点开启条件下推(HAVINGtoWHERE子句)功能。

  • ON:在所有节点都开启条件下推(HAVINGtoWHERE子句)功能。

  • OFF:在所有节点都关闭条件下推(HAVINGtoWHERE子句)功能。

loose_derived_cond_pushdown_mode

Global

条件下推(WHERE条件下推派生表)控制开关。取值范围:

  • OFF:关闭条件下推(WHERE to Derived Tables)功能。

  • ON:开启条件下推(WHERE to Derived Tables)功能。

  • REPLICA_ON(默认):仅在只读节点开启条件下推(WHERE to Derived Tables)功能。

loose_subquery_cond_pushdown_mode

Global

条件下推(WHERE子句下推至IN子查询)下推功能的控制开关。取值范围如下:

  • REPLICA_ON:仅在只读节点开启该条件下推功能。

  • ON:开启该条件下推功能。

  • OFF(默认):关闭该条件下推功能。

loose_join_cond_push_into_derived_mode

Global

条件下推(连接条件下推至物化派生表)下推功能的控制开关。取值范围如下:

  • REPLICA_ON(默认):仅在只读节点开启该条件下推功能。

  • ON:开启该条件下推功能。

  • OFF:关闭该条件下推功能。

loose_predicate_deduce_mode

Global

谓词推导(条件下推增强)功能控制开关。取值范围如下:

  • REPLICA_ON:仅在只读节点开启谓词推导功能。

  • ON:开启谓词推导功能。

  • OFF(默认):关闭谓词推导功能。

loose_plan_cache_type

Session

计划缓存 (Auto Plan Cache)模式。取值如下:

  • OFF(默认):关闭Auto Plan Cache功能。

  • AUTO:自动将满足缓存条件的SQL语句的执行计划缓存在Plan Cache中。

    说明

    缓存条件:

    SQL语句的整体执行时间阈值大于或等于loose_auto_plan_cache_time_threshold参数值,且SQL语句的优化时间占整体执行时间阈值的百分比阈值大于或等于loose_auto_plan_cache_pct_threshold参数值时,该SQL语句的执行计划会被缓存到Plan Cache中。

  • DEMAND:将指定SQL语句的执行计划缓存在Plan Cache中。

  • ENFORCE:强制将所有SQL语句的执行计划缓存在Plan Cache中。

loose_plan_cache_expire_time

Session

计划缓存 (Auto Plan Cache)中的执行计划超过该时间没有被命中,内存会被回收。单位为秒。

取值范围:0~4294967295。默认值:1800。

loose_auto_plan_cache_pct_threshold

Session

优化时间占语句整体执行时间的百分比阈值。

取值范围:0~100。默认值:20。

loose_auto_plan_cache_time_threshold

Session

SQL语句整体执行时间阈值。单位为微秒。

取值范围:0~18446744073709551615。默认值:400。

loose_auto_plan_cache_count_threshold

Session

loose_plan_cache_type参数设置为AUTO时,满足缓存条件的SQL语句的执行计划缓存到Plan Cache中的次数阈值。

取值范围:0~18446744073709551615。默认值:512。

说明

缓存到Plan Cache中的次数阈值大于或等于loose_auto_plan_cache_count_threshold参数值时,缓存中的执行计划才会生效。

loose_adaptive_plans_switch

Global/Session

自适应执行能力控制开关。取值范围如下:

  • imci_chosen:在行列路由中使用自适应执行的开关。

    • ON(默认):开启行列路由中使用自适应执行,但仍然需要正确配置列存节点才能生效。

    • OFF:禁止行列路由中使用自适应执行。

  • ordering_index:在行列路由中使用自适应选取有序索引的开关。

    • ON:开启自适应调整有序索引选择的功能。

    • OFF(默认):禁止自适应调整有序索引选择结果。

loose_adaptive_cost_threshold_for_imci

Global/Session

设置行列自适应执行能力分流代价阈值。

取值范围:1~18446744073709551615。默认值:50000。

说明

该参数适用的数据库引擎版本如下:

  • PolarDB MySQL版8.0.1版本且修订版本为8.0.1.1.49及以上。

  • PolarDB MySQL版8.0.2版本且修订版本为8.0.2.2.29及以上。

loose_adaptive_plans_max_time

Global/Session

允许切换自适应执行能力的SQL语句已执行时间的最大值。即当查询语句在原计划的执行时间超过该时间后,即使触发切换计划阈值,也不再切换执行计划。

取值范围:0~1800000。默认值为500。单位为毫秒。

loose_adaptive_ordering_rows_threshold

Global/Session

设置有序索引的自适应选择检查点。有效索引值越小,将越早进行自适应检查和调整。

取值范围:0~4294967295。默认值为50000。

loose_optimizer_switch

Global/Session

Limit Offset下推的总控制开关。其中,计算下推的子控制开关如下:

  • limit_offset_pushdown:Limit Offset下推优化开关。

    • ON(默认):开启Limit Offset下推优化开关。

    • OFF:关闭Limit Offset下推优化开关。

  • detach_range_condition:谓词完全下推优化开关。

    • ON(默认):开启谓词完全下推优化开关。

    • OFF:关闭谓词完全下推优化开关。

loose_bloom_filter_enabled

Global/Session

Bloom Filter优化开关。取值范围如下:

  • ON(默认):开启Bloom Filter优化开关。

  • OFF:关闭Bloom Filter优化开关。

DDL优化

参数名称

级别

参数说明

loose_innodb_support_instant_add_column

Global

秒级加字段功能的开关,取值范围如下:

  • ON:开启秒级加字段功能。

  • OFF(默认):关闭秒级加字段功能。

说明

该参数适用的数据库引擎版本如下:

  • PolarDB MySQL版5.6版本的秒级加列功能目前处于灰度阶段。如需使用,请前往配额中心,根据配额IDpolardb_mysql_iac_56找到配额名称,在对应的操作列单击申请来开通该功能。

  • PolarDB MySQL版5.7版本且修订版本为5.7.1.0.6及以上,您需要先开启loose_innodb_support_instant_add_column参数才能在PolarDB MySQL版5.7版本的集群上使用该功能。

  • PolarDB MySQL版8.0版本无需配置该参数即可直接使用秒级加字段功能。

loose_innodb_polar_instant_modify_column_enable

Global

秒级修改字段功能控制开关。取值范围如下:

  • ON:开启秒级修改字段功能。

  • OFF(默认):关闭秒级修改字段功能。

说明

PolarDB MySQL版秒级修改字段功能目前处于灰度发布阶段。如需使用请前往配额中心,根据配额IDpolarm_82_instant_modify_column找到配额名称,在对应的操作列单击申请来开通该功能。

loose_innodb_polar_instant_modify_column_max_times

Global

设置单表允许的秒级修改字段最大次数。

取值范围:1~64。 默认值:16。

loose_innodb_support_instant_modify_charset

Global

秒级修改列字符集功能控制开关。取值范围如下:

  • OFF(默认):关闭秒级修改列字符集功能。

  • ON:开启秒级修改列字符集功能。

说明

集群版本需为以下版本之一:

  • PolarDB MySQL版8.0.1版本且修订版本为8.0.1.1.40及以上,您需要先配置loose_innodb_support_instant_modify_charset参数才能在PolarDB MySQL版8.0.1版本的集群上使用该功能。

  • PolarDB MySQL版8.0.2版本的集群默认支持秒级修改列字符集功能,无需配置任何参数。

loose_innodb_polar_parallel_ddl_threads

Session

控制每一个DDL操作的并行线程数。取值范围:1~16。默认值:1,即执行单线程DDL。

若该参数值不为1,当执行创建二级索引操作时将自动开启并行DDL。

说明

该参数取值为1的时候,系统默认开启2个并行线程数。

innodb_parallel_build_primary_index

Global

控制是否允许创建主键索引时使用并行DDL功能。取值范围如下:

  • ON:允许创建主键索引时使用并行DDL功能。

  • OFF(默认):不允许创建主键索引时使用并行DDL功能。

说明

该参数当前处于灰度发布阶段。如有需求,请前往配额中心,在配额名称PolarDB并行创建主键试用白名单操作列,单击申请,申请试用。

loose_innodb_polar_use_sample_sort

Session

sample sort优化功能开关,取值范围如下:

  • ON:开启sample sort优化功能开关。

  • OFF(默认):关闭sample sort优化功能开关。

loose_innodb_polar_use_parallel_bulk_load

Session

并行bulk load优化功能开关,取值范围如下:

  • ON:开启并行bulk load优化功能开关。

  • OFF(默认):关闭并行bulk load优化功能开关。

loose_innodb_polar_ddl_build_index_readahead

Global

DDL预读功能的开关,取值范围如下:

  • ON:开启DDL预读功能。

  • OFF(默认):关闭DDL预读功能。

loose_innodb_polar_ddl_build_index_readahead_page_num

Global

DDL预读的page数量,一个page大小是16k。

取值范围:32~256。默认值:64。

loose_innodb_polar_ddl_async_io

Global

DDL异步IO功能开关。取值范围如下:

  • ON:开启DDL异步IO功能。

  • OFF(默认):关闭DDL异步IO功能。

loose_innodb_polar_parallel_merge_ways

Session

设置建立索引过程中归并排序的路数。

取值范围:2~16。默认值:2,表示数据库默认为二路归并排序。当该参数值大于2时,表示开启多路归并排序。

loose_innodb_flush_pages_using_space_id

Global

Faster TRUNCATE/DROP TABLE功能开关。取值范围如下:

  • ON(默认值):开启Faster TRUNCATE/DROP TABLE功能。

  • OFF:关闭Faster TRUNCATE/DROP TABLE功能。

说明

PolarDB MySQL版集群版本需为5.7版本且小版本为5.7.1.0.21或以上。

loose_polar_nonblock_ddl_mode

Session

Nonblock DDL功能开关。取值范围如下:

  • ON:开启Nonblock DDL功能。

  • OFF(默认):关闭Nonblock DDL功能。

loose_polar_nonblock_ddl_retry_times

Session

设置获取MDL-X锁超时重试的次数。取值范围:0~31536000。默认值:0(由参数lock_wait_timeout计算得到的值)。

说明

该参数值建议设置为4194304。

loose_polar_nonblock_ddl_retry_interval

Session

设置获取MDL-X锁超时重试的时间间隔。

取值范围:0~31536000。单位为秒。默认值:6。

loose_polar_nonblock_ddl_lock_wait_timeout

Session

设置获取MDL-X锁超时的时间。

取值范围:1~31536000。单位为秒。默认值:1。

loose_innodb_bulk_load_page_grained_redo_enable

Global

DDL物理复制优化功能开关,取值范围如下:

  • ON:开启DDL物理复制优化。

  • OFF(默认):关闭DDL物理复制优化。

loose_polar_support_mdl_sync_preemption

Session

抢占式DDL功能开关。取值范围如下:

  • ON:开启抢占式DDL功能。

  • OFF(默认):关闭抢占式DDL功能。

loose_polar_mdl_sync_preempt_after_wait_second

Global

设置同步MDL锁阻塞时,等待超时的时间。到达此时间还未成功同步MDL锁,则开始抢占线程。

取值范围:1~31536000。默认值:10。

loose_polar_enable_explain_ddl

Global

EXPLAIN DDL功能开关。取值范围如下:

  • ON(默认):开启EXPLAIN DDL功能。

  • OFF:关闭EXPLAIN DDL功能。

loose_polar_max_collect_thd_num_in_explain_ddl

Global

控制收集的潜在MDL阻塞线程的数目。

取值范围:1~512,默认值:16。

loose_polar_performance_schema

Global

控制是否启用Polar Performance Schema功能。取值:

  • ON:开启Polar Performance Schema。

  • OFF:关闭Polar Performance Schema。

说明

您需要在控制台上将loose_polar_performance_schema参数设为ON,该参数需重启集群后才能生效。

performance_schema_max_thread_instances

Global

配置Polar Performance Schema监控的最大线程数。取值范围:-1~65536。取值为-1时,表示自适应。

说明

该参数已进行调优,不建议您自行修改。

performance_schema_max_metadata_locks

Global

配置Polar Performance Schema监控的最大MDL锁数。取值范围:-1~1048576。取值为-1时,表示自适应。

说明

该参数已进行调优,不建议用户自行修改。

loose_recycle_bin

Global/Session

表回收站功能开关。取值范围如下:

  • ON:打开表回收站功能开关。

  • OFF(默认):关闭表回收站功能开关。

loose_recycle_scheduler

Global

回收站的异步清理任务线程开关。取值范围如下:

  • ON:打开回收站的异步清理任务线程开关。

  • OFF(默认):关闭回收站的异步清理任务线程开关。

loose_recycle_bin_retention

Global

回收站内数据的最长保留周期。取值范围:86400~1209600(即14天),单位为秒。默认值为604800(即7天)。

重要

回收站清理任务线程状态如下:

  • 当 loose_recycle_scheduler=ON时,表回收站内的数据将基于设置的保留周期loose_recycle_bin_retention(默认值7天)进行自动清理。

  • 当 loose_recycle_scheduler=OFF时,表回收站内的数据将长期保留,不会自动清理。

Binlog管理

参数名称

级别

参数说明

loose_enable_large_trx_optimization

Global

开启或关闭Binlog大事务优化机制。取值范围如下:

  • OFF(默认):关闭Binlog大事务优化机制。

  • ON:开启Binlog大事务优化机制。

说明

该参数修改后立即生效,无需重启集群。

loose_binlog_large_trx_threshold_up

Global

Binlog大事务优化的阈值。开启Binlog大事务优化机制后,当单个事务产生的Binlog大小超过该阈值时,将采用优化的Binlog提交方式。

取值范围:10 MB~300 GB。默认值:1 GB。

说明

该参数修改后立即生效,无需重启集群。

高并发优化

参数名称

级别

参数说明

loose_ccl_mode

Global

超出并发数量时,SQL语句的行为。取值如下:

  • WAIT(默认):排队等待。等待其它SQL语句执行完成后执行该语句。

  • REFUSE:报错。

说明

PolarDB MySQL版 8.0版本支持该参数。5.6和5.7版本直接进行排队等待。

loose_ccl_max_waiting_count

Global

loose_ccl_mode参数设置为WAIT时,符合单个CCL规则的SQL语句排队等待的最大数量,超出该值时会报错。

取值范围:0~65536。默认值为0。

说明

PolarDB MySQL版 5.7和8.0版本支持该参数。

loose_hotspot

Global

热点行优化功能总开关。取值范围如下:

  • ON:开启。

  • OFF(默认):关闭。

loose_thread_pool_enabled

Global

是否开启线程池功能。取值:

  • ON:开启。

  • OFF(默认):关闭。

说明
  • 该参数不同版本默认值不一致。

    • PolarDB MySQL版5.6版本。默认值为OFF。

    • PolarDB MySQL版5.7版本、8.0版本默认值为ON。

  • 开启或关闭线程池功能无需重启集群。

loose_thread_pool_size

Global

线程池中线程组的数量。取值范围与集群中主节点规格的CPU核数有关。

取值范围:DBNodeClassCPU~DBNodeClassCPU*10。默认值:DBNodeClassCPU*2。

说明
  • DBNodeClassCPU为主节点规格的CPU核数,整数类型。

  • 数据库引擎MySQL 5.7版本默认值为DBNodeClassCPU。

举例如下:

  • 数据库引擎MySQL 8.0.1集群版系列中,主节点规格为4核8 GB,其取值范围和默认值分别为4~40和8。

  • 数据库引擎MySQL 8.0.1多主集群(库表)系列中,两个主节点规格为4核8 GB,其取值范围和默认值分别为8~80和16。

  • 数据库引擎MySQL 5.7集群版系列中,主节点规格为4核8 GB,其取值范围和默认值分别为4~40和4。

loose_thread_pool_high_prio_mode

Global

线程池高优先级队列模式。

取值范围如下:

  • transactions(默认):已开启事务的SQL将被加入高优先级队列,并被赋予thread_pool_high_prio_tickets这个门票,接下来执行的SQL都将被放入高优先级队列,直到门票被耗尽。

  • statements:所有SQL都会加入高优先级队列。

  • none:所有SQL都不加入高优先级队列。

说明

PolarDB MySQL版5.6和5.7版本支持该参数。

loose_thread_pool_high_prio_tickets

Global

高优先级队列的单次门票数。

取值范围:0~4294967295。默认值:4294967295。

说明

PolarDB MySQL版5.6和5.7版本支持该参数。

loose_thread_pool_idle_timeout

Global

释放线程池空闲线程的时间阈值,超过此时间,没有服务任何请求的空闲线程将被释放。

取值范围:0~31536000。默认值:60。单位:秒。

说明

PolarDB MySQL版5.6和5.7版本支持该参数。

loose_thread_pool_oversubscribe

Global

每个线程组中允许的活跃线程的数量。

取值范围:1~1000。默认值:20。

活跃线程是指正在执行SQL语句的线程,但是不包括以下两种情形:

  • SQL语句在等待磁盘I/O。

  • SQL语句在等待事务提交。

loose_thread_pool_stall_limit

Global

判断线程池进入拥塞状态的时间阈值。

当线程池进入拥塞状态时,系统会创建新的线程来服务SQL。

取值范围:1~18446744073709551615。默认值:10。单位:毫秒。

说明

数据库引擎MySQL 5.6版本默认值为30毫秒。

loose_bypass_thread_pool_ips

Global

配置不受线程池限制的客户端IP地址。即便线程池被占满时,也可以执行SQL来进行一些管理操作。

配置示例:

10.69.96.16,10.69.96.17
说明

PolarDB MySQL版8.0.1版本且小版本为8.0.1.1.19支持该参数。

loose_bypass_thread_pool_check_ignore_proxy

Global

配置高优先级别的数据库账号。配置后这些账号的请求将会被放到线程池的高优先级队列中,优先进行处理。

配置示例:

user1, user2
说明
  • PolarDB MySQL版8.0.1版本且小版本为8.0.1.1.19支持该参数。

  • 配置该参数后,仅对新建的数据库连接生效。

  • 不建议您配置过多的高优先级账号。

loose_thread_pool_high_priority_users

Global

配置DDL的线程池超时时间阈值。超过此时间后,将DDL标记为超时状态,系统会创建新的线程来处理请求。

取值范围:0~864000。默认值:600。单位:秒。

说明

PolarDB MySQL版8.0.1版本且小版本为8.0.1.1.19支持该参数。

loose_thread_pool_mark_ddl_thread_timeout_sec

Global

配置DDL的线程池超时时间阈值。超过此时间后,将DDL标记为超时状态,系统会创建新的线程来处理请求。

取值范围:0~864000。默认值:600。单位:秒。

说明

PolarDB MySQL版8.0.1版本且小版本为8.0.1.1.19支持该参数。

loose_thread_pool_mark_ddl_thread_timeout_immediately

Global

线程池处于高负载状态,造成低优先级队列发生堆积时,是否立刻将DDL标记为超时状态,此时系统会创建新的线程来处理请求。该参数适用于需要经常批量DDL的业务场景中。

取值范围:

  • ON:开启。

  • OFF(默认):关闭。

说明

PolarDB MySQL版8.0.1版本且小版本为8.0.1.1.19支持该参数。

loose_innodb_polar_blink_tree

Global

B-tree并发控制优化机制控制开关。取值范围如下:

  • OFF(默认):关闭B-tree并发控制优化机制。

  • ON:开启B-tree并发控制优化机制。

分区表

参数名称

级别

参数说明

loose_partition_level_mdl_enabled

Global

在线分区维护功能开关,取值范围如下:

  • ON:开启PARTITION Level MDL功能。

  • OFF:关闭PARTITION Level MDL功能。

说明

修改该参数需要重启集群。

loose_hybrid_partition_query_mix_engine_enabled

Global

查询混合分区表时,是否查询非InnoDB引擎中的分区数据。取值如下:

  • ON(默认):查询混合分区表时,查询非InnoDB引擎中的分区数据。

  • OFF:查询混合分区表时,不查询非InnoDB引擎中的分区数据。

闪回查询

参数名称

级别

参数说明

loose_innodb_backquery_enable

Global

打开或者关闭闪回查询功能。取值:

  • ON:打开。

  • OFF:关闭(默认)。

说明
  • 闪回查询功能需要开启innodb_backquery_enable参数,该参数默认关闭。使用该功能前,您需要在PolarDB集群的参数配置中先开启innodb_backquery_enable参数。

  • 如果您在开启innodb_backquery_enable参数之前执行闪回查询,系统会返回报错ERROR 1815 (HY000): Internal error: the backquery_time set is out of range, too old

loose_innodb_backquery_window

Global

闪回查询支持的时间长度。

取值范围:1~604800。默认值:86400。单位:秒。

loose_innodb_backquery_capacity_limit

Global

闪回查询支持的undo日志容量。当undo日志容量大于或等于该值时,将会缩短闪回查询支持的时间长度。

取值范围:100~200000000。默认值:100000000。单位:MB。

冷数据归档

参数名称

级别

参数说明

loose_csv_oss_buff_size

Session

当前一个OSS线程所占用的内存大小。默认值:134217728。单位:Byte。

取值范围:4096~134217728。

loose_csv_max_oss_threads

Global

当前允许运行的OSS线程数量。

取值范围:1~100。默认值为1。单位:个。

loose_max_oss_outfile_threads

Session

PolarDB可以同时启动的OSS OUTFILE线程数量。取值范围:1~100。默认值为1。单位:个。

您可以使用SHOW STATUS LIKE "oss_outfile_threads_running";命令查看当前集群正在运行的OSS OUTFILE线程数量。

说明

集群版本为PolarDB MySQL版8.0.1.1.38及以上的版本时,该参数已失效。

loose_oss_outfile_buffer_size

Global

单个OSS OUTFILE线程可以占用的内存大小。一般情况下,占用的内存越大,导出速度越快。

取值范围:102400~536870912。默认值:134217728。单位:Byte。

数据清理

参数名称

级别

参数说明

loose_innodb_enable_ttl_purge

Global

是否开启数据清理(TTL)开关。

取值范围如下:

  • OFF(默认):关闭。

  • ON:开启。

loose_innodb_ttl_min_interval

Global

设置数据过期时间时,允许的最小时间。

取值范围:0~4294967295。默认值为100。默认单位为秒。

loose_innodb_ttl_purge_thread

Global

数据清理(TTL)过期数据的线程数。修改后需重置innodb_enable_ttl_purge参数才能生效。

取值范围:2~32。默认值为4。单位为个。

loose_innodb_ttl_cluster_index_purge_batch_size

Global

数据清理(TTL)时,扫描主键的数量。

取值范围:10000~1000000。默认值为10000。单位为个。

loose_innodb_ttl_index_purge_batch_size

Global

数据清理(TTL)时,扫描TTL列索引的数据。

取值范围:500~1000000。默认值为500。单位为个。

loose_innodb_ttl_purge_start_hour

Global

数据清理(TTL)开始的时间。不得超过innodb_ttl_purge_end_hour

取值范围为0~23。默认值为0。单位为秒。

loose_innodb_ttl_purge_end_hour

Global

数据清理(TTL)数据结束的时间。不得小于innodb_ttl_purge_start_hour

取值范围为0~23。默认值为0。单位为秒。

其他功能

参数名称

级别

参数说明

loose_innodb_polar_log_rdma_transfer

Global

RDMA日志传输功能开关,取值范围:

  • ON:开启RDMA日志传输功能。

  • OFF(默认):关闭RDMA日志传输功能。

loose_partial_result_cache_enabled

Global/Session

Partial Result Cache(PTRC)功能开关。取值范围如下:

  • ON(默认):启用Partial Result Cache功能。

  • OFF:禁用Partial Result Cache功能。

loose_partial_result_cache_cost_threshold

Global/Session

Partial Result Cache(PTRC)的代价阈值。当单个查询的整体cost超过该阈值时,才使用PTRC。

取值范围:0~18446744073709551615。默认值:10000。

loose_partial_result_cache_check_frequency

Global/Session

触发Partial Result Cache(PTRC)动态反馈检测的频率,当累计cache miss的次数达到该值时触发一次检测。

取值范围:0~18446744073709551615。默认值:200。

loose_partial_result_cache_low_hit_rate

Global/Session

Partial Result Cache(PTRC)命中率的低水位阈值。当优化器估算的命中率高于此值时才考虑使用PTRC,如果已使用PTRC,动态反馈机制中发现真实命中率低于该值时,将直接放弃继续使用PTRC。

取值范围:0~100。默认值:20。

loose_partial_result_cache_high_hit_rate

Global/Session

Partial Result Cache(PTRC)命中率的高水位阈值。当内存使用达到上限并且命中率高于此值时,内存缓存变更为文件存储缓存,已缓存的数据也会转存至文件中。

取值范围:0~100。默认值:70。

loose_partial_result_cache_max_mem_size

Global/Session

单个查询中Partial Result Cache(PTRC)累积内存使用量。一个查询内部可能有多个PTRC,多个PTRC累计使用的内存不能超过该值。

取值范围:0~18446744073709551615。默认值:67108864。单位:Byte。