首批通过分布式安全可靠测评,为关键业务系统打造
系统配置项总览
更新时间:2025-09-04 11:02:09
本文根据配置项的功能, 详细地罗列了 OceanBase 数据库的集群级配置项和租户级配置项。
集群级配置项
带宽相关
| 配置项名 | 功能描述 |
|---|---|
| enable_ob_ratelimit | 用于在 RPC 连接中,启用区域之间的速率限制。 |
| ob_ratelimit_stat_period | 用于设置 OBServer 节点计算和更新最大带宽的时间间隔。 |
负载均衡相关
| 配置项名 | 功能描述 |
|---|---|
| balancer_idle_time | 用于设置负载均衡等后台任务线程空闲时的唤醒间隔时间。 |
| balancer_log_interval | 用于负载均衡等后台任务线程打印统计日志的间隔时间。 |
| balancer_task_timeout | 用于设置负载均衡等后台任务的超时时间。 |
| balancer_tolerance_percentage | 用于设置负载均衡策略中,租户内多个 Unit 间磁盘不均衡程度的宽容度,如果在均值 + 或 - 宽容度范围之内,不会触发执行均衡动作。 |
| enable_rebalance | 用于设置是否开启自动负载均衡的功能。 |
| server_balance_critical_disk_waterlevel | 用于设置磁盘空间的负载均衡功能的水位线。 |
| server_balance_disk_tolerance_percent | 用于设置节点间磁盘负载均衡策略中不均衡程度的容忍度。 |
| resource_hard_limit | 用于分配 Unit 。 |
| enable_sys_unit_standalone | 用于设置系统租户的 Unit 是否独占节点。 |
副本相关
| 配置项名 | 功能描述 |
|---|---|
| enable_rereplication | 日志流副本自动迁移复制的总开关。 |
| ls_meta_table_check_interval | 用于设置 DBA_OB_LS_LOCATIONS/CDB_OB_LS_LOCATIONS 视图的后台巡检线程的检查间隔。 |
| sys_bkgd_migration_change_member_list_timeout | 用于设置副本迁移时变更 Paxos 成员组操作的超时时间。 |
| sys_bkgd_migration_retry_num | 用于设置副本迁移失败时最多重试次数。 |
备份恢复相关
| 配置项名 | 功能描述 |
|---|---|
| backup_data_file_size | 用于控制单个数据备份文件的文件大小上限。 |
集群相关
| 配置项名 | 功能描述 |
|---|---|
| all_server_list | 用于显示群集中的所有服务器地址。 |
| cluster | 用于设置本 OceanBase 集群名。 |
| cluster_id | 用于设置本 OceanBase 集群 ID。 |
| rpc_timeout | 用于设置集群内部请求的超时时间。 |
SQL 相关
| 配置项名 | 功能描述 |
|---|---|
| sql_login_thread_count | 用于设置处理 SQL 登录请求的线程数量。 |
CPU 相关
| 配置项名 | 功能描述 |
|---|---|
| cpu_count | 用于设置系统 CPU 总数。如果设置为 0,系统将自动检测 CPU 数量。 |
| server_balance_cpu_mem_tolerance_percent | 在节点负载均衡策略中,用于设置 CPU 和内存资源不均衡的容忍度。 |
| server_cpu_quota_max | 用于设置系统可以使用的最大 CPU 配额。 |
| server_cpu_quota_min | 用于设置系统可以使用的最小 CPU 配额,系统会自动预留。 |
| token_reserved_percentage | 在控制租户 CPU 调度中,用于设置每次预留多少比例的空闲 token 数给租户。 |
| workers_per_cpu_quota | 用于设置分配给每个 CPU 配额的工作线程数量。 |
目录路径相关
| 配置项名 | 功能描述 |
|---|---|
| config_additional_dir | 用于设置本地存储配置文件的多个目录,为了冗余存储多份配置文件。 |
| data_dir | 用于设置存储 SSTable 等数据的目录。 |
内存空间相关
| 配置项名 | 功能描述 |
|---|---|
| datafile_disk_percentage | 表示占用 data_dir 所在磁盘(磁盘 data_dir 所在磁盘将被 OceanBase 数据库系统初始化用于存储数据)总空间的百分比。 |
| data_disk_usage_limit_percentage | 用于设置数据文件最大可以写入的百分比,超过这个阈值后,禁止数据迁入。 |
| enable_sql_operator_dump | 用于设置是否允许 SQL 处理过程的中间结果写入磁盘以释放内存。 |
| global_write_halt_residual_memory | 用于设置触发暂停普通租户写入(sys 租户不受影响)的全局剩余内存阈值。 |
| leak_mod_to_check | 用于内存泄露检查,是属于内部调试的功能。 |
| memory_chunk_cache_size | 用于设置内存分配器缓存的内存块容量。 |
| memory_limit | 表示可用的总内存大小。 |
| memory_limit_percentage | 用于设置系统总可用内存大小占总内存大小的百分比。 |
| memory_reserved | 用于设置系统预留给 KVCache 的内存容量。 |
| memstore_limit_percentage | 用于设置租户使用 MemStore 的内存占其总可用内存的百分比。 |
| system_memory | 用于设置系统预留给租户 ID 为 500 的租户的内存容量。 |
| use_large_pages | 用于管理数据库使用的内存大页。 |
调试相关
| 配置项名 | 功能描述 |
|---|---|
| debug_sync_timeout | 用于打开 Debug Sync 调试开关,并设置其超时时间。 |
| enable_rich_error_msg | 用于设置是否在客户端消息中添加服务器地址、时间、追踪 ID 等调试信息。 |
压缩算法相关
| 配置项名 | 功能描述 |
|---|---|
| default_compress_func | 用于设置表数据的默认压缩算法,也可以在建表的时候指定其他压缩算法。 |
| default_compress | 用于设置在 Oracle 模式下,建表时使用的默认压缩策略。 |
| tableapi_transport_compress_func | 用于设置 tableAPI 查询结果传输使用的压缩算法。 |
事务及事务日志相关
| 配置项名 | 功能描述 |
|---|---|
| log_disk_size | 用于设置 Redo 日志磁盘的大小。 |
| log_disk_percentage | 用于设置 Redo 日志占用其所在磁盘总空间的百分比。 |
| clog_sync_time_warn_threshold | 用于设置事务日志同步耗时告警阈值,同步耗时超过该值产生 WARN 日志。 |
| dtl_buffer_size | 用于设置 SQL 数据传输模块使用的缓存大小。 |
| ignore_replay_checksum_error | 用于设置是否忽略回放事务日志时发生的校验和错误。 |
| trx_2pc_retry_interval | 用于设置两阶段提交失败时候自动重试的时间间隔。 |
转储与合并相关
| 配置项名 | 功能描述 |
|---|---|
| enable_major_freeze | 用于设置是否开启自动全局冻结的功能。 |
| micro_block_merge_verify_level | 用于设置合并时宏块的校验级别。 |
| row_compaction_update_limit | 用于设置触发内存中行内数据合并的修改次数。 |
PX 相关
| 配置项名 | 功能描述 |
|---|---|
| px_workers_per_cpu_quota | 用于设置并行执行工作线程数的比例。 |
| px_task_size | 用于设置 SQL 并行查询引擎每个任务处理的数据量大小。 |
| max_px_worker_count | 用于设置 SQL 并行查询引擎使用的最大线程数。 |
缓存相关
| 配置项名 | 功能描述 |
|---|---|
| bf_cache_miss_count_threshold | 用于控制 Bloomfilter Cache 的触发次数,当宏块未命中次数达到该值时,创建 Bloomfilter 缓存。 |
| bf_cache_priority | 用于设置 Bloom Filter 缓存优先级。 |
| cache_wash_threshold | 用于设置触发缓存清理的容量阈值。 |
| fuse_row_cache_priority | 用于设置融合行缓存在缓存系统中的优先级。 |
| user_row_cache_priority | 用于设置基线数据行缓存在缓存系统中的优先级。 |
| autoinc_cache_refresh_interval | 用于设置自增列缓存的刷新间隔。 |
| plan_cache_evict_interval | 用于设置执行计划缓存的淘汰时间间隔。 |
| index_block_cache_priority | 用于设置元数据索引微块缓存优先级。 |
| opt_tab_stat_cache_priority | 用于设置统计信息缓存优先级。 |
| tablet_ls_cache_priority | 用于设置 Tablet 映射缓存优先级。 |
| user_block_cache_priority | 用于设置数据块缓存在缓存系统中的优先级。 |
Location Cache 相关
| 配置项名 | 功能描述 |
|---|---|
| virtual_table_location_cache_expire_time | 用于设置虚拟表的位置信息缓存过期时间。 |
| location_cache_refresh_rpc_timeout | 通过 RPC 刷新 location_cache 的超时时间。 |
| location_cache_refresh_sql_timeout | 通过 SQL 刷新 location_cache 的超时时间。 |
| location_cache_refresh_min_interval | 用于设置位置缓存刷新请求的最小间隔,防止产生过多刷新请求造成系统压力过大。 |
| location_cache_cpu_quota | 用于设置位置缓存模块使用的 CPU 配额。 |
| location_fetch_concurrency | 用于设置单机 location_cache 刷新的最大并发数。 |
| location_refresh_thread_count | 用于设置 OBServer 节点从 Root Service 中获取分区位置信息的线程数量。 |
日志相关
| 配置项名 | 功能描述 |
|---|---|
| enable_record_trace_log | 用于设置是否记录追踪日志。 |
| enable_async_syslog | 用于设置是否启用系统日志异步写。 |
| enable_syslog_recycle | 用于设置是否开启回收系统日志的功能。 |
| enable_syslog_wf | 用于设置是否把 WARN 以上级别的系统日志打印到一个单独的日志文件中。 |
| max_string_print_length | 用于设置打印系统日志时,单行日志最大长度。 |
| max_syslog_file_count | 用于设置在回收日志文件之前可以容纳的日志文件数量。 |
| syslog_level | 用于设置系统日志级别。 |
| trace_log_sampling_interval | 用于设置定期打印跟踪日志信息的时间。 |
分区相关
| 配置项名 | 功能描述 |
|---|---|
| tablet_meta_table_check_interval | 用于设置 DBA_OB_TABLET_REPLICAS/CDB_OB_TABLET_REPLICAS 视图的后台巡检线程的检查间隔。 |
| tablet_meta_table_scan_batch_count | 用于设置 Tablet meta table 迭代器使用过程中在内存里缓存的 Tablet 数量。 |
| tablet_size | 用于设置分区内部并行处理(合并、查询等)时每个分片的大小。 |
读写/查询相关
| 配置项名 | 功能描述 |
|---|---|
| weak_read_version_refresh_interval | 用于设置弱一致性读版本号的刷新周期,影响弱一致性读数据的延时。 |
| large_query_worker_percentage | 用于设置预留给处理大查询的工作线程百分比。 |
| large_query_threshold | 用于设置查询执行时间的阈值。 |
| trace_log_slow_query_watermark | 用于设置查询的执行时间阈值,如果查询的执行时间超过该阈值,则被认为是慢查询,慢查询的追踪日志会被打印到系统日志中。 |
Root Service 相关
| 配置项名 | 功能描述 |
|---|---|
| rootservice_async_task_queue_size | 用于设置 Root Service 内部异步任务队列的大小。 |
| rootservice_async_task_thread_count | 用于设置 Root Service 内部异步任务使用的线程池大小。 |
| rootservice_list | 用于显示 Root Service 及其副本所在的机器列表。 |
| rootservice_ready_check_interval | 用于设置 Root Service 启动后等待和检查集群状态的时间间隔。 |
| rootservice_memory_limit | 用于设置 Root Service 的最大内存容量限制。 |
| lease_time | 用于设置心跳租约时长。 |
| server_check_interval | 用于设置 Server 表一致性检查的时间间隔。 |
| server_permanent_offline_time | 用于设置节点心跳中断的时间阈值,即节点心跳中断多久后认为其被永久下线,永久下线的节点上的数据副本需要被自动补足。 |
| ob_event_history_recycle_interval | 用于控制历史事件的回收间隔。 |
I/O 相关
| 配置项名 | 功能描述 |
|---|---|
| rdma_io_thread_count | 用于设置 Libreasy 的 RDMA I/O 线程数。 |
| syslog_io_bandwidth_limit | 用于设置系统日志所能占用的磁盘 IO 带宽上限,超过带宽上限容量的系统日志将被丢弃。 |
| disk_io_thread_count | 用于设置磁盘 IO 线程数。必须为偶数。 |
| net_thread_count | 用于设置网络 I/O 线程数。 |
TCP 相关
| 配置项名 | 功能描述 |
|---|---|
| enable_tcp_keepalive | 用于开启或关闭客户端连接的探活机制。 |
| tcp_keepidle | 用于设置客户端连接上服务器后,如果没有数据发送,多久后会发送 Keepalive 探测分组,单位为秒。 |
| tcp_keepintvl | 用于设置开启客户端连接的探活机制后,前后两次探测之间的时间间隔,单位为秒。 |
| tcp_keepcnt | 用于设置关闭一个非活跃连接之前的最大重试次数。 |
其他
| 配置项名 | 功能描述 |
|---|---|
| builtin_db_data_verify_cycle | 用于设置数据坏块自检周期,单位为天。当值为 0 时表示不检查。 |
| data_storage_warning_tolerance_time | 用于控制数据盘状态设为 WARNING 状态的容忍时间。 |
| dead_socket_detection_timeout | 用于设置检测失效 Socket 的时间间隔。 |
| enable_sys_table_ddl | 用于指定是否允许手动创建系统表。 |
| internal_sql_execute_timeout | 用于设置系统内部 DML 请求的时间间隔。 |
| migration_disable_time | 用于设置因磁盘满等原因导致某个节点数据迁入失败时的暂停迁入时长。 |
| schema_history_expire_time | 用于设置元数据历史数据过期时间。 |
| datafile_size | 用于设置数据文件的大小。一般不需要设置。 |
| devname | 用于设置服务进程绑定的网卡设备名。 |
| enable_perf_event | 用于设置是否开启性能事件的信息收集功能。 |
| enable_record_trace_id | 用于设置是否记录应用端设置的追踪 ID。 |
| enable_upgrade_mode | 用于设置是否开启升级模式。在升级模式中,会暂停部分系统后台功能。 |
| enable_ddl | 用于设置是否允许执行 DDL。 |
| high_priority_net_thread_count | 用于设置高优先级网络线程数,值为 0 时,表示关闭该功能。 |
| mysql_port | 用于设置 SQL 服务协议端口号。 |
| obconfig_url | 用于设置 OBConfig 服务的 URL 地址。 |
| rpc_port | 用于设置远程访问的协议端口号。 |
| ssl_client_authentication | 用于设置是否开启 SSL 连接功能。 |
| stack_size | 用于设置程序函数调用栈的大小。 |
| tenant_task_queue_size | 用于设置每个租户的请求队列大小。 |
| zone | 用于设置节点所在的 Zone 的名字。该配置项一般不需要配置。 |
| ssl_external_kms_info | 用于记录 OceanBase 数据库 SSL 功能运行依赖的一些信息,通过 json 字符串方式记录不同 SSL 使用方式下依赖的相关配置,json 中至少包含类型 ssl_mode 字段。 |
| recyclebin_object_expire_time | 用于自动 Purge 回收站中过期的 Schema 对象。 |
| default_row_format | 用于设置在 MySQL 模式下,建表时使用的默认行格式。 |
| enable_sql_audit | 用于设置是否开启 SQL 审计功能。 |
| min_observer_version | 用于查看本集群最低的 OBServer 节点应用程序版本号。 |
| sys_bkgd_net_percentage | 用于设置后台系统任务可占用网络带宽百分比。 |
| schema_history_recycle_interval | 用于设置系统内部执行 schema 多版本记录回收任务的时间间隔。 |
| enable_asan_for_memory_context | 在使用 ob_asan 时,用于设置是否允许 ObAsanAllocator(默认 ObAllocator 作为 MemoryContext 的分配器)。 |
暂不支持的配置项
| 配置项名 | 功能描述 |
|---|---|
| plan_cache_high_watermark | 用于设置执行计划缓存占用内存的阈值,如果超过该阈值时将触发自动淘汰。 |
| plan_cache_low_watermark | 用于设置执行计划缓存占用内存的阈值,如果低于该阈值时将停止淘汰。 |
| tenant_cpu_variation_per_server | 用于设置租户多个 Unit 之间 CPU 配额调度允许的偏差。 |
| system_trace_level | 用于设置系统追踪日志的日志打印级别。 |
租户级配置项
用户登录相关
说明
下表中的配置项当前仅在 MySQL 模式下生效。
| 配置项名 | 功能描述 |
|---|---|
| connection_control_failed_connections_threshold | 用来指定用户错误登录尝试的阀值。 |
| connection_control_min_connection_delay | 指定了超过错误登录次数阈值之后,错误登录锁定的最小时长。 |
| connection_control_max_connection_delay | 指定了错误登录锁定时长的最大值,当时长达到这个最大值之后就不再增长。 |
审计相关
| 配置项名 | 功能描述 |
|---|---|
| audit_sys_operations | 用于设置是否追踪系统用户的操作行为。 |
| audit_trail | 用于设置是否启用数据库审核。 |
事务及事务日志相关
| 配置项名 | 功能描述 |
|---|---|
| log_disk_utilization_limit_threshold | 用于设置租户日志盘利用率限制阈值,当租户日志盘使用量超过租户日志盘空间总量乘以该值时,不再允许日志写入。 |
| log_disk_utilization_threshold | 用于设置租户日志盘利用率阈值,当租户日志盘使用量超过租户日志盘空间总量乘以该值时,进行日志文件重用。 |
| writing_throttling_maximum_duration | 通过控制内存分配进度,控制写入速度。即指定在触发写入限速后,剩余 MemStore 内存分配完所需的时间。 |
| writing_throttling_trigger_percentage | 用于设置写入速度的阈值。 |
转储与合并相关
| 配置项名 | 功能描述 |
|---|---|
| default_progressive_merge_num | 用于设置新建一张表时默认的渐进合并次数。 |
| major_freeze_duty_time | 用于设置每日定时冻结和合并的触发时刻。 |
| major_compact_trigger | 用于设置多少次冻结触发一次全局合并。 |
| minor_compact_trigger | 用于配置触发转储(Minor Compaction)的 SSTable 个数的阈值。 |
| undo_retention | 用于设置系统应保留的多版本数据范围,单位为秒,在转储时控制多版本数据的回收。 |
| merger_check_interval | 用于设置合并状态检查线程的调度间隔。 |
| freeze_trigger_percentage | 用于设置触发全局冻结的租户使用内存阈值。 |
CPU 相关
| 配置项名 | 功能描述 |
|---|---|
| cpu_quota_concurrency | 用于设置租户的每个 CPU 配额所允许的最大并发数。 |
加密相关
| 配置项名 | 功能描述 |
|---|---|
| external_kms_info | 用于存储一些密钥管理信息。 |
| tde_method | 用于设置透明表空间加密的方式。 |
PL
| 配置项名 | 功能描述 |
|---|---|
| plsql_code_type | 用于指定 PL/SQL 代码的编译类型。 |
| plsql_debug | 用于指定是否编译成 debug 版本。 |
| plsql_optimize_level | 用于指定编译优化级别。 |
| plsql_v2_compatibility | 用于指定 Oracle 8 的兼容功能。 说明 该配置项仅适用于 Oracle 模式,当前暂不生效。 |
| plsql_warnings | 用于控制 PL/SQL 编译器的报错行为,可以指定某类型或某个 warning 码的状态为enable、disable 或 error。 |
兼容相关
说明
下表中的配置项当前仅在 MySQL 模式下生效。
| 配置项名 | 功能描述 |
|---|---|
| enable_sql_extension | 用于设置是否开启租户的 SQL 扩展功能。 |
读写/查询相关
| 配置项名 | 功能描述 |
|---|---|
| enable_monotonic_weak_read | 用于设置是否开启单调读。 |
| query_response_time_stats | 用于设置是否启用 information_schema.QUERY_RESPONSE_TIME 视图的统计信息收集。 |
| query_response_time_flush | 用于设置是否刷新 information_schema.QUERY_RESPONSE_TIME 视图并重新读取 query_response_time_range_base。 |
| query_response_time_range_base | 用于设置 information_schema.QUERY_RESPONSE_TIME 视图收集时间参数的间隔时间。 |
路由相关
| 配置项名 | 功能描述 |
|---|---|
| ob_proxy_readonly_transaction_routing_policy | 用于控制 Proxy 对于事务的路由是否受只读语句的影响。 |
IO 相关
| 配置项名 | 功能描述 |
|---|---|
| io_category_config | 用于配置各类别 I/O 请求的百分比。 |
后台执行线程相关
| 配置项名 | 功能描述 |
|---|---|
| ddl_thread_score | 用于设置 DDL 任务使用的线程数。 |
| compaction_low_thread_score | 用于设置低优先级 compaction 的工作线程占用 CPU 时间片权重。 |
| compaction_high_thread_score | 用于设置高优先级 compaction 的工作线程占用 CPU 时间片权重。 |
| compaction_mid_thread_score | 用于设置中优先级 compaction 的工作线程占用 CPU 时间片权重。 |
| ha_high_thread_score | 用于设置高可用高优先级线程的当前工作线程数。 |
| ha_mid_thread_score | 用于设置高可用中优先级线程的当前工作线程数。 |
| ha_low_thread_score | 用于设置高可用低优先级线程的当前工作线程数。 |
| ob_compaction_schedule_interval | 用于设置 Compaction 调度的时间间隔。 |
备份恢复相关
| 配置项名 | 功能描述 |
|---|---|
| log_restore_concurrency | 用于设置恢复日志的并发度。 |
| log_archive_concurrency | 用于设置日志归档的并发度。 |
其他
| 配置项名 | 功能描述 |
|---|---|
| enable_early_lock_release | 用于设置是否开启提前解行锁的功能。 |
| workarea_size_policy | 用于设置手动或者自动调整 SQL 工作区大小的策略。 |
| open_cursors | 用于限制单个 Session 可以同时打开的游标数量。 |
| ob_ssl_invited_common_names | 用于记录当前租户运行的应用身份列表,该身份来自 SSL 双向认证中 Client 端证书 subject 中的 cn 字段(common name)。 |
| ob_enable_batched_multi_statement | 用于设置是否启用批处理功能的成组执行优化。 |
| job_queue_processes | 用来设定每个租户上可以同时运行的任务数上限,目的是为了控制任务挤占租户的资源。 说明 该配置项当前仅在 Oracle 模式下生效。 |
| default_auto_increment_mode | 用于设置默认的自增列自增模式。 |
| ob_query_switch_leader_retry_timeout | 用于设置失败 Query 的最大重试时间,单位为微秒(us)。 |
| default_enable_extended_rowid | 用于设置是否将表创建为 Extended ROWID 模式。 |
暂不支持的配置项
| 配置项名 | 功能描述 |
|---|---|
| sql_work_area | 用于设置租户的工作区内存。 |
| max_stale_time_for_weak_consistency | 用于设置弱一致性读允许读到多旧的数据。 |