This topic describes the cluster-level and tenant-level parameters of OceanBase Database in detail based on their functions.
Cluster-level parameters
Security-related parameters
Parameter name |
Feature description |
|---|---|
| mysql_port | Sets the port number for the SQL service protocol. |
| rpc_port | Sets the protocol port number for remote access. |
| sql_protocol_min_tls_version | Sets the minimum SSL/TLS protocol version to be used for SSL connections of SQL statements. |
| ssl_client_authentication | Specifies whether to enable the SSL connection feature. |
| ssl_external_kms_info | Used to record information required for the operation of the SSL feature in OceanBase Database. It records the configuration dependencies for different SSL usage methods in a JSON string format. The JSON string must contain at least the ssl_mode field. |
| enable_sql_audit | Specifies whether to enable the SQL audit feature. |
| enable_clog_encryption | It specifies whether to enable Clog encryption for BKMI and OBCloud modes under data transparent encryption. |
Backup and recovery-related parameters
Parameter name |
Feature description |
|---|---|
| backup_backup_dest | Specifies the backup destination for the backup data. |
| backup_backup_dest_option | Parameters related to backup control. |
| backup_dest_option | Parameters for controlling backup operations. |
| backup_concurrency | Specifies the concurrency level for writing data to the file system during backup. |
| backup_dest | The path for setting the baseline backup and log archive. |
| backup_log_archive_option | Defines the archiving options for backup logs. |
| backup_net_limit | Sets the total bandwidth for cluster backup. |
| backup_recovery_window | Specifies the point in time to which backup data can be restored. |
| backup_region | Specifies the region for backup execution. |
| backup_zone | Specifies the zone for backup execution. |
| log_archive_batch_buffer_limit | Controls the maximum memory usage of a single node for log archiving. |
| log_archive_checkpoint_interval | Specifies the time interval for checking log archiving checkpoints of cold data. |
| restore_concurrency | Sets the maximum concurrency for restoring tenant data from a backup. |
cgroup-related parameters
Parameter name |
Feature description |
|---|---|
| enable_cgroup | It is used to control whether the cgroup feature is enabled for the OBServer node. |
CPU-related parameters
Parameter name |
Feature description |
|---|---|
| cpu_count | Sets the total number of system CPUs. If set to 0, the system automatically detects the number of CPUs. |
| server_balance_cpu_mem_tolerance_percent | In the node load balancing strategy, this parameter is used to set the tolerance for CPU and memory resource imbalance. |
| server_cpu_quota_max | Sets the maximum CPU quota available for the system. |
| server_cpu_quota_min | Sets the minimum CPU quota available for the system, which is automatically reserved. |
| token_reserved_percentage | In tenant CPU scheduling, it specifies the proportion of idle tokens reserved for the tenant each time. |
| workers_per_cpu_quota | Sets the number of worker threads allocated to each CPU. |
| cpu_reserved | It specifies the number of CPU cores reserved for the system. The remaining CPU cores will be exclusively used by OceanBase Database. |
| sys_cpu_limit_trigger | Sets the CPU utilization threshold. When the CPU utilization exceeds this threshold, the system will pause the execution of background tasks. |
| system_cpu_quota | Sets the CPU quota available to the sys tenant. |
| tenant_cpu_variation_per_server | It specifies the allowable deviation for CPU quota scheduling among multiple units of a tenant. |
Read/write and query-related parameters
Parameter name |
Feature description |
|---|---|
| weak_read_version_refresh_interval | Sets the refresh interval for weak-consistency read version numbers, which affects the latency of weak-consistency reads. |
| large_query_worker_percentage | Sets the percentage of worker threads reserved for processing large queries. |
| large_query_threshold | The threshold for setting the query execution time. |
| trace_log_slow_query_watermark | Sets the threshold for query execution time. Queries whose execution time exceeds this threshold are considered slow queries, and their trace logs are printed to the system log. |
Load balancing-related parameters
Parameter name |
Feature description |
|---|---|
| balancer_log_interval | Sets the interval for printing statistical logs by the threads of a disaster recovery task. |
| balancer_task_timeout | This parameter specifies the timeout period for background tasks such as load balancing. |
| balancer_tolerance_percentage | This parameter specifies the tolerance for disk imbalance among multiple units within a tenant under the load balancing strategy. If the disk usage deviates from the average by up to this tolerance, no balancing action is triggered. |
| server_balance_critical_disk_waterlevel | Sets the watermarks for the load balancing feature that controls disk space usage. |
| server_balance_disk_tolerance_percent | This parameter specifies the tolerance for imbalance in the disk load balancing strategy among nodes. |
| resource_hard_limit | Specifies the CPU overprovisioning percentage. |
| enable_sys_unit_standalone | Specifies whether the unit of the system tenant is exclusive to a node. |
| balancer_emergency_percentage | It is used to set the unit load threshold. When the unit load exceeds this threshold, replica migration out is allowed, and load balancing is performed even during major compaction. |
| balancer_timeout_check_interval | Sets the timeout interval for checking background tasks such as load balancing. |
| data_copy_concurrency | Sets the maximum number of concurrently executing data migration replication tasks in the system. |
| tenant_groups | Specifies the tenant group used in the load balancing strategy. |
| unit_balance_resource_weight | It is used to set the resource weight used in the unit balancing strategy and generally does not require manual configuration. |
| resource_soft_limit | Specifies whether to enable unit balancing. |
Replica-related parameters
Parameter name |
Feature description |
|---|---|
| unit_gc_wait_time | Specifies the maximum wait time for a unit GC. If the GC does not start within this period, it is forced. |
| enable_rereplication | The master switch for automatic migration and replication of log stream replicas. |
| ls_meta_table_check_interval | This parameter specifies the check interval for the background inspection thread of the DBA_OB_LS_LOCATIONS or CDB_OB_LS_LOCATIONS view. |
| sys_bkgd_migration_change_member_list_timeout | Specifies the timeout period for changing the Paxos member group during replica migration. |
| sys_bkgd_migration_retry_num | Specifies the maximum number of retries allowed when a replica migration fails. |
| balance_blacklist_failure_threshold | Sets the threshold for the number of consecutive failures of background tasks such as replica migration. When the number of consecutive failures exceeds this threshold, the task will be placed in 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 | This parameter specifies the CPU quota allocated to background tasks related to replica election. |
| election_blacklist_interval | Specifies the time interval during which a primary replica cannot be re-elected as the primary after being revoked. |
| enable_auto_leader_switch | Specifies whether to enable automatic leader switchover. |
| enable_smooth_leader_switch | It is the switch for the smooth leader switchover feature. |
| global_index_build_single_replica_timeout | Specifies the timeout period for building each replica when creating a global index. |
| get_leader_candidate_rpc_timeout | Sets the internal request timeout period for obtaining candidates in automatic leader switchover. |
| migrate_concurrency | Sets the maximum concurrency for internal data migration. |
| rebuild_replica_data_lag_threshold | Sets the threshold for the transaction log lag between the standby replica and the primary replica. When this threshold is exceeded, replica reconstruction is triggered. |
| server_data_copy_out_concurrency | Specifies the maximum concurrency for migrating data out of a single node. |
| server_data_copy_in_concurrency | Specifies the maximum number of concurrent data migrations to a single node. |
| replica_safe_remove_time | Specifies the maximum period for which deleted replicas can be retained before cleanup. |
Cache-related parameters
Parameter name |
Feature description |
|---|---|
| bf_cache_miss_count_threshold | It specifies the number of misses required before a Bloomfilter cache is created for a macroblock. |
| bf_cache_priority | Sets the Bloom filter cache priority. |
| cache_wash_threshold | Sets the capacity threshold for triggering cache cleanup. |
| fuse_row_cache_priority | Sets the priority of the fused row cache in the caching system. |
| user_row_cache_priority | Sets the priority of baseline data row cache in the caching system. |
| autoinc_cache_refresh_interval | Sets the refresh interval for the auto-increment column cache. |
| plan_cache_evict_interval | Sets the eviction time interval for the plan cache. |
| index_block_cache_priority | Sets the cache priority for metadata index microblocks. |
| opt_tab_stat_cache_priority | Sets the cache priority for statistics. |
| tablet_ls_cache_priority | Sets the tablet mapping cache priority. |
| user_block_cache_priority | Sets the priority of a data block cache in the caching system. |
| index_info_block_cache_priority | Sets the cache priority of a block index in the caching system. |
| index_cache_priority | Used to set the index's priority in the caching system. |
| user_tab_col_stat_cache_priority | Sets the priority for caching statistics in the cache system. |
| plan_cache_high_watermark | The threshold for the memory occupied by the plan cache. When the memory usage exceeds this threshold, automatic eviction is triggered. |
| plan_cache_low_watermark | The threshold for the memory occupied by the plan cache. Evictions will stop when the memory usage drops below this threshold. |
Partition-related parameters
Parameter name |
Feature description |
|---|---|
| tablet_meta_table_check_interval | This parameter specifies the check interval for the background inspection thread of the DBA_OB_TABLET_REPLICAS or CDB_OB_TABLET_REPLICAS view. |
| tablet_meta_table_scan_batch_count | This parameter specifies the number of tablets cached in memory during the iteration of a tablet meta table. |
| tablet_size | It specifies the size of each shard during internal parallel processing (such as major compaction and query execution) within a partition. |
| auto_broadcast_location_cache_rate_limit | Sets the maximum number of partitions whose location information changes that each OBServer can broadcast per second. |
| auto_refresh_location_cache_rate_limit | Specifies the maximum number of partitions that each OBServer node can trigger automatic refresh for per second. |
| enable_pg | Specifies whether to enable the partition group feature. |
| gc_wait_archive | Specifies whether to wait for all logs on a partition to be archived before initiating garbage collection for the partition. |
| partition_table_check_interval | It specifies the time interval for an OBServer node to delete non-existent replicas from a partitioned table. |
Background execution thread-related parameters
Parameter name |
Feature 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 the value of this parameter is the same as that of the net_thread_count parameter. |
| auto_leader_switch_interval | Sets the working interval time for the automatic leader switchover background thread. |
| switchover_process_thread_count | Sets the size of the thread pool related to primary/standby switchover. |
I/O-related parameters
Parameter name |
Feature description |
|---|---|
| sync_io_thread_count | Configures the number of threads for synchronizing I/O requests. |
| syslog_io_bandwidth_limit | This parameter specifies the upper limit of disk I/O bandwidth that system logs can occupy. System logs exceeding this bandwidth limit will be discarded. |
| disk_io_thread_count | Specifies the number of threads for disk I/O. The value must be an even number. |
| net_thread_count | Sets the number of network I/O threads. |
| data_storage_error_tolerance_time | The maximum tolerated time for the data disk to be in the ERROR state. |
| sys_bkgd_io_high_percentage | Sets the maximum percentage of system background I/O usage. |
| sys_bkgd_io_low_percentage | Sets the minimum percentage of system background I/O usage. |
| user_iort_up_percentage | This parameter is used to set the user disk I/O latency threshold. When the user disk I/O latency exceeds this threshold, the system's background I/O tasks will be throttled. |
| ob_esi_rpc_port | Sets the communication port between the obesi process and the observer process. |
| enable_ob_esi_process | It is used to control whether to enable the obesi (external storage interface) process. |
| ob_esi_session_timeout | Sets the timeout period for an obesi process to hold active session resources. |
| ob_esi_io_concurrency | Sets the number of concurrent I/O operations for the OBDI process. |
| ob_esi_syslog_level | Sets the current logging level for the OBESE 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 | Sets the maximum capacity of the block cache for a single I/O aggregate read. |
| multiblock_read_size | This parameter specifies the I/O aggregation size for data reading. |
Cluster-related parameters
Parameter name |
Feature description |
|---|---|
| all_server_list | Displays the addresses of all servers in the cluster. |
| cluster | Sets the name of the current OceanBase cluster. |
| cluster_id | Sets the ID of the current OceanBase cluster. |
| rpc_timeout | Sets the timeout period for internal requests within a cluster. |
| all_cluster_list | Displays the list of servers accessing the same config_url. |
| enable_election_group | Specifies whether to enable the election group strategy. |
| local_ip | The IP address of the server where the OBServer node is to be installed. |
| observer_id | A unique identifier for the RS allocated to an OBServer node in a cluster. |
| min_observer_version | Displays the minimum application version number of OBServer nodes in the cluster. |
Bandwidth-related
Parameter name |
Feature description |
|---|---|
| enable_ob_ratelimit | This API is used to enable inter-region rate limiting in an RPC connection. |
| ob_ratelimit_stat_period | Specifies the time interval for calculating and updating the maximum bandwidth on an OBServer node. |
Location cache related
Parameter name |
Feature description |
|---|---|
| virtual_table_location_cache_expire_time | Sets the cache expiration time for the virtual table location information. |
| location_cache_refresh_rpc_timeout | The timeout for refreshing location_cache via RPC. |
| location_cache_refresh_sql_timeout | The timeout for refreshing location_cache via SQL. |
| location_cache_refresh_min_interval | Sets the minimum interval for refreshing location cache requests to prevent excessive refresh requests from overwhelming the system. |
| location_cache_cpu_quota | Sets the CPU quota for the location caching module. |
| location_fetch_concurrency | Sets the maximum concurrency for refreshing the local cache on a single node. |
| location_refresh_thread_count | Specifies the number of threads used by an OBServer node to obtain partition location information from the root service. |
| enable_auto_refresh_location_cache | This parameter specifies whether to enable automatic refresh of the location cache. |
Directory path related
Parameter name |
Feature description |
|---|---|
| config_additional_dir | Specifies multiple directories for storing the configuration file locally to ensure redundant storage of multiple configuration files. |
| data_dir | Specifies the directory for storing data such as SSTables. |
Memory space
Parameter name |
Feature description |
|---|---|
| datafile_disk_percentage | Indicates the percentage of the total space on the disk where data_dir is located that is occupied by OceanBase Database. The disk where data_dir resides will be initialized by the OceanBase Database system for data storage. |
| data_disk_usage_limit_percentage | Specifies the maximum percentage of data files that can be written. When the usage exceeds this threshold, data migration in is prohibited. |
| enable_sql_operator_dump | Specifies whether to allow intermediate results of SQL processing to be written to disk to free up memory. |
| global_write_halt_residual_memory | The global remaining memory threshold that triggers the pause of write operations for ordinary tenants (the sys tenant is not affected). |
| leak_mod_to_check | This is used for memory leak detection and is an internal debugging feature. |
| memory_chunk_cache_size | Sets the memory block capacity cached by the memory allocator. |
| memory_limit | Indicates the total size of available memory. |
| memory_limit_percentage | Sets the percentage of total memory that the system's total available memory size occupies. |
| memory_reserved | This parameter specifies the memory size reserved for underlying system modules. |
| memstore_limit_percentage | Sets the percentage of a tenant's total available memory that can be used by the MemStore. |
| system_memory | Used to set the memory capacity reserved by the system for the tenant with tenant ID 500. |
| use_large_pages | Manages large memory pages used by the database. |
| datafile_maxsize | Specifies the maximum size for automatic disk file expansion. |
| datafile_next | Specifies the growth step for automatic disk file expansion. |
| storage_meta_cache_priority | Used to control the priority of storing Meta Cache in KVCache. |
PX-related
Parameter name |
Feature description |
|---|---|
| px_task_size | This parameter specifies the amount of data processed by each task in the SQL parallel query engine. |
| max_px_worker_count | Sets the maximum number of threads used by the SQL parallel query engine. |
Others
Parameter name |
Feature description |
|---|---|
| builtin_db_data_verify_cycle | Specifies the self-check cycle for bad data blocks, in days. A value of 0 indicates no check. |
| data_storage_warning_tolerance_time | Specifies the tolerance period for allowing the data disk status to remain at WARNING. |
| dead_socket_detection_timeout | The time interval for detecting invalid sockets. |
| migration_disable_time | Specifies the duration for which data migration is paused when a node fails to migrate data in due to full disk or other reasons. |
| datafile_size | Specifies the size of the data file. This parameter is generally not required. |
| devname | Specifies the name of the NIC device bound to the service process. |
| enable_perf_event | Specifies whether to enable the performance event collection feature. |
| 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 functions are suspended. |
| 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 | The URL address of the OBConfig service. |
| rpc_port | Sets the protocol port number for remote access. |
| stack_size | Sets the size of the program function call stack. |
| tenant_task_queue_size | Sets the request queue size for each tenant. |
| zone | Specifies the name of the zone where the node is located. This parameter is generally not required. |
| recyclebin_object_expire_time | Automatically purges expired schema objects from the recycle bin. |
| default_row_format | Specifies the default row format to use when creating tables in MySQL-compatible mode. |
| sys_bkgd_net_percentage | Sets the percentage of network bandwidth that background system tasks can occupy. |
| schema_history_recycle_interval | The time interval between executions of the schema multi-version record recycling task. |
| enable_asan_for_memory_context | When using ob_asan, this parameter specifies whether to allow ObAsanAllocator (by default, ObAllocator serves as the allocator for MemoryContext). |
| ofs_list | Stores the OFS (OceanBase File System, a distributed storage system independently designed by OceanBase Database) connection URL for each zone. It is primarily used to enable RootService to access files across zones in OFS deployment mode. |
| async_ps_cursor_max_count | Controls the maximum number of asynchronous PS cursors allowed on a single node. |
| das_batch_rpc_delay_us | Used to control the global index back-to-table batch RPC channel (LOOKUP_DAS_BATCH_REQ1/2) aggregation and sending delay. |
Root Service
Parameter name |
Feature description |
|---|---|
| rootservice_async_task_queue_size | Sets the size of the internal asynchronous task queue for the Root Service. |
| rootservice_async_task_thread_count | Sets the thread pool size for asynchronous tasks within the Root Service. |
| rootservice_list | Displays the list of servers where the root service and its replicas reside. |
| rootservice_ready_check_interval | Specifies the interval for waiting and checking the cluster status after the root service starts. |
| rootservice_memory_limit | Sets the maximum memory capacity limit for the Root Service. |
| lease_time | Sets the duration of a heartbeat lease. |
| server_check_interval | Sets the time interval for consistency check on server tables. |
| server_permanent_offline_time | Sets the time threshold for detecting a node heartbeat interruption. That is, after a node's heartbeat is interrupted for this duration, it is considered permanently offline, and its data replicas must be automatically replenished. |
| ob_event_history_recycle_interval | Specifies the interval for reclaiming historical events. |
| enable_rootservice_standalone | It specifies whether to allow the sys tenant and RootService to exclusively occupy OBServer nodes. |
| fast_recovery_concurrency | It is used to control the concurrency of quick recovery tasks scheduled by RootService when executed on OBServer nodes. |
| wait_leader_batch_count | Specifies the maximum number of partitions that RootService can send leader switchover commands for at a time. |
RPC Authentication
Parameter name |
Feature description |
|---|---|
| rpc_client_authentication_method | Sets the security authentication method for the RPC client. |
| rpc_server_authentication_method | Specifies the security authentication method for the RPC server. |
SQL-related
Parameter name |
Feature description |
|---|---|
| sql_login_thread_count | Sets the number of threads for processing SQL login requests. |
| sql_audit_memory_limit | Specifies the maximum memory that SQL audit data can occupy. |
| enable_sys_table_ddl | Specifies whether manual creation of system tables is allowed. |
| internal_sql_execute_timeout | Sets the time interval for internal DML requests in the system. |
Transactions and transaction logs
Parameter name |
Feature description |
|---|---|
| log_disk_size | Specifies the disk size for redo logs. |
| log_disk_percentage | Sets the percentage of total disk space occupied by redo logs. |
| dtl_buffer_size | This parameter specifies the cache size for the SQL data transfer module. |
| ignore_replay_checksum_error | Specifies whether to ignore checksum errors that occur during the replay of transaction logs. |
| trx_2pc_retry_interval | Specifies the time interval for automatic retries when a two-phase commit fails. |
| standby_fetch_log_bandwidth_limit | This parameter specifies the maximum total bandwidth that can be occupied per second for all servers in the cluster where the standby tenant is located to synchronize logs from the primary tenant. |
| log_storage_warning_tolerance_time | Specifies the time before a disk is marked as bad after failing to serve I/O requests from the log disk. This parameter determines when a leader switchover is triggered. |
| clog_disk_utilization_threshold | The threshold for controlling the reuse of disk space for clogs or ilogs. |
| clog_expire_days | Specifies the expiration time for clog files. A clog file is deleted when the time elapsed since its last modification exceeds the specified expiration time. |
| clog_cache_priority | Sets the priority of transaction log cache usage. |
| clog_disk_usage_limit_percentage | Specifies the maximum percentage of disk space available for transaction logs. |
| clog_sync_time_warn_threshold | Sets the alert threshold for transaction log synchronization duration. A WARN log is generated when the synchronization duration exceeds this value. |
| clog_transport_compress_func | Sets the compression algorithm used for internal transaction log transmission. |
| enable_one_phase_commit | This parameter specifies whether to enable the one-phase commit optimization for transaction commits. |
| enable_separate_sys_clog | Specifies whether to store system transaction logs separately from user transaction logs. |
| flush_log_at_trx_commit | This parameter specifies the transaction log writing strategy when a transaction is committed. |
| ignore_replay_checksum_error | Specifies whether to ignore checksum errors that occur during the replay of transaction logs. |
| index_clog_cache_priority | Sets the priority of transaction log indexes in the caching system. |
| ilog_index_expire_time | Sets the maximum time within which an OBServer node can read ILog files. |
| trx_force_kill_threshold | Sets the maximum wait time for killing transactions when required due to freezing or leader switchover. |
Lock-related
Parameter name |
Feature description |
|---|---|
| trx_try_wait_lock_timeout | Sets the wait duration for row locks during statement execution. |
Debugging
Parameter name |
Feature description |
|---|---|
| debug_sync_timeout | This API is used to enable the debug sync debugging switch and set its timeout period. |
| enable_rich_error_msg | This parameter specifies whether to add debug information such as the server address, time, and trace ID to client messages. |
TCP
Parameter name |
Feature description |
|---|---|
| enable_tcp_keepalive | Enables or disables the keep-alive mechanism for client connections. |
| tcp_keepidle | Specifies the interval, in seconds, after which a Keepalive probe packet is sent if no data is transmitted over the client connection to the server. |
| tcp_keepintvl | Specifies the time interval, in seconds, between two consecutive probes when the keep-alive mechanism for client connections is enabled. |
| tcp_keepcnt | Specifies the maximum number of retries before closing an inactive connection. |
External tables
Parameter name |
Feature description |
|---|---|
| external_table_disk_cache_max_percentage | This parameter specifies the maximum percentage of datafile_size that can be allocated to disk cache for external tables. |
System logs
Parameter name |
Feature description |
|---|---|
| alert_log_level | The level of the alert log. |
| 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 enable the switch for recording old logs generated before an OBServer node is started. This switch works together with max_syslog_file_count to determine whether the recycling logic should consider old log files. |
| enable_syslog_wf | Specifies whether to log system logs of WARN level and above to a separate log file. |
| max_string_print_length | Specifies the maximum length of a single line in system logs that can be printed. |
| max_syslog_file_count | Specifies the maximum number of log files that can be retained before log files are recycled. |
| syslog_level | Sets the system log level. |
| trace_log_sampling_interval | Specifies the time for regularly printing trace logs. |
| diag_syslog_per_error_limit | Specifies the maximum number of DIAG system logs allowed per second for each error code. Logs will no longer be printed once this threshold is exceeded. |
| enable_log_archive | Specifies whether to enable log archiving. |
| system_trace_level | Sets the log level for system tracing logs. |
Compression algorithms
Parameter name |
Feature description |
|---|---|
| default_compress_func | It is used to set the default compression algorithm for table data. Other compression algorithms can also be specified when creating a table. |
| default_compress | Specifies the default compression strategy to use when creating tables in Oracle-compatible mode. |
| tableapi_transport_compress_func | Sets the compression algorithm used for transmitting query results in OBKV-Table. |
| default_transport_compress_func | Sets the RPC compression algorithm for the entire cluster. |
Minor compaction and major compaction
Parameter name |
Feature description |
|---|---|
| enable_major_freeze | Specifies whether to enable automatic global freeze. |
| micro_block_merge_verify_level | Sets the verification level for macroblocks during major compaction. |
| row_compaction_update_limit | Specifies the number of modifications required to trigger in-memory major compaction for row data. |
| enable_global_freeze_trigger | Specifies whether to enable automatic global freeze. |
| enable_merge_by_turn | Specifies whether to enable the rolling compaction strategy. |
| enable_manual_merge | Specifies whether to enable manual major compaction. |
| global_major_freeze_residual_memory | The remaining memory threshold for triggering a global freeze. A global freeze is triggered when the remaining memory drops below this percentage. |
| minor_deferred_gc_time | Sets the time interval for delayed SSTable reclamation after a major compaction. |
| zone_merge_concurrency | Specifies the number of zones that can run concurrently during major compactions. When this parameter is set to 0, the system automatically determines the optimal concurrency based on the deployment. |
| zone_merge_order | Specifies the rotation order for major compactions in zones. If not specified, the system automatically determines the order. |
| zone_merge_timeout | Sets the major compaction timeout period for a single zone. |
| minor_freeze_times | Specifies the number of freezes that trigger a major compaction. |
| minor_merge_concurrency | Specifies the number of concurrent threads during minor compactions. |
| minor_warm_up_duration_time | This parameter specifies the warm-up time for generating a new minor compaction file during a minor compaction. |
| row_purge_thread_count | Sets the maximum number of worker threads for in-row data merging in execution memory. |
Arbitration service
Parameter name |
Feature description |
|---|---|
| arbitration_degradation_policy | Specifies the automatic downgrade strategy. |
| ob_startup_mode | Specifies the startup mode of the OBServer node. This parameter can be modified only during the first startup. |
Resource isolation
Parameter name |
Feature description |
|---|---|
| clog_io_isolation_mode | Determines whether I/O requests to the clog disk are subject to resource isolation based on whether the clog disk and data disk are independent. |
| enable_global_background_resource_isolation | Enables global isolation of foreground and background resources. |
| global_background_cpu_quota | Controls the CPU quota for background tasks when global foreground-background resource isolation is enabled. |
Tenant-level parameters
Security
Parameter name |
Feature description |
|---|---|
| sts_credential | Specifies the credentials for accessing the STS service provided by OCP. |
| external_kms_info | Used to store key management information. |
| tde_method | Specifies the method for setting up transparent tablespace encryption. |
| audit_sys_operations | Specifies whether to track the operation behavior of system users. |
| audit_trail | Specifies whether to enable database auditing. |
Storage
Parameter name |
Feature description |
|---|---|
| default_table_organization | Specifies the default table organization mode for creating tables. |
| default_table_merge_engine | Used to specify the default merge_engine for creating tables in user tenants. |
CPU
Parameter name |
Feature description |
|---|---|
| cpu_quota_concurrency | It specifies the maximum number of concurrent tasks allowed for each CPU quota of a tenant. |
Read/write/query
Parameter name |
Feature description |
|---|---|
| enable_monotonic_weak_read | Specifies whether to enable monotonic read. |
| 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 re-read query_response_time_range_base. |
| query_response_time_range_base | Specifies the interval for collecting time parameters for the information_schema.QUERY_RESPONSE_TIME view. |
Load balancing
Parameter name |
Feature description |
|---|---|
| zone_disk_balance_tolerance_percentage | It is used to control the tolerance for imbalance in the inter-zone table group disk balancing algorithm. |
| enable_ls_leader_balance | Controls whether to enable automatic leader balancing for log streams. |
| enable_gts_standalone | This parameter specifies whether to enable the feature that allows a tenant's GTS service to exclusively use a set of units. |
| balancer_idle_time | Sets the wake-up interval for idle threads of background tasks such as load balancing. |
| enable_rebalance | It 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 partition balancing scheduling cycle. |
| enable_database_sharding_none | Controls whether to enable automatic aggregation for user tables when creating a database. |
Replica-related
Parameter name |
Feature description |
|---|---|
| replica_parallel_migration_mode | Specifies the mode for the parallel migration of log stream replicas. |
| choose_migration_source_policy | Specifies the priority strategy for selecting source replicas during migration. |
Scaling
Parameter name |
Feature description |
|---|---|
| ls_scale_out_factor | The scaling factor of log streams, which controls the number of log streams for a tenant on each service node. |
Backup and Recovery
Parameter name |
Feature description |
|---|---|
| recover_table_concurrency | Specifies the maximum number of tables that can be restored in parallel during the cross-tenant table import phase of table-level restore. |
| recover_table_dop | Specifies the maximum number of tables that can be restored in parallel during the cross-tenant table import phase of table-level restore. |
| log_restore_concurrency | Sets the concurrency for log restore. |
| log_archive_concurrency | Sets the concurrency for log archiving. |
| backup_data_file_size | Specifies the maximum file size for a single data backup file. |
Partition-related
Parameter name |
Feature description |
|---|---|
| enable_auto_split | It is used to control whether the auto-partitioning feature is enabled for a tenant. |
| auto_split_tablet_size | It specifies the threshold for triggering a split after the auto-partitioning feature is enabled for this tenant. |
| global_index_auto_split_policy | Specifies whether to enable automatic partitioning for new global indexes. Default value: DISTRIBUTED. |
Backend Execution Threads
Parameter name |
Feature description |
|---|---|
| px_workers_per_cpu_quota | Sets the ratio of worker threads for parallel execution. |
| ddl_thread_score | Specifies the number of threads used by the DDL task. |
| compaction_low_thread_score | Sets the number of worker threads for low-priority compaction. |
| compaction_high_thread_score | Specifies the number of worker threads for high-priority compaction. |
| compaction_mid_thread_score | Sets the number of worker threads for medium-priority compaction. |
| ha_high_thread_score | Sets the current number of worker threads for high-priority threads in high-availability mode. |
| ha_mid_thread_score | Sets the current number of worker threads for priority threads in high availability mode. |
| ha_low_thread_score | Sets the current number of worker threads for high-availability, low-priority threads. |
| ob_compaction_schedule_interval | The time interval for setting the Compaction scheduling. |
| compaction_dag_cnt_limit | Specifies the maximum number of DAGs allowed in the compaction DAG queue. |
| compaction_schedule_tablet_batch_cnt | Specifies the maximum number of partitions to be scheduled in each batch during compaction scheduling. |
| tenant_sql_login_thread_count | Specifies the number of threads for MySQL tenant logins, 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 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 |
Feature description |
|---|---|
| enable_adaptive_plan_cache | This parameter specifies whether to enable adaptive plan caching for a tenant. |
| result_cache_max_size | Specifies the maximum memory that can be used by the result cache module. |
| result_cache_max_result | Specifies 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 eviction watermark for result cache. |
| ob_deterministic_udf_cache_max_size | Specifies the maximum memory that can be used by the cache pool for all deterministic UDFs during statement execution. |
I/O
Parameter name |
Feature description |
|---|---|
| io_category_config | It specifies the percentage of I/O requests for each category. |
Compatibility
Note
The parameters in the following table currently take effect only in MySQL-compatible mode.
Parameter name |
Feature description |
|---|---|
| enable_sql_extension | Specifies whether to enable the SQL extension feature for the tenant. |
| compatible | This parameter is used to control the compatibility behavior of related features under a tenant and cannot be set. |
Routing
Parameter name |
Feature description |
|---|---|
| ob_proxy_readonly_transaction_routing_policy | Controls whether the proxy's routing for transactions is affected by read-only statements. |
LOB data
Parameter name |
Feature description |
|---|---|
| lob_enable_block_cache_threshold | Sets the threshold for caching LOB queries stored in OUTROW format. |
Memory space
Parameter name |
Feature description |
|---|---|
| ob_vector_memory_limit_percentage | Configures the memory usage threshold for the vector index module, in percentage. |
| range_optimizer_max_mem_size | The memory used by the Query Range module. |
| rpc_memory_limit_percentage | Sets the maximum memory for RPCs in a tenant as a percentage of the tenant's total memory. |
| query_memory_limit_percentage | Specifies the percentage of tenant memory available for a single SQL statement. |
Disk space
Parameter name |
Feature description |
|---|---|
| temporary_file_max_disk_size | Sets the maximum disk space that temporary files on a single node of a tenant can occupy. |
OBKV-related
Parameter name |
Feature description |
|---|---|
| enable_kv_ttl | Controls whether to start the TTL background task. This parameter takes effect for periodic TTL tasks, but user management commands are not restricted by this setting. Note: The Time-To-Live (TTL) feature is limited to OceanBase Key-Value scenarios and is disabled in SQL scenarios. Otherwise, it may cause unexpected data deletion errors. |
| kv_ttl_duty_duration | Sets the daily scheduled trigger period for the TTL task. The TTL task is triggered once within this period. |
| kv_group_commit_batch_size | Specifies the size of the batch operations executed during an OBKV group commit. |
| kv_group_commit_rw_mode | Used to control scenarios where group commits are performed. |
| kv_hbase_client_scanner_timeout_period | Sets the timeout period for OBKV-HBase streaming queries. |
| kv_ttl_history_recycle_interval | Specifies the retention period for historical TTL task records. |
| ttl_thread_score | Sets the number of worker threads used by the TTL task. |
PL-related
Parameter name |
Feature description |
|---|---|
| plsql_code_type | Specifies the compilation type for PL/SQL code. |
| plsql_debug | Specifies whether to compile the library into a debug version. |
| plsql_optimize_level | Specifies the compilation optimization level. |
| plsql_v2_compatibility | This parameter specifies whether to enable the DDL-compilation caching feature for stored procedures. |
| package_state_sync_max_size | Used to control the serializable length for a single package state. |
| ob_enable_java_udf | This parameter specifies whether to enable or disable the Java UDF feature. |
| enable_pl_rich_error_msg | This parameter specifies whether to enable or disable the feature of appending additional information to exception messages when they are thrown in PL/SQL. |
Direct load related
Parameter name |
Feature description |
|---|---|
| default_load_mode | It is used to control the data import method in data import scenarios. |
| direct_load_allow_fallback | This parameter specifies whether to roll back the data import operation to a normal import method if a scenario not supported by direct load is encountered during the specified data import operation. |
| load_data_diagnosis_log_compression | Specifies the compression algorithm used for diagnostic logs. |
| load_data_diagnosis_log_max_size | Specifies the maximum size of a diagnostic log file. |
Others
Parameter name |
Feature description |
|---|---|
| enable_standby_semi_sync | Controls whether to enable semi-synchronous replication for the standby database (standby tenant). |
| schema_history_archive_expire_time | Specifies the retention period for multi-version historical archive data of a schema. |
| schema_history_expire_time | Specifies the expiration time for historical metadata data. |
| zone_deploy_mode | Sets the distribution pattern of tenants across zones. |
| enable_early_lock_release | This parameter specifies whether to enable the pre-row unlocking feature. |
| workarea_size_policy | Sets the strategy for manually or automatically adjusting the SQL workspace size. |
| open_cursors | Limits the number of cursors that a single session can open at the same time. |
| ob_ssl_invited_common_names | Records the list of application identities for the current tenant, which are obtained from the cn field (common name) of the subject field in the client certificate used for SSL mutual authentication. |
| ob_enable_batched_multi_statement | It is used to set whether to enable batch processing for grouped execution optimization. |
| job_queue_processes | It specifies the maximum number of tasks that can run concurrently for each tenant, aiming to control task competition for tenant resources. |
| default_auto_increment_mode | Sets the default auto-increment mode for auto-increment columns. |
| ob_query_switch_leader_retry_timeout | Sets the maximum retry time for failed queries, in microseconds (us). |
| default_enable_extended_rowid | Specifies whether to create the table in extended ROWID mode. |
| dump_data_dictionary_to_log_interval | Controls the cycle for persisting tenant data dictionaries. |
| enable_user_defined_rewrite_rules | A toggle switch for controlling whether user-defined rules are enabled. |
| storage_rowsets_size | Controls the number of rows processed in a vectorized batch by the columnar storage engine. |
| approx_count_distinct_precision | Used to configure the result precision of the approx_count_distinct function. |
| default_skip_index_level | Controls the mechanism for generating skip indexes in incremental SSTables for a tenant. |
Transactions and transaction logs
Parameter name |
Feature description |
|---|---|
| log_disk_utilization_limit_threshold | Sets the threshold for the tenant log disk usage limit. When the tenant's log disk usage exceeds the total tenant log disk space multiplied by this value, log writing is no longer allowed. |
| log_disk_utilization_threshold | Sets the threshold for tenant log disk utilization. When a tenant's log disk usage exceeds the total tenant log disk space multiplied by this value, log file reuse is performed. |
| writing_throttling_maximum_duration | The write speed is controlled by managing the memory allocation progress. Specifically, it specifies the time required to allocate the remaining MemStore memory after the write throttling is triggered. |
| writing_throttling_trigger_percentage | It specifies the percentage threshold of the MemStore memory usage relative to the total MemStore memory that triggers a write throttling. |
| standby_db_fetch_log_rpc_timeout | Sets the RPC timeout period for log pulling from the standby database. This controls how long the standby database's log transfer service waits before detecting that a primary server is unavailable and switching to another server. |
| log_disk_throttling_percentage | The percentage of unreclaimable log disk space that triggers the log write throttling. |
| log_transport_compress_all | Specifies whether to compress log data during transmission. |
| log_transport_compress_func | A compressor used for log transmission. |
| clog_max_unconfirmed_log_count | Sets the maximum number of uncommitted logs in the transaction module. |
| clog_persistence_compress_func | Sets the compression algorithm for transaction log persistence. |
| enable_clog_persistence_compress | Specifies whether to enable compression for transaction log persistence on disk. |
Data types
Parameter name |
Feature description |
|---|---|
| json_document_max_depth | Sets the maximum number of nested levels allowed in a JSON document. |
Lock-related
Parameter name |
Feature description |
|---|---|
| enable_lock_priority | Table lock priority switch. |
External tables
Parameter name |
Feature description |
|---|---|
| external_table_io_hole_size | Sets the maximum distance (in bytes) between two consecutive I/O ranges. |
| external_table_io_range_size | Specifies the maximum size of the major compaction range in bytes. |
System logs
Parameter name |
Feature description |
|---|---|
| log_disk_throttling_maximum_duration | This parameter specifies the maximum available time for the log disk after log throttling is triggered. |
| ls_gc_delay_time | Specifies the time after which a tenant's log stream is deleted. |
| standby_db_preferred_upstream_log_region | Specifies the preferred region for log synchronization from the primary tenant to the standby tenant in a physical standby scenario. |
| archive_lag_target | Specifies the delay before tenant log archiving starts. |
Materialized view related
Parameter name |
Feature description |
|---|---|
| enable_mlog_auto_maintenance | Controls whether to enable automatic materialized view log management. |
| mlog_trim_interval | It is used to control the scheduling cycle of the automatic mlog pruning task in the background. |
| enable_mv_binlog_minimal_mode | Used to control the switch for the binlog minimal mode in the incremental refresh of materialized views. |
| mv_refresh_concurrency | It specifies the maximum number of materialized view refresh tasks that can run concurrently within a tenant. |
User login related
Note
The parameters in the following table currently take effect only in MySQL-compatible mode.
Parameter name |
Feature description |
|---|---|
| connection_control_failed_connections_threshold | Specifies the threshold for user incorrect login attempts. |
| connection_control_min_connection_delay | Specifies the minimum duration for which a user account is locked after exceeding the number of failed login attempts. |
| connection_control_max_connection_delay | Specifies the maximum duration for lockout after failed login attempts. Once the duration reaches this maximum, it will no longer increase. |
Compression Algorithms
Parameter name |
Feature description |
|---|---|
| spill_compression_codec | Specifies the compression algorithm type for implementing data compression during SQL execution. |
| ob_encoding_granularity | Sets the maximum number of rows for encoding a single microblock. |
Minor compaction and major compaction related
Parameter name |
Feature description |
|---|---|
| mds_minor_compact_trigger | It specifies the number of SSTables that trigger a minor compaction for MDS. |
| mds_compaction_mid_thread_score | Sets the number of DAG (Direct Acyclic Graph) threads for medium-priority MDS compaction. |
| mds_compaction_high_thread_score | Sets the number of DAG (Direct Acyclic Graph) threads for high-priority MDS compaction. |
| default_progressive_merge_num | Specifies the default number of progressive major compactions for a newly created table. |
| major_freeze_duty_time | Specifies the trigger time for daily scheduled freezing and major compaction. |
| major_compact_trigger | Specifies the number of freezes that trigger a major compaction. |
| minor_compact_trigger | Configures the threshold for the number of SSTables that triggers a minor compaction. |
| undo_retention | Specifies the duration for which the system retains multi-version data, in seconds. This setting controls the recycling of multi-version data during minor compactions. |
| merger_check_interval | Sets the scheduling interval for the major compaction status-check thread. |
| freeze_trigger_percentage | Sets the memory usage threshold for tenants that triggers a global freeze. |
| max_kept_major_version_number | Specifies the number of frozen versions to retain for data retention. |
| merge_stat_sampling_ratio | Sets the sampling rate for data column statistics during major compaction. |
| merge_thread_count | Sets the number of threads for daily major compaction. |
| merger_completion_percentage | This parameter specifies the percentage threshold for the number of replicas completed with major compactions. When this threshold is reached, the scheduling for the current round of major compactions is considered complete. |
| merger_switch_leader_duration_time | The time interval for batch leader switchover during daily major compaction. |
| merger_warm_up_duration_time | This parameter specifies the warm-up time for the new baseline data during major compaction. |
Arbitration Service
Parameter name |
Feature description |
|---|---|
| arbitration_timeout | Specifies the timeout period for triggering automatic downgrade. |
Unsupported parameters
Parameter name |
Feature description |
|---|---|
| sql_work_area | Sets the workspace memory for a tenant. |
| max_stale_time_for_weak_consistency | Specifies how old data is allowed to be read in weak-consistency mode. |