This topic describes the cluster-level and tenant-level parameters of OceanBase Database.
Cluster-level parameters
Security
| Parameter | Description |
|---|---|
| mysql_port | The port number of the SQL service protocol. |
| rpc_port | The port number of the remote access protocol. |
| sql_protocol_min_tls_version | The minimum SSL/TLS protocol version for SSL connections to the database. |
| ssl_client_authentication | Whether to enable SSL connections. |
| ssl_external_kms_info | The information required for the SSL feature of OceanBase Database to run. This parameter records the related configurations required for different SSL usage scenarios in a JSON string. The JSON string must contain the ssl_mode field. |
| enable_sql_audit | Whether to enable the SQL audit feature. |
Backup and restore
| Parameter | Description |
|---|---|
| backup_backup_dest | The destination for backup data. |
| backup_backup_dest_option | The parameters for backup backup. |
| backup_dest_option | The parameters for backup. |
| backup_concurrency | The number of concurrent writes to the file system during backup. |
| backup_dest | The path for baseline backup and log archiving. |
| backup_log_archive_option | The options for archiving backup logs. |
| backup_net_limit | The total bandwidth for cluster backup. |
| backup_recovery_window | The time window for restoring backup data. |
| backup_region | The region for executing backup. |
| backup_zone | The zone for executing backup. |
| log_archive_batch_buffer_limit | The maximum memory usage for log archiving on a single node. |
| log_archive_checkpoint_interval | The time interval for cold data log archiving checkpoints. |
| restore_concurrency | The maximum concurrency for restoring tenant data from backup. |
cgroup
| Parameter | Description |
|---|---|
| enable_cgroup | Whether to enable the cgroup feature for OBServer nodes. |
CPU-related
| Parameter | Description |
|---|---|
| cpu_count | Specifies the total number of CPU cores. If you set this parameter to 0, the system automatically detects the number of CPU cores. |
| server_balance_cpu_mem_tolerance_percent | Specifies the tolerance for CPU and memory resource imbalance in the node load balancing strategy. |
| server_cpu_quota_max | Specifies the maximum CPU quota that the system can use. |
| server_cpu_quota_min | Specifies the minimum CPU quota that the system can use. The system automatically reserves this quota. |
| token_reserved_percentage | Specifies the percentage of idle tokens to be reserved for tenants in tenant CPU scheduling. |
| workers_per_cpu_quota | Specifies the number of worker threads allocated to each CPU quota. |
| cpu_reserved | Specifies the number of CPU cores reserved for the system. The remaining CPU cores are exclusively used by OceanBase Database. |
| sys_cpu_limit_trigger | Specifies the CPU utilization threshold. If the CPU utilization exceeds this threshold, the system pauses the execution of background tasks. |
| system_cpu_quota | Specifies the CPU quota available to the system tenant. |
| tenant_cpu_variation_per_server | Specifies the allowed deviation in CPU quota scheduling among multiple units of a tenant. |
Read/write and query-related
| Parameter | Description |
|---|---|
| weak_read_version_refresh_interval | Specifies the refresh cycle of the weak-consistency read version number, which affects the latency of weak-consistency read data. |
| large_query_worker_percentage | Specifies the percentage of worker threads reserved for processing large queries. |
| large_query_threshold | Specifies the threshold for query execution time. |
| trace_log_slow_query_watermark | Specifies the query execution time threshold. If the query execution time exceeds this threshold, the query is considered a slow query, and the trace logs of slow queries are printed to the system log. |
Load balancing
| Parameter | Description |
|---|---|
| balancer_log_interval | Specifies the interval at which the threads of a disaster recovery task print statistical logs. |
| balancer_task_timeout | Specifies the timeout period for background tasks such as load balancing. |
| balancer_tolerance_percentage | Specifies the tolerance for disk imbalance among multiple units of a tenant in the load balancing strategy. If the imbalance is within the tolerance range, no load balancing action is triggered. |
| server_balance_critical_disk_waterlevel | Specifies the water level for disk load balancing. |
| server_balance_disk_tolerance_percent | Specifies the tolerance for disk imbalance in the load balancing strategy. |
| resource_hard_limit | Specifies the over-subscription percentage for CPU resources. |
| enable_sys_unit_standalone | Specifies whether to enable the exclusive node for the system tenant. |
| balancer_emergency_percentage | Specifies the unit load threshold. When the unit load exceeds this threshold, replicas can be migrated even during major compactions. |
| balancer_timeout_check_interval | Specifies the interval at which to check for timeouts in background tasks such as load balancing. |
| data_copy_concurrency | Specifies the maximum number of concurrent data migration and replication tasks. |
| tenant_groups | Specifies the tenant groups used in the load balancing strategy. |
| unit_balance_resource_weight | Specifies the resource weights used in the unit load balancing strategy. This parameter is not usually manually configured. |
| resource_soft_limit | Specifies whether to enable unit load balancing. |
Replica-related
| Parameter | Description |
|---|---|
| unit_gc_wait_time | Specifies the maximum wait time for unit garbage collection. If the wait time exceeds this maximum, garbage collection is forced. |
| enable_rereplication | Specifies whether to enable automatic migration and replication of log stream replicas. |
| ls_meta_table_check_interval | Specifies the check interval of the background thread for the DBA_OB_LS_LOCATIONS and CDB_OB_LS_LOCATIONS views. |
| sys_bkgd_migration_change_member_list_timeout | Specifies the timeout for changing the Paxos member group during replica migration. |
| sys_bkgd_migration_retry_num | Specifies the maximum number of retries for replica migration. |
| balance_blacklist_failure_threshold | Specifies the threshold for the number of consecutive failures of background tasks such as replica migration. If the number of consecutive failures exceeds this threshold, the task is added to the blacklist. |
| balance_blacklist_retry_interval | Specifies the retry interval for background tasks such as replica migration after they are added to the blacklist. |
| election_cpu_quota | Specifies the CPU quota allocated to background tasks related to replica election. |
| election_blacklist_interval | Specifies the time interval during which a failed leader cannot be selected again. |
| enable_auto_leader_switch | Specifies whether to enable automatic leader switching. |
| enable_smooth_leader_switch | Specifies whether to enable smooth leader switching. |
| global_index_build_single_replica_timeout | Specifies the timeout for building a global index on each replica. |
| get_leader_candidate_rpc_timeout | Specifies the timeout for internal requests to obtain leader candidates in automatic leader switching. |
| migrate_concurrency | Specifies the maximum number of concurrent internal data migrations. |
| rebuild_replica_data_lag_threshold | Specifies the threshold for the transaction log lag between a standby replica and the leader. If the lag exceeds this threshold, replica rebuilding is triggered. |
| server_data_copy_out_concurrency | Specifies the maximum number of concurrent data migrations out of a single node. |
| server_data_copy_in_concurrency | Specifies the maximum number of concurrent data migrations into a single node. |
| replica_safe_remove_time | Specifies the safe retention period for deleted replicas. |
Cache-related parameters
| Parameter | Description |
|---|---|
| bf_cache_miss_count_threshold | Specifies the number of macroblock misses that triggers the creation of a Bloom filter cache. |
| bf_cache_priority | Specifies the priority of the Bloom filter cache. |
| cache_wash_threshold | Specifies the capacity threshold that triggers cache cleaning. |
| fuse_row_cache_priority | Specifies the priority of the fused row cache in the cache system. |
| user_row_cache_priority | Specifies the priority of the baseline data row cache in the cache system. |
| autoinc_cache_refresh_interval | Specifies the refresh interval of the auto-increment column cache. |
| plan_cache_evict_interval | Specifies the eviction interval of the execution plan cache. |
| index_block_cache_priority | Specifies the priority of the metadata index microblock cache. |
| opt_tab_stat_cache_priority | Specifies the priority of the statistics cache. |
| tablet_ls_cache_priority | Specifies the priority of the tablet mapping cache. |
| user_block_cache_priority | Specifies the priority of the data block cache in the cache system. |
| index_info_block_cache_priority | Specifies the priority of the block index in the cache system. |
| index_cache_priority | Specifies the priority of the index in the cache system. |
| user_tab_col_stat_cache_priority | Specifies the priority of the statistics cache in the cache system. |
| plan_cache_high_watermark | Specifies the memory usage threshold of the execution plan cache. If the memory usage exceeds this threshold, the cache is automatically evicted. |
| plan_cache_low_watermark | Specifies the memory usage threshold of the execution plan cache. If the memory usage is lower than this threshold, the cache is not evicted. |
Partition-related parameters
| Parameter | Description |
|---|---|
| tablet_meta_table_check_interval | Specifies the interval at which the background thread for checking the DBA_OB_TABLET_REPLICAS and CDB_OB_TABLET_REPLICAS views performs checks. |
| tablet_meta_table_scan_batch_count | Specifies the number of tablets cached in memory by the tablet meta table iterator. |
| tablet_size | Specifies the size of each tablet during parallel processing (such as major compactions and queries) within a partition. |
| auto_broadcast_location_cache_rate_limit | Specifies the maximum number of partitions whose location information can be broadcasted per second by each OBServer node. |
| auto_refresh_location_cache_rate_limit | Specifies the maximum number of partitions whose location cache can be automatically refreshed per second by each OBServer node. |
| enable_pg | Specifies whether to enable the partition group feature. |
| gc_wait_archive | Specifies whether to wait for all logs of a partition to be archived before performing partition garbage collection. |
| partition_table_check_interval | Specifies the interval at which an OBServer node deletes non-existent replicas from a partition table. |
Background thread-related parameters
| Parameter | Description |
|---|---|
| sql_net_thread_count | Specifies the number of MySQL cluster I/O threads, that is, the number of global_sql_nio_server threads. The default value of 0 indicates that this parameter takes the value of the net_thread_count parameter. |
| auto_leader_switch_interval | Specifies the working interval of the background thread for automatic leader switching. |
| switchover_process_thread_count | Specifies the size of the thread pool for primary-standby database switching. |
IO-related
| Parameter | Description |
|---|---|
| sync_io_thread_count | Specifies the number of threads for synchronous I/O requests. |
| syslog_io_bandwidth_limit | Specifies the maximum disk I/O bandwidth that can be occupied by system logs. System logs exceeding this bandwidth limit will be discarded. |
| disk_io_thread_count | Specifies the number of disk I/O threads. The value must be an even number. |
| net_thread_count | Specifies the number of network I/O threads. |
| data_storage_error_tolerance_time | Specifies the maximum tolerated time for the data disk to be in the ERROR state. |
| sys_bkgd_io_high_percentage | Specifies the maximum percentage of system background I/O resources that can be occupied. |
| sys_bkgd_io_low_percentage | Specifies the minimum percentage of system background I/O resources that must be occupied. |
| user_iort_up_percentage | Specifies the threshold of user disk I/O latency. If the user disk I/O latency exceeds this threshold, the system will throttle background I/O tasks. |
| ob_esi_rpc_port | Specifies the communication port between the obesi process and the observer process. |
| enable_ob_esi_process | Specifies whether to enable the obesi (External Storage Interface) process. |
| ob_esi_session_timeout | Specifies the timeout period for the obesi process to hold active session resources. |
| ob_esi_io_concurrency | Specifies the number of concurrent I/O operations for the obesi process. |
| ob_esi_syslog_level | Specifies the current log recording level for the obesi process. |
| ob_esi_max_syslog_file_count | Specifies the maximum number of log files that the obesi process can accommodate before recycling log files. |
| multiblock_read_gap_size | Specifies the maximum capacity of the block cache for a single I/O aggregation read. |
| multiblock_read_size | Specifies the size of I/O aggregation for data reads. |
Cluster-related
| Parameter name | Description |
|---|---|
| all_server_list | Displays the addresses of all servers in the cluster. |
| cluster | Sets the name of the OceanBase cluster. |
| cluster_id | Sets the ID of the OceanBase cluster. |
| rpc_timeout | Sets the timeout period for internal cluster requests. |
| all_cluster_list | Displays the list of servers that access the same config_url. |
| enable_election_group | Sets whether to enable the election group policy. |
| local_ip | The IP address of the machine on which ObServer is installed. |
| observer_id | The unique identifier assigned to the OBServer node by the RS in the cluster. |
| min_observer_version | Displays the lowest application version of the OBServer nodes in the cluster. |
Bandwidth-related
| Parameter name | Description |
|---|---|
| enable_ob_ratelimit | Enables rate limiting between regions in RPC connections. |
| ob_ratelimit_stat_period | Sets the time interval for the OBServer node to calculate and update the maximum bandwidth. |
Location Cache-related
| Parameter name | Description |
|---|---|
| virtual_table_location_cache_expire_time | Sets the expiration time for the location cache of virtual tables. |
| location_cache_refresh_rpc_timeout | The timeout period for refreshing the location_cache via RPC. |
| location_cache_refresh_sql_timeout | The timeout period for refreshing the location_cache via SQL. |
| location_cache_refresh_min_interval | Sets the minimum interval for refreshing the location cache to prevent excessive refresh requests from causing excessive system pressure. |
| location_cache_cpu_quota | Sets the CPU quota for the location cache module. |
| location_fetch_concurrency | Sets the maximum number of concurrent location cache refreshes on a single server. |
| location_refresh_thread_count | Sets the number of threads for the OBServer node to fetch partition location information from the Root Service. |
| enable_auto_refresh_location_cache | Sets whether to enable the automatic refresh of location cache information. |
Directory path-related parameters
| Parameter name | Description |
|---|---|
| config_additional_dir | Specifies multiple directories for storing local configuration files for redundancy. |
| data_dir | Specifies the directory for storing data such as SSTables. |
Memory-related
| Parameter | Description |
|---|---|
| datafile_disk_percentage | The percentage of the total space of the disk where the data_dir is located. OceanBase Database will initialize this disk for storing data. |
| data_disk_usage_limit_percentage | The maximum percentage of the disk space that can be used for data files. If the usage exceeds this threshold, data migration is prohibited. |
| enable_sql_operator_dump | Specifies whether to allow intermediate results of SQL processing to be written to disk to release memory. |
| global_write_halt_residual_memory | The global threshold for remaining memory that triggers a pause in writes for normal tenants (sys tenant is unaffected). |
| leak_mod_to_check | Used for internal debugging to check for memory leaks. |
| memory_chunk_cache_size | The size of memory blocks cached by the memory allocator. |
| memory_limit | The total available memory size. |
| memory_limit_percentage | The percentage of the total available memory size relative to the total memory size. |
| memory_reserved | The memory reserved for KVCache. |
| memstore_limit_percentage | The percentage of the tenant's total available memory used by MemStore. |
| system_memory | The memory reserved for the tenant with ID 500. |
| use_large_pages | Manages the use of large pages for database memory. |
| datafile_maxsize | The maximum size to which disk files can automatically expand. |
| datafile_next | The incremental step for automatic expansion of disk files. |
| storage_meta_cache_priority | Controls the priority of storage Meta Cache in KVCache. |
PX-related parameters
| Parameter name | Description |
|---|---|
| px_workers_per_cpu_quota | Specifies the ratio of parallel execution worker threads. |
| px_task_size | Specifies the amount of data processed by each task of the SQL parallel query engine. |
| max_px_worker_count | Specifies the maximum number of threads used by the SQL parallel query engine. |
Others
| Parameter name | Description |
|---|---|
| builtin_db_data_verify_cycle | Specifies the cycle for data block verification. The unit is days. If the value is 0, no verification is performed. |
| data_storage_warning_tolerance_time | Specifies the tolerance time for the data disk status to be set to WARNING. |
| dead_socket_detection_timeout | Specifies the interval for detecting a failed socket. |
| migration_disable_time | Specifies the duration for which data migration is paused when data migration to a node fails due to reasons such as a full disk. |
| schema_history_expire_time | Specifies the expiration time for metadata history data. |
| datafile_size | Specifies the size of the data file. This parameter is usually not set. |
| devname | Specifies the name of the network interface card (NIC) to which the service process is bound. |
| enable_perf_event | Specifies whether to enable the collection of performance event information. |
| enable_record_trace_id | Specifies whether to record the trace ID set by the application. |
| enable_upgrade_mode | Specifies whether to enable upgrade mode. In upgrade mode, some system background features are paused. |
| enable_ddl | Specifies whether to allow DDL operations. |
| high_priority_net_thread_count | Specifies the number of high-priority network threads. A value of 0 indicates that this feature is disabled. |
| obconfig_url | Specifies the URL address of the OBConfig service. |
| rpc_port | Specifies the port number for remote access. |
| stack_size | The size of the program function call stack. |
| tenant_task_queue_size | The size of the request queue for each tenant. |
| zone | The name of the zone where the node resides. This parameter is usually not configured. |
| recyclebin_object_expire_time | The time when the schema objects in the recycle bin are automatically purged. |
| default_row_format | The default row format used when creating tables in MySQL-compatible mode. |
| sys_bkgd_net_percentage | The percentage of network bandwidth that can be occupied by background system tasks. |
| schema_history_recycle_interval | The interval between the execution of schema multi-version record recycling tasks. |
| enable_asan_for_memory_context | When ob_asan is used, this parameter specifies whether to allow ObAsanAllocator (the default ObAllocator) as the memory context allocator. |
| ofs_list | The connection URLs of OceanBase File System (OFS), which is an OceanBase Database-designed distributed storage system, for each zone. This parameter is mainly used to meet the needs of RootService for cross-zone file access in OFS deployment mode. |
| async_ps_cursor_max_count | The maximum number of asynchronous PS cursors in a single node. |
Log service
| Parameter name | Description |
|---|---|
| enable_logservice | Controls the log service mode. |
| logservice_access_point | Specifies the log service access point. |
Root Service
| Parameter name | Description |
|---|---|
| rootservice_async_task_queue_size | Specifies the size of the internal asynchronous task queue of the Root Service. |
| rootservice_async_task_thread_count | Specifies the size of the thread pool used for internal asynchronous tasks of the Root Service. |
| rootservice_list | Displays the list of Root Service nodes and their replicas. |
| rootservice_ready_check_interval | Specifies the interval between the Root Service startup and the check of the cluster status. |
| rootservice_memory_limit | Specifies the maximum memory capacity limit of the Root Service. |
| lease_time | Specifies the lease time of the heartbeat. |
| server_check_interval | Specifies the interval between server table consistency checks. |
| server_permanent_offline_time | Specifies the threshold for node heartbeat interruption. After the heartbeat is interrupted for this duration, the node is considered permanently offline, and data replicas on permanently offline nodes need to be automatically replenished. |
| ob_event_history_recycle_interval | Specifies the interval for recycling historical events. |
| enable_rootservice_standalone | Specifies whether to dedicate OBServer nodes to the system tenant and RootService. |
| fast_recovery_concurrency | Specifies the number of concurrent fast recovery tasks scheduled by the RootService on OBServer nodes. |
| wait_leader_batch_count | Specifies the maximum number of partitions to be switched at a time by the RootService. |
RPC authentication
| Parameter name | Description |
|---|---|
| rpc_client_authentication_method | Specifies the security authentication method for RPC clients. |
| rpc_server_authentication_method | Specifies the security authentication method for RPC servers. |
SQL related
| Parameter | Description |
|---|---|
| sql_login_thread_count | The number of threads for processing SQL login requests. |
| sql_audit_memory_limit | The maximum memory that can be occupied by SQL audit data. |
| enable_sys_table_ddl | Specifies whether to allow manual creation of system tables. |
| internal_sql_execute_timeout | The time interval for system internal DML requests. |
Transaction and transaction log related
| Parameter | Description |
|---|---|
| log_disk_size | Specifies the size of the redo log disk. |
| log_disk_percentage | Specifies the percentage of the total space occupied by redo logs on the disk. |
| dtl_buffer_size | Specifies the size of the cache used by the SQL data transfer module. |
| ignore_replay_checksum_error | Specifies whether to ignore checksum errors that occur during transaction log replay. |
| trx_2pc_retry_interval | Specifies the time interval for automatic retries when two-phase commit fails. |
| standby_fetch_log_bandwidth_limit | Specifies the maximum bandwidth that can be occupied per second by the total amount of data synchronization traffic from all servers in the standby tenant cluster to the primary tenant. |
| log_storage_warning_tolerance_time | Specifies the time from when a log disk I/O failure occurs to when the disk is marked as a bad disk. |
| clog_disk_utilization_threshold | Controls the water level for reusing clog or ilog disk space. |
| clog_expire_days | Controls the expiration time of Clog files. When the last modification time of a Clog file exceeds the expiration time, the file is deleted. |
| clog_cache_priority | Specifies the priority of transaction logs in the cache. |
| clog_disk_usage_limit_percentage | Specifies the maximum percentage of available disk space for transaction logs. |
| clog_sync_time_warn_threshold | Specifies the transaction log synchronization time threshold for generating a WARN log when the synchronization time exceeds this threshold. |
| clog_transport_compress_func | Specifies the compression algorithm used for internal transaction log transmission. |
| enable_one_phase_commit | Specifies whether to enable the one-phase commit optimization feature. |
| enable_separate_sys_clog | Specifies whether to store system transaction logs separately from user transaction logs. |
| flush_log_at_trx_commit | Specifies the transaction log writing strategy during transaction commit. |
| ignore_replay_checksum_error | Specifies whether to ignore checksum errors that occur during transaction log replay. |
| index_clog_cache_priority | Specifies the priority of transaction log indexes in the cache system. |
| ilog_index_expire_time | Specifies the maximum time for which an OBServer can provide Ilog files for reading. |
| trx_force_kill_threshold | Specifies the maximum waiting time when a transaction must be killed due to freezing or switchover. |
Lock related
| Parameter | Description |
|---|---|
| trx_try_wait_lock_timeout | Specifies the maximum wait time for row locks during statement execution. |
Debugging
| Parameter name | Description |
|---|---|
| debug_sync_timeout | Enables the Debug Sync feature and sets its timeout. |
| enable_rich_error_msg | Specifies whether to add server address, time, trace ID, and other debugging information to client messages. |
TCP
| Parameter name | Description |
|---|---|
| enable_tcp_keepalive | Enables or disables the keepalive mechanism for client connections. |
| tcp_keepidle | Specifies the time, in seconds, after which a keepalive probe is sent to a client connection if no data is sent. |
| tcp_keepintvl | Specifies the time, in seconds, between two consecutive keepalive probes. |
| tcp_keepcnt | Specifies the maximum number of retries before a non-active connection is closed. |
External tables
| Parameter name | Description |
|---|---|
| external_table_disk_cache_max_percentage | Specifies the maximum proportion of datafile_size that can be used for disk caching of external tables in SN mode. |
System log-related
| Parameter | Description |
|---|---|
| alert_log_level | Specifies the level of alert logs. |
| enable_record_trace_log | Specifies whether to record trace logs. |
| enable_async_syslog | Specifies whether to enable asynchronous system log writing. |
| enable_syslog_recycle | Specifies whether to record logs generated before the OBServer node starts. This parameter is used in conjunction with max_syslog_file_count to determine whether to consider old log files during the recycling process. |
| enable_syslog_wf | Specifies whether to print system logs of WARN and higher levels to a separate log file. |
| max_string_print_length | Specifies the maximum length of a single line of system logs. |
| max_syslog_file_count | Specifies the maximum number of log files that can be retained before recycling. |
| syslog_level | Specifies the level of system logs. |
| trace_log_sampling_interval | Specifies the interval at which trace logs are printed periodically. |
| diag_syslog_per_error_limit | Specifies the maximum number of DIAG system logs that can be printed per second for each error code. If this threshold is exceeded, logs will no longer be printed. |
| enable_log_archive | Specifies whether to enable the log archiving feature. |
| system_trace_level | Specifies the log printing level for system trace logs. |
Compression algorithm-related
| Parameter | Description |
|---|---|
| default_compress_func | Specifies the default compression algorithm for table data. You can also specify a different compression algorithm when creating a table. |
| default_compress | Specifies the default compression strategy used when creating tables in Oracle-compatible mode. |
| tableapi_transport_compress_func | Specifies the compression algorithm used for transmitting query results in OBKV-Table. |
| default_transport_compress_func | Specifies the RPC compression algorithm for the entire cluster. |
Dumps and major compactions
| Parameter name | Description |
|---|---|
| enable_major_freeze | Specifies whether to enable automatic global freezing. |
| micro_block_merge_verify_level | Specifies the verification level for macroblocks during major compactions. |
| row_compaction_update_limit | Specifies the number of modifications required to trigger an in-memory row compaction. |
| enable_global_freeze_trigger | Specifies whether to enable automatic global freezing. |
| enable_merge_by_turn | Specifies whether to enable the round-robin merge strategy. |
| enable_manual_merge | Specifies whether to enable manual compactions. |
| global_major_freeze_residual_memory | Specifies the threshold for residual memory that triggers a global freeze. In other words, a global freeze is triggered when the residual memory is less than this percentage. |
| minor_deferred_gc_time | Specifies the interval for delayed garbage collection of SSTables after a minor compaction. |
| zone_merge_concurrency | Specifies the maximum number of zones that can be merged concurrently. If the value is 0, the system automatically selects the optimal concurrency level based on deployment. |
| zone_merge_order | Specifies the order for round-robin zone merges. If not specified, the system automatically determines the order. |
| zone_merge_timeout | Specifies the timeout for merging a single zone. |
| minor_freeze_times | Specifies the number of minor freezes required to trigger a minor compaction. |
| minor_merge_concurrency | Specifies the number of concurrent threads for minor compactions. |
| minor_warm_up_duration_time | Specifies the warm-up time for generating new minor compaction files. |
| row_purge_thread_count | Specifies the maximum number of worker threads for in-memory row compactions. |
Arbitration service
| Parameter name | Description |
|---|---|
| arbitration_degradation_policy | Specifies the degradation strategy. |
| ob_startup_mode | Specifies the startup mode for an OBServer node. This parameter can be modified only during the first startup. |
Resource isolation
| Parameter name | Description |
|---|---|
| clog_io_isolation_mode | Specifies whether to isolate I/O requests for the clog disk based on whether the clog disk and data disk are independent. |
| enable_global_background_resource_isolation | Specifies whether to enable global foreground and background resource isolation. |
| global_background_cpu_quota | Specifies the CPU quota for background tasks when global foreground and background resource isolation is enabled. |
Tenant-level parameters
Security
| Parameter name | Description |
|---|---|
| sts_credential | Specifies the credentials for accessing the STS service provided by OCP. |
| external_kms_info | Stores some key management information. |
| tde_method | Specifies the method for transparent tablespace encryption. |
| audit_sys_operations | Specifies whether to track the operations of system users. |
| audit_trail | Specifies whether to enable database auditing. |
Storage
| Parameter name | Description |
|---|---|
| default_table_organization | Specifies the default table organization mode for tables. |
| default_table_merge_engine | Specifies the default merge_engine for tables in a user tenant. |
CPU
| Parameter name | Description |
|---|---|
| cpu_quota_concurrency | Specifies the maximum number of concurrent sessions allowed for each CPU quota of a tenant. |
Read/write/query
| Parameter name | Description |
|---|---|
| enable_monotonic_weak_read | Specifies whether to enable monotonic weak reads. |
| query_response_time_stats | Specifies whether to enable statistics collection for the information_schema.QUERY_RESPONSE_TIME view. |
| query_response_time_flush | Specifies whether to refresh the information_schema.QUERY_RESPONSE_TIME view and read the query_response_time_range_base parameter again. |
| query_response_time_range_base | Specifies the interval for collecting time parameters in the information_schema.QUERY_RESPONSE_TIME view. |
Load balancing
| Parameter | Description |
|---|---|
| enable_ls_leader_balance | Specifies whether to enable automatic load balancing for log stream leaders. |
| enable_gts_standalone | Specifies whether to enable the GTS service to occupy a dedicated group of units. |
| balancer_idle_time | The wake-up interval for background task threads, such as the load balancer, when they are idle. |
| enable_rebalance | Specifies whether to enable automatic load balancing. |
| enable_transfer | Specifies whether to allow transfer within a tenant. If the enable_rebalance parameter is disabled, this parameter is invalid. |
| partition_balance_schedule_interval | The interval for partition balance scheduling. |
| enable_database_sharding_none | Specifies whether to enable automatic aggregation when a user table is created in a database. |
Replica
| Parameter | Description |
|---|---|
| replica_parallel_migration_mode | The mode for log stream replica parallel migration. |
| choose_migration_source_policy | The priority policy for selecting the source replica for migration. |
Scaling
| Parameter | Description |
|---|---|
| ls_scale_out_factor | The scaling-out factor for log streams. This parameter specifies the number of log streams per service node. |
Backup and restore
| Parameter | Description |
|---|---|
| recover_table_concurrency | The maximum number of tables that can be restored in parallel in the cross-tenant data import phase of table-level restore. |
| recover_table_dop | The maximum number of tables that can be restored in parallel in the cross-tenant data import phase of table-level restore. |
| log_restore_concurrency | The concurrency level for log restore. |
| log_archive_concurrency | The concurrency level for log archiving. |
| backup_data_file_size | The maximum size of a single data backup file. |
Partitioning
| Parameter | Description |
|---|---|
| enable_auto_split | Specifies whether to enable automatic partitioning for the tenant. |
| auto_split_tablet_size | Specifies the threshold for triggering automatic partitioning for the tenant. |
| global_index_auto_split_policy | Specifies whether to enable automatic partitioning for new global indexes. The default value is DISTRIBUTED. |
Background execution threads
| Parameter | Description |
|---|---|
| attach_shared_sstable_thread_score | Specifies the number of threads available for the tenant to execute shared data reference tasks in shared storage mode. |
| inc_sstable_upload_thread_score | Specifies the number of threads available for the tenant to execute data sharing tasks in shared storage mode. |
| ddl_thread_score | Specifies the number of threads used for DDL tasks. |
| compaction_low_thread_score | Specifies the number of worker threads for low-priority major compactions. |
| compaction_high_thread_score | Specifies the number of worker threads for high-priority major compactions. |
| compaction_mid_thread_score | Specifies the number of worker threads for medium-priority major compactions. |
| ha_high_thread_score | Specifies the current number of worker threads for high-priority high-availability threads. |
| ha_mid_thread_score | Specifies the current number of worker threads for medium-priority high-availability threads. |
| ha_low_thread_score | Specifies the current number of worker threads for low-priority high-availability threads. |
| ob_compaction_schedule_interval | Specifies the time interval for scheduling major compactions. |
| compaction_dag_cnt_limit | Specifies the maximum number of DAGs in the Compaction DAG queue. |
| compaction_schedule_tablet_batch_cnt | Specifies the maximum number of partitions to be scheduled in each batch during major compaction scheduling. |
| tenant_sql_login_thread_count | Specifies the number of threads for MySQL-compatible tenant login, i.e., the number of mysql_queue threads. The default value of 0 indicates that the value of unit_min_cpu is used. |
| tenant_sql_net_thread_count | Specifies the number of I/O threads for MySQL-compatible tenants, i.e., the number of sql_nio_server threads. The default value of 0 indicates that the value of unit_min_cpu is used. |
Cache-related
| Parameter name | Description |
|---|---|
| default_storage_cache_policy | Configures the default cache policy. |
| enable_manual_storage_cache_policy | Enables the user-defined hot cache policy. |
| suspend_storage_cache_task | Specifies whether to suspend the background cache task. |
| enable_adaptive_plan_cache | Controls whether to enable the adaptive plan cache feature for a tenant. |
| result_cache_max_size | Controls the maximum amount of memory that can be used by the result cache module. |
| result_cache_max_result | Controls the maximum proportion of result_cache_max_size that can be used by a single result cache cache object. |
| ob_result_cache_evict_percentage | Specifies the memory evict threshold for result cache. |
| ob_deterministic_udf_cache_max_size | Specifies the maximum amount of memory that can be used by the cache pool for all deterministic UDFs during statement execution. |
I/O-related
| Parameter name | Description |
|---|---|
| io_category_config | Configures the percentage of I/O requests for each category. |
Compatibility-related
Note
The parameters in the following table are effective only in MySQL-compatible mode.
| Parameter name | Description |
|---|---|
| enable_sql_extension | Specifies whether to enable the SQL extension feature for a tenant. |
| compatible | Controls the compatibility behavior of related features for a tenant. This parameter cannot be set. |
Routing-related
| Parameter name | Description |
|---|---|
| ob_proxy_readonly_transaction_routing_policy | Controls whether Proxy routing for transactions is affected by read-only statements. |
LOB data-related
| Parameter name | Description |
|---|---|
| lob_enable_block_cache_threshold | Specifies the threshold for LOB query caching in OUTROW storage. |
Memory space related
| Parameter name | Description |
|---|---|
| temporary_file_max_disk_size | Sets the maximum disk space that can be occupied by temporary files on a single node of the tenant. |
| ob_vector_memory_limit_percentage | Configures the threshold for memory resource usage of the vector index module (unit: percentage). |
| range_optimizer_max_mem_size | Limits the memory used by the Query Range module. |
| rpc_memory_limit_percentage | Sets the maximum memory for RPC in the tenant, as a percentage of the total tenant memory. |
| query_memory_limit_percentage | Specifies the percentage of tenant memory available for a single SQL statement. |
Disk space related
| Parameter name | Description |
|---|---|
| temporary_file_max_disk_size | Sets the maximum disk space that can be occupied by temporary files on a single node of the tenant. |
OBKV related
| Parameter name | Description |
|---|---|
| enable_kv_ttl | Controls whether to start the TTL background task. This parameter is effective for periodic TTL tasks, but not for user-controlled commands.Notice: The TTL feature is only applicable to OceanBase KV scenarios and is disabled in SQL scenarios to prevent unexpected data deletion. |
| kv_ttl_duty_duration | Sets the trigger period for daily scheduled TTL tasks. The TTL task will be triggered once during this period. |
| kv_group_commit_batch_size | Specifies the size of batch operations executed in OBKV group commit. |
| kv_group_commit_rw_mode | Controls scenarios where group commit is used. |
| kv_hbase_client_scanner_timeout_period | Sets the timeout period for OBKV-HBase streaming queries. |
| kv_ttl_history_recycle_interval | Sets the duration for which TTL task history records are retained. |
| ttl_thread_score | Sets the number of worker threads used by TTL tasks. |
PL related
| Parameter name | Description |
|---|---|
| plsql_code_type | Specifies the compilation type for PL/SQL code. |
| plsql_debug | Specifies whether to compile into a debug version. |
| plsql_optimize_level | Specifies the compilation optimization level. |
| plsql_v2_compatibility | Controls whether to enable the feature of compiling and persisting DDL operations for stored procedures. |
| package_state_sync_max_size | Controls the maximum length that can be serialized for a single package state (package state management). |
| ob_enable_java_udf | Controls whether to enable the Java UDF feature. |
Parameters related to direct load
| Parameter | Description |
|---|---|
| default_load_mode | Specifies the data import mode in the data import scenario. |
| direct_load_allow_fallback | Specifies whether to fall back to the normal import mode when a direct load operation encounters a scenario that is not supported by direct load. |
| load_data_diagnosis_log_compression | Specifies the compression algorithm for diagnostic logs. |
| load_data_diagnosis_log_max_size | Specifies the size of a diagnostic log file. |
Other parameters
| Parameter | Description |
|---|---|
| zone_deploy_mode | Specifies the distribution mode of the tenant across zones. |
| enable_early_lock_release | Specifies whether to enable the early row lock release feature. |
| workarea_size_policy | Specifies the strategy for manually or automatically adjusting the size of the SQL workarea. |
| open_cursors | Specifies the maximum number of cursors that can be opened simultaneously in a single session. |
| ob_ssl_invited_common_names | Records the list of application identities for the current tenant. The identities are obtained from the cn field of the subject in the client certificate during SSL mutual authentication. |
| ob_enable_batched_multi_statement | Specifies whether to enable the batch execution optimization for the batch processing feature. |
| job_queue_processes | Specifies the maximum number of concurrent tasks that can run on each tenant to prevent tasks from consuming excessive tenant resources. |
| default_auto_increment_mode | Specifies the default auto-increment mode for auto-increment columns. |
| ob_query_switch_leader_retry_timeout | Specifies the maximum retry time for a failed query, in microseconds (us). |
| default_enable_extended_rowid | Specifies whether to create a table in the Extended ROWID mode. |
| dump_data_dictionary_to_log_interval | Specifies the persistence cycle of the tenant data dictionary. |
| enable_user_defined_rewrite_rules | Specifies whether to enable user-defined rewrite rules. |
| storage_rowsets_size | Specifies the number of rows vectorized in one batch for the columnar engine. |
| approx_count_distinct_precision | Specifies the precision of the result of the approx_count_distinct function. |
| default_skip_index_level | Specifies the mechanism for generating Skip Indexes for incremental SSTables in the tenant. |
Transaction and transaction log related
| Parameter | Description |
|---|---|
| log_disk_utilization_limit_threshold | Specifies the threshold for the utilization of the log disk space of a tenant. When the log disk usage of a tenant exceeds the total log disk space of the tenant multiplied by this threshold, log writes are no longer allowed. |
| log_disk_utilization_threshold | Specifies the threshold for the utilization of the log disk space of a tenant. When the log disk usage of a tenant exceeds the total log disk space of the tenant multiplied by this threshold, log files are reused. |
| writing_throttling_maximum_duration | Controls the write speed by controlling the memory allocation progress. That is, specifies the time required to allocate the remaining MemStore memory after write throttling is triggered. |
| writing_throttling_trigger_percentage | Specifies the threshold for the write speed. |
| standby_db_fetch_log_rpc_timeout | Specifies the timeout period for the RPC call for log fetching from a standby database, which is used to control the log transmission service of the standby database to detect the unavailability of a server in the primary database and switch to another server. |
| log_disk_throttling_percentage | Specifies the percentage of the log disk space that cannot be reclaimed when write throttling is triggered. |
| log_transport_compress_all | Specifies whether to enable compression for log transmission. |
| log_transport_compress_func | Specifies the compressor for log transmission. |
| clog_max_unconfirmed_log_count | Specifies the maximum number of unconfirmed logs in the transaction module. |
| clog_persistence_compress_func | Specifies the compression algorithm for transaction log persistence. |
| enable_clog_persistence_compress | Specifies whether to enable transaction log persistence compression. |
Data type related
| Parameter | Description |
|---|---|
| json_document_max_depth | Specifies the maximum nesting level allowed in a JSON document. |
Lock related
| Parameter | Description |
|---|---|
| enable_lock_priority | Lock priority switch. |
External table related
| Parameter | Description |
|---|---|
| external_table_io_hole_size | Specifies the maximum distance (in bytes) between two consecutive IO ranges. |
| external_table_io_range_size | Specifies the maximum size (in bytes) of a major compaction range. |
System log related
| Parameter | Description |
|---|---|
| log_disk_throttling_maximum_duration | Specifies the maximum available time for the log disk after write throttling is triggered. |
| ls_gc_delay_time | Specifies the delay time for log deletion. |
| standby_db_preferred_upstream_log_region | Specifies the preferred region for log synchronization from the upstream database in a physical standby database scenario. |
| archive_lag_target | Specifies the delay time for log archiving. |
Materialized views
| Parameter | Description |
|---|---|
| enable_mlog_auto_maintenance | Specifies whether to enable the automatic management of materialized view logs. |
| mlog_trim_interval | Specifies the scheduling cycle of the background automatic trimming task for materialized view logs (mlogs). |
| enable_mv_binlog_minimal_mode | Specifies whether to enable the binlog minimal mode in the incremental refresh scenario of materialized views. |
User login
Note
The parameters in the following table take effect only in MySQL-compatible mode.
| Parameter | Description |
|---|---|
| connection_control_failed_connections_threshold | Specifies the threshold for failed login attempts. |
| connection_control_min_connection_delay | Specifies the minimum lock duration after exceeding the threshold for failed login attempts. |
| connection_control_max_connection_delay | Specifies the maximum lock duration for failed login attempts. The lock duration does not increase after reaching this maximum value. |
Compression algorithms
| Parameter | Description |
|---|---|
| spill_compression_codec | Specifies the compression algorithm type for data disk-offloading compression during SQL execution. |
| ob_encoding_granularity | Specifies the maximum number of rows in a microblock encoding. |
Dump and major compaction
| Parameter | Description |
|---|---|
| mds_minor_compact_trigger | Specifies the number of SSTables that triggers MDS minor compaction. |
| mds_compaction_mid_thread_score | Specifies the number of DAG (direct acyclic graph) threads for MDS compaction with medium priority. |
| mds_compaction_high_thread_score | Specifies the number of DAG (direct acyclic graph) threads for MDS compaction with high priority. |
| default_progressive_merge_num | Specifies the default number of progressive major compactions for a new table. |
| major_freeze_duty_time | Specifies the time at which the system triggers major compaction and major freeze. |
| major_compact_trigger | Specifies the number of major freezes that triggers a major compaction. |
| minor_compact_trigger | Specifies the number of SSTables that triggers minor compaction. |
| undo_retention | Specifies the range of versions of data to be retained in the system. The unit is seconds. During minor compaction, the system recycles the versions of data in the specified range. |
| merger_check_interval | Specifies the interval at which the system checks the status of major compaction. |
| freeze_trigger_percentage | Specifies the memory usage threshold of a tenant that triggers global major freeze. |
| max_kept_major_version_number | Specifies the number of major freeze versions to be retained. |
| merge_stat_sampling_ratio | Specifies the sampling ratio of column statistics during major compaction. |
| merge_thread_count | Specifies the number of threads for daily major compaction. |
| merger_completion_percentage | Specifies the percentage of replicas to be completed for major compaction. If this threshold is reached, the current major compaction is considered completed. |
| merger_switch_leader_duration_time | Specifies the interval at which the system switches leaders during daily major compaction. |
| merger_warm_up_duration_time | Specifies the warm-up time for the new baseline data during major compaction. |
Arbitration service
| Parameter | Description |
|---|---|
| arbitration_timeout | Specifies the timeout period for automatic downgrade. |
Unsupported parameters
| Parameter | Description |
|---|---|
| sql_work_area | Specifies the tenant working memory. |
| max_stale_time_for_weak_consistency | Specifies the maximum number of versions of data that can be read in a weakly consistent read. |