This topic lists the cluster-level and tenant-level parameters of OceanBase Database in detail based on their functions.
Cluster-level parameters
Security
| Parameter | Description |
|---|---|
| mysql_port | The port number for the SQL service protocol. |
| rpc_port | The port number for remote access. |
| sql_protocol_min_tls_version | The minimum version of the SSL/TLS protocol for SSL connections to the database. |
| ssl_client_authentication | Whether to enable the SSL connection feature. |
| ssl_external_kms_info | The information required for the SSL feature of OceanBase Database. The information is stored in a JSON string that contains at least 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 log archiving. |
| backup_net_limit | The total bandwidth for cluster backup. |
| backup_recovery_window | The time window for restoring backup data. |
| backup_region | The region for backup. |
| backup_zone | The zone for backup. |
| log_archive_batch_buffer_limit | The maximum memory usage for log archiving. |
| log_archive_checkpoint_interval | The interval between checkpoints for cold data log archiving. |
| restore_concurrency | The maximum number of concurrent threads for restoring tenant data from backup. |
cgroup
| Parameter | Description |
|---|---|
| enable_cgroup | Whether to enable the cgroup feature for OBServer nodes. |
CPU related
| Parameter name | 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 available to the system. |
| server_cpu_quota_min | Specifies the minimum CPU quota available to the system. The system automatically reserves some CPU cores. |
| token_reserved_percentage | Specifies the percentage of idle tokens reserved for each tenant in the CPU scheduling of a tenant. |
| 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. When 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 between multiple units of a tenant. |
Read/write/query related
| Parameter name | 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 large queries. |
| large_query_threshold | Specifies the query execution time threshold. |
| 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 log of the slow query is printed to the system log. |
Load balancing
| Parameter | Description |
|---|---|
| balancer_log_interval | The interval at which the threads of disaster recovery tasks print statistical logs. |
| balancer_task_timeout | The timeout for background tasks such as load balancing. |
| balancer_tolerance_percentage | The tolerance for disk imbalance between multiple Units of a tenant in the load balancing strategy. If the imbalance is within the mean ± tolerance range, no balancing action is triggered. |
| server_balance_critical_disk_waterlevel | The water level for disk space load balancing. |
| server_balance_disk_tolerance_percent | The tolerance for disk imbalance in the load balancing strategy between nodes. |
| resource_hard_limit | The oversubscription percentage for CPU resources. |
| enable_sys_unit_standalone | Whether to enable exclusive node mode for the system tenant. |
| balancer_emergency_percentage | The load threshold for a Unit. If the load exceeds this threshold, replica migration is allowed, even during major compactions. |
| balancer_timeout_check_interval | The interval at which to check for timeouts in background tasks such as load balancing. |
| data_copy_concurrency | The maximum number of concurrent data migration and replication tasks in the system. |
| tenant_groups | The tenant groups used in the load balancing strategy. |
| unit_balance_resource_weight | The resource weights used in the Unit balancing strategy. Generally, no manual configuration is required. |
| resource_soft_limit | Whether to enable Unit balancing. |
Replica-related parameters
| Parameter | Description |
|---|---|
| unit_gc_wait_time | The maximum wait time for unit garbage collection. If the wait time exceeds this value, garbage collection is forcibly triggered. |
| enable_rereplication | Enables or disables automatic migration and replication of log stream replicas. |
| ls_meta_table_check_interval | Specifies the interval at which the background thread checks 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 failures. |
| 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 interval during which a removed leader cannot be elected again. |
| enable_auto_leader_switch | Specifies whether to enable automatic leader switching. |
| enable_smooth_leader_switch | Enables or disables 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 during automatic leader switching. |
| migrate_concurrency | Specifies the maximum number of concurrent internal data migrations. |
| rebuild_replica_data_lag_threshold | Specifies the threshold for the gap between the transaction logs of the standby replica and the leader. If the gap exceeds this threshold, replica rebuilding is triggered. |
| server_data_copy_out_concurrency | Specifies the maximum number of concurrent data migrations from 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 safe retention period for deleted replicas. |
Cache-related
| 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 threshold of memory occupied by the execution plan cache. If this threshold is exceeded, the cache is automatically evicted. |
| plan_cache_low_watermark | Specifies the threshold of memory occupied by the execution plan cache. Eviction stops when the value is below this threshold. |
Partitioning
| 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 is executed. |
| 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 on each OBServer node. |
| auto_refresh_location_cache_rate_limit | Specifies the maximum number of partitions whose location information can be automatically refreshed per second on 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 garbage collecting the partition. |
| partition_table_check_interval | Specifies the interval at which an OBServer node deletes non-existent replicas from a partition table. |
Background execution threads
| 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 the value of this parameter is the same as that of the net_thread_count parameter. |
| auto_leader_switch_interval | Specifies the interval at which the background thread for automatic leader switching is executed. |
| switchover_process_thread_count | Specifies the size of the thread pool for primary-standby switchover. |
I/O-related
| Parameter | Description |
|---|---|
| sync_io_thread_count | The number of threads for synchronous I/O requests. |
| syslog_io_bandwidth_limit | 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 | The number of disk I/O threads. It must be an even number. |
| net_thread_count | 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 | The maximum percentage of system background I/O. |
| sys_bkgd_io_low_percentage | The minimum percentage of system background I/O. |
| user_iort_up_percentage | The threshold for user disk I/O latency. If the user disk I/O latency exceeds this threshold, system background I/O tasks will be throttled. |
| ob_esi_rpc_port | The communication port between the obesi process and the observer process. |
| enable_ob_esi_process | Whether to enable the obesi (external storage interface) process. |
| ob_esi_session_timeout | The timeout for active session resources held by the obesi process. |
| ob_esi_io_concurrency | The number of concurrent I/O operations for the obesi process. |
| ob_esi_syslog_level | The current log recording level for the obesi process. |
| ob_esi_max_syslog_file_count | The maximum number of log files that the obesi process can hold before recycling them. |
| multiblock_read_gap_size | The maximum capacity for a single I/O aggregation read block cache. |
| multiblock_read_size | The size of I/O aggregation for data reading. |
Cluster-related parameters
| 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 strategy. |
| local_ip | The IP address of the server where the 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 parameters
| Parameter name | Description |
|---|---|
| enable_ob_ratelimit | Enables rate limiting between regions in RPC connections. |
| ob_ratelimit_stat_period | Sets the interval for the OBServer node to calculate and update the maximum bandwidth. |
Location Cache-related parameters
| Parameter name | Description |
|---|---|
| virtual_table_location_cache_expire_time | Sets the expiration time for the cache of virtual table location information. |
| location_cache_refresh_rpc_timeout | The timeout period for refreshing the location_cache through an RPC call. |
| location_cache_refresh_sql_timeout | The timeout period for refreshing the location_cache through an SQL statement. |
| location_cache_refresh_min_interval | Sets the minimum interval for location cache refresh requests 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 obtain partition location information from the Root Service. |
| enable_auto_refresh_location_cache | Sets whether to enable automatic refresh of location cache information. |
Directory paths
| Parameter name | Description |
|---|---|
| config_additional_dir | Specifies multiple directories for storing 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 occupied by the disk where the data_dir directory is located (the disk where the data_dir directory is located will be initialized by the OceanBase Database system for data storage). |
| data_disk_usage_limit_percentage | The maximum percentage of data files that can be written. If this threshold is exceeded, data migration is prohibited. |
| enable_sql_operator_dump | Specifies whether to allow the intermediate results of SQL processing to be written to disk to release memory. |
| global_write_halt_residual_memory | The global remaining memory threshold that triggers the suspension of write operations for ordinary tenants (the sys tenant is not affected). |
| leak_mod_to_check | Used for memory leak checks. It is an internal debugging feature. |
| memory_chunk_cache_size | The size of the 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 size reserved for the KVCache. |
| memstore_limit_percentage | The percentage of memory used by the MemStore relative to the total available memory for the tenant. |
| system_memory | The memory size reserved for the tenant with tenant ID 500. |
| use_large_pages | Manages the use of large pages for database memory. |
| datafile_maxsize | The maximum size for automatic disk file expansion. |
| datafile_next | The increment step for automatic disk file expansion. |
| storage_meta_cache_priority | Controls the priority of the storage Meta Cache in the 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 size 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 checking data block errors. The unit is days. If the value is 0, no check is performed. |
| data_storage_warning_tolerance_time | Specifies the tolerance time for the data disk status being 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 a full disk. |
| schema_history_expire_time | Specifies the expiration time of metadata history data. |
| datafile_size | Specifies the size of the data file. Generally, you do not need to set this parameter. |
| 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 the execution of DDL operations. |
| high_priority_net_thread_count | Specifies the number of high-priority network threads. If the value is 0, 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 | Specifies the size of the program function call stack. |
| tenant_task_queue_size | Specifies the size of the request queue for each tenant. |
| zone | Specifies the name of the zone where the node is located. This parameter is usually not required. |
| recyclebin_object_expire_time | Automatically purges expired schema objects in the recycle bin. |
| default_row_format | Specifies the default row format used when creating tables in MySQL mode. |
| sys_bkgd_net_percentage | Specifies the percentage of network bandwidth that can be occupied by background system tasks. |
| schema_history_recycle_interval | Specifies the time interval for the system to execute the schema multi-version record recycling task. |
| enable_asan_for_memory_context | When using ob_asan, specifies whether to allow ObAsanAllocator (default ObAllocator) as the memory context allocator. |
| ofs_list | Stores the connection URLs of OceanBase File System (OFS), an OceanBase Database-designed distributed storage system, for each zone. It is mainly used to meet the needs of RootService to access files across zones in OFS deployment mode. |
Root Service related
| 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 internal asynchronous task thread pool of the Root Service. |
| rootservice_list | Displays the list of machines where the Root Service and its replicas are located. |
| rootservice_ready_check_interval | Specifies the interval between the time when the Root Service starts and the time when the cluster status is checked. |
| rootservice_memory_limit | Specifies the maximum memory capacity limit of the Root Service. |
| lease_time | Specifies the heartbeat lease time. |
| server_check_interval | Specifies the interval for checking the consistency of the Server table. |
| server_permanent_offline_time | Specifies the threshold for node heartbeat interruption, that is, the time after which a node is considered permanently offline. Data replicas on permanently offline nodes need to be automatically replenished. |
| ob_event_history_recycle_interval | Controls the interval for recycling historical events. |
| enable_rootservice_standalone | Specifies whether to allow the system tenant and RootService to exclusively use the OBServer node. |
| fast_recovery_concurrency | Controls the number of concurrent fast recovery tasks scheduled by the RootService on the OBServer. |
| wait_leader_batch_count | Specifies the maximum number of partitions that the RootService can send a leader switch command for each batch. |
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
| Parameter name | Description |
|---|---|
| sql_login_thread_count | Specifies the number of threads for processing SQL login requests. |
| sql_audit_memory_limit | Specifies 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 | Specifies the interval for internal DML requests. |
Transaction and transaction log
| 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 the 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 during transaction log replay. |
| trx_2pc_retry_interval | Specifies the time interval for automatic retries after a two-phase commit fails. |
| standby_fetch_log_bandwidth_limit | Specifies the maximum bandwidth per second that can be occupied in total by all servers in the standby tenant cluster when pulling logs from 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 faulty and a leader switch is triggered. |
| clog_disk_utilization_threshold | Controls the water level for reusing clog or ilog disk space. |
| clog_expire_days | Specifies the expiration time of Clog files. If the last modification time of a Clog file is earlier than the current time by more than the expiration time, the file will be 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 threshold for transaction log synchronization time. A WARN log is generated 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 strategy for writing transaction logs during transaction commit. |
| ignore_replay_checksum_error | Specifies whether to ignore checksum errors 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 file reads. |
| trx_force_kill_threshold | Specifies the maximum waiting time for killing a transaction due to freezing or switchover. |
Lock
| Parameter | Description |
|---|---|
| trx_try_wait_lock_timeout | Specifies the maximum waiting time for row locks during statement execution. |
Debug-related
| Parameter | Description |
|---|---|
| debug_sync_timeout | Enables the Debug Sync feature and sets its timeout. |
| enable_rich_error_msg | Specifies whether to add debugging information, such as the server address, time, and trace ID, to client messages. |
TCP-related
| Parameter | Description |
|---|---|
| enable_tcp_keepalive | Enables or disables the keepalive mechanism for client connections. |
| tcp_keepidle | Specifies the interval in seconds after which a keepalive probe is sent to a client connection that has been idle for the specified period. |
| tcp_keepintvl | Specifies the interval in seconds between consecutive keepalive probes for a client connection. |
| tcp_keepcnt | Specifies the maximum number of retries before closing an inactive client connection. |
System log-related
| Parameter name | Description |
|---|---|
| alert_log_level | Specifies the level of the alert log. |
| enable_record_trace_log | Specifies whether to record trace logs. |
| enable_async_syslog | Specifies whether to enable asynchronous writing of system logs. |
| enable_syslog_recycle | Specifies whether to enable the option to record old logs before OBServer node startup. This option, when used with max_syslog_file_count, determines whether the recycling logic considers old log files. |
| enable_syslog_wf | Specifies whether to print system logs at the WARN level or higher to a separate log file. |
| max_string_print_length | Specifies the maximum length of a single line of system log. |
| max_syslog_file_count | Specifies the maximum number of log files that can be retained before recycling. |
| syslog_level | Specifies the level of the system log. |
| trace_log_sampling_interval | Specifies the interval for periodically printing trace log information. |
| diag_syslog_per_error_limit | Specifies the maximum number of DIAG system logs allowed per second per error code. Logs exceeding this threshold will not 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 name | Description |
|---|---|
| default_compress_func | Specifies the default compression algorithm for table data, which can also be specified when creating a table. |
| default_compress | Specifies the default compression strategy used when creating a table in Oracle 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 the automatic global freeze feature. |
| micro_block_merge_verify_level | Specifies the verification level for macroblocks during compaction. |
| row_compaction_update_limit | Specifies the number of modifications that trigger in-memory row data compaction. |
| enable_global_freeze_trigger | Specifies whether to enable automatic global freeze triggering. |
| enable_merge_by_turn | Specifies whether to enable the round-robin merge strategy. |
| enable_manual_merge | Specifies whether to enable manual compaction. |
| global_major_freeze_residual_memory | Specifies the threshold for residual memory to trigger a global freeze. That is, a global freeze is triggered when the residual memory is less than this percentage. |
| minor_deferred_gc_time | Specifies the interval between the end of a compaction and the start of SSTable garbage collection. |
| zone_merge_concurrency | Specifies the 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 of zones for round-robin compaction. 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 freezes that trigger a compaction. |
| minor_merge_concurrency | Specifies the number of threads for compaction. |
| minor_warm_up_duration_time | Specifies the preheating time for generating new dump files. |
| row_purge_thread_count | Specifies the maximum number of threads for in-memory row data compaction. |
Arbitration service
| Parameter name | Description |
|---|---|
| arbitration_degradation_policy | Specifies the auto-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 created by user tenants.
NoteFor OceanBase Database V4.3.5, this parameter is available starting with V4.3.5 BP3. |
CPU
| Parameter name | Description |
|---|---|
| cpu_quota_concurrency | Specifies the maximum number of concurrent sessions allowed for each CPU quota. |
Read/write/query
| Parameter name | Description |
|---|---|
| enable_monotonic_weak_read | Specifies whether to enable monotonic 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 re-read query_response_time_range_base. |
| query_response_time_range_base | Specifies the interval for collecting time parameters in the information_schema.QUERY_RESPONSE_TIME view. |
Load balancing
| Parameter | Description |
|---|---|
| unit_gc_wait_time | The maximum wait time for unit garbage collection. If the wait time exceeds the maximum, garbage collection is forced. |
| balancer_idle_time | The time interval for waking up idle threads of background tasks such as load balancing. |
| enable_rebalance | Specifies whether to enable automatic load balancing. |
| enable_transfer | Specifies whether to allow data transfer within a tenant. This parameter is invalid when the enable_rebalance parameter is disabled. |
| partition_balance_schedule_interval | The interval for partition balancing scheduling. |
Replica
| Parameter | Description |
|---|---|
| replica_parallel_migration_mode | The mode for parallel migration of log stream replicas. |
| choose_migration_source_policy | The priority strategy for selecting the source replica for migration. |
Backup and restore
| Parameter | Description |
|---|---|
| recover_table_concurrency | 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 | 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 | 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. |
Partition
| Parameter | Description |
|---|---|
| enable_auto_split | Specifies whether to enable automatic partitioning for a tenant. The default value is OFF. |
| auto_split_tablet_size | The threshold for triggering automatic partitioning after the automatic partitioning feature is enabled for a tenant. The default value is 128 MB. |
| 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 |
|---|---|
| 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 number of worker threads for high-priority high-availability tasks. |
| ha_mid_thread_score | Specifies the number of worker threads for medium-priority high-availability tasks. |
| ha_low_thread_score | Specifies the number of worker threads for low-priority high-availability tasks. |
| ob_compaction_schedule_interval | Specifies the interval between compaction schedules. |
| 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 tablets to be scheduled in each batch during compaction scheduling. |
| tenant_sql_login_thread_count | Specifies the number of threads for MySQL tenant login, that is, 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, that is, the number of sql_nio_server threads. The default value of 0 indicates that the value of unit_min_cpu is used. |
Cache
| Parameter | Description |
|---|---|
| default_storage_cache_policy | Specifies the default cache strategy. |
| enable_manual_storage_cache_policy | Specifies whether to enable the user-defined hot cache strategy. |
| suspend_storage_cache_task | Specifies whether to suspend background cache tasks. |
| enable_adaptive_plan_cache | Specifies whether to enable adaptive plan cache. |
| 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 threshold 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. |
IO 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 mode.
| Parameter name | Description |
|---|---|
| enable_sql_extension | Specifies whether to enable the SQL extension feature for the tenant. |
| compatible | Controls the compatibility behavior of related features in the tenant. This parameter cannot be set. |
Routing related
| Parameter name | Description |
|---|---|
| ob_proxy_readonly_transaction_routing_policy | Specifies whether to route transactions based on read-only statements. |
LOB data related
| Parameter name | Description |
|---|---|
| lob_enable_block_cache_threshold | Specifies the threshold for the LOB query cache for OUTROW storage. |
Memory space related
| Parameter name | Description |
|---|---|
| temporary_file_max_disk_size | Specifies the maximum disk space that a single node of the tenant can occupy for temporary files. |
| ob_vector_memory_limit_percentage | Specifies the threshold for memory resource usage of the vector index module (unit: percentage). |
| range_optimizer_max_mem_size | Specifies the maximum memory that the Query Range module can use. |
| rpc_memory_limit_percentage | Specifies the maximum memory for RPCs in the tenant, as a percentage of the total tenant memory. |
| query_memory_limit_percentage | Specifies the percentage of tenant memory that can be used by a single SQL statement. |
Disk space related
| Parameter name | Description |
|---|---|
| temporary_file_max_disk_size | Specifies the maximum disk space that a single node of the tenant can occupy for temporary files. |
OBKV
| Parameter | Description |
|---|---|
| enable_kv_ttl | Specifies whether to enable the TTL background task. This parameter applies only to periodic TTL tasks. User control commands are not affected by this parameter. Notice: The TTL feature is applicable only to OceanBase Database Key-Value (KV) scenarios. If you use this feature in SQL scenarios, unexpected data deletion may occur. |
| kv_ttl_duty_duration | Specifies the time period during which the TTL task is triggered. The TTL task is triggered once during this time period. |
| kv_group_commit_batch_size | Specifies the size of batch operations executed in the group commit of OBKV. |
| kv_group_commit_rw_mode | Specifies the mode for group commit. |
| kv_hbase_client_scanner_timeout_period | Specifies the timeout period for OBKV-HBase streaming queries. |
| kv_ttl_history_recycle_interval | Specifies the period for which the history records of the TTL task are retained. |
| ttl_thread_score | Specifies the number of worker threads used by the TTL task. |
PL
| Parameter | Description |
|---|---|
| plsql_code_type | Specifies the compilation type of PL/SQL code. |
| plsql_debug | Specifies whether to compile the code into a debug version. |
| plsql_optimize_level | Specifies the compilation optimization level. |
| plsql_v2_compatibility | Specifies whether to enable the feature that allows the compilation and persistence of stored procedure DDL statements. |
| package_state_sync_max_size | Specifies the maximum length of a package state (package state management) that can be serialized. |
Direct load
| Parameter | Description |
|---|---|
| default_load_mode | Specifies the data import mode in data import scenarios. |
| direct_load_allow_fallback | Specifies whether to fall back to normal import when direct load is not supported in a specified direct load scenario. |
Other
| Parameter | Description |
|---|---|
| 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 by a single session. |
| ob_ssl_invited_common_names | Records the list of application identities running in the current tenant. These 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 batched multi-statement execution optimization. |
| job_queue_processes | Specifies the maximum number of concurrent tasks that can be run in each tenant. This is to prevent tasks from occupying tenant resources. |
| default_auto_increment_mode | Specifies the default auto-increment mode. |
| 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 tables in the Extended ROWID mode. |
| dump_data_dictionary_to_log_interval | Specifies the interval for persisting 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 to be vectorized in one batch by the columnar engine. |
| approx_count_distinct_precision | Specifies the precision of the result returned by the approx_count_distinct function. |
| enable_ps_parameterize | Specifies whether to enable or disable parameterization for PS statements during parsing. |
| default_skip_index_level | Specifies the mechanism for generating Skip Indexes in incremental SSTables for the tenant. |
Transaction and transaction log related
| Parameter name | Description |
|---|---|
| log_disk_utilization_limit_threshold | Specifies the threshold for the log disk utilization limit of a tenant. When the log disk usage exceeds the total log disk space multiplied by this value, log writes are no longer allowed. |
| log_disk_utilization_threshold | Specifies the log disk utilization threshold of a tenant. When the log disk usage exceeds the total log disk space multiplied by this value, 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 fetching logs from a standby database. This parameter controls the log transmission service of the standby database to detect that a server of the primary database is unavailable and switch to another server. |
| log_disk_throttling_percentage | Specifies the percentage of non-recoverable log disk space that triggers log write throttling. |
| log_transport_compress_all | Specifies whether to compress logs during 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 persisting transaction logs. |
| enable_clog_persistence_compress | Specifies whether to enable compression for persisting transaction logs. |
Data type related
| Parameter name | Description |
|---|---|
| json_document_max_depth | Specifies the maximum allowed nesting level in a JSON document. |
Lock related
| Parameter name | Description |
|---|---|
| enable_lock_priority | Lock priority switch. |
System log related
| Parameter name | Description |
|---|---|
| log_disk_throttling_maximum_duration | Specifies the maximum available time after log throttling is triggered. |
| ls_gc_delay_time | Specifies the time for delaying the deletion of tenant log streams. |
| standby_db_preferred_upstream_log_region | Specifies the preferred region for synchronizing upstream logs to a standby tenant. |
| archive_lag_target | Specifies the time for delaying the archiving of tenant logs. |
Materialized views
| Parameter | Description |
|---|---|
| enable_mlog_auto_maintenance | Specifies whether to enable the automatic management of materialized view logs.
NoteFor V4.3.5, this parameter is available starting with V4.3.5 BP4. |
| mlog_trim_interval | Specifies the scheduling cycle of the background automatic trimming task of materialized view logs (mlogs).
NoteFor V4.3.5, this parameter is available starting with V4.3.5 BP4. |
| enable_mv_binlog_minimal_mode | Specifies whether to enable the minimal mode for materialized views.
NoteFor V4.3.5, this parameter is available starting with V4.3.5 BP5. |
User login
Note
The parameters in the following table are available only in MySQL 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 spillage during SQL execution. |
| ob_encoding_granularity | Specifies the maximum number of rows in a microblock encoding. |
Parameters related to major compactions
| Parameter name | Description |
|---|---|
| default_progressive_merge_num | Specifies the default number of progressive major compactions when a table is created. |
| major_freeze_duty_time | Specifies the time when major compactions and freezes are triggered daily. |
| major_compact_trigger | Specifies the number of major compactions that trigger a major freeze. |
| minor_compact_trigger | Specifies the number of SSTables that trigger a minor compaction. |
| undo_retention | Specifies the range of multi-version data to be retained, in seconds. During a minor compaction, the system recycles the multi-version data. |
| merger_check_interval | Specifies the scheduling interval of the major compaction status check thread. |
| freeze_trigger_percentage | Specifies the memory usage threshold of a tenant that triggers a global freeze. |
| max_kept_major_version_number | Specifies the number of major compaction versions to be retained. |
| merge_stat_sampling_ratio | Specifies the sampling rate of column statistics during a major compaction. |
| merge_thread_count | Specifies the number of threads for daily major compactions. |
| merger_completion_percentage | Specifies the percentage of replicas that are considered as completed for a major compaction. |
| merger_switch_leader_duration_time | Specifies the time interval for batch leader switching during daily major compactions. |
| merger_warm_up_duration_time | Specifies the warm-up time for the new baseline data during a major compaction. |
Parameters related to arbitration
| Parameter name | Description |
|---|---|
| arbitration_timeout | Specifies the timeout period for automatic downgrade. |
Parameters not supported
| Parameter name | Description |
|---|---|
| sql_work_area | Specifies the tenant workspace memory. |
| max_stale_time_for_weak_consistency | Specifies the maximum number of versions that can be read in a weak-consistency read. |