This topic describes the cluster-level parameters and tenant-level parameters of OceanBase Database. The parameters are categorized by their functionality.
Cluster-level parameters
Security
Parameter name |
Feature description |
|---|---|
| mysql_port | The port number for the SQL service protocol. |
| rpc_port | Sets the protocol port number for remote access. |
| sql_protocol_min_tls_version | This parameter specifies the minimum version of the SSL/TLS protocol to be used for SSL connections in 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 details of different SSL usage methods in a JSON string format. The JSON string must contain at least the typessl_modefield. |
| enable_sql_audit | Specifies whether to enable the SQL audit feature. |
Backup and Recovery
Parameter name |
Feature description |
|---|---|
| backup_backup_dest | Specifies the backup destination for the backup data. |
| backup_backup_dest_option | Parameters for controlling backup operations. |
| backup_dest_option | Parameters related to backup. |
| backup_concurrency | Specifies the number of concurrent threads that write data to the file system during backup. |
| backup_dest | The path for setting the baseline backup and log archiving. |
| backup_log_archive_option | Defines the archiving options for backup logs. |
| backup_net_limit | Sets the total bandwidth for cluster backup. |
| backup_recovery_window | It specifies the point in time up 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 | This parameter specifies the maximum memory usage for a single node that is allowed for log archiving. |
| log_archive_checkpoint_interval | Sets the time interval for log archiving checkpoints of cold data. |
| restore_concurrency | Sets the maximum concurrency for restoring tenant data from a backup. |
cgroup-related
Parameter name |
Feature description |
|---|---|
| enable_cgroup | This parameter specifies whether to enable the cgroup feature for the OBServer node. |
CPU-related
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 | It specifies the minimum CPU quota available for the system, which is automatically reserved. |
| token_reserved_percentage | In tenant CPU scheduling, it specifies the percentage of idle tokens to reserve for the tenant each time. |
| workers_per_cpu_quota | Sets the number of worker threads allocated to each CPU. |
| cpu_reserved | Sets the number of CPU cores reserved for the system. The remaining CPU cores will be exclusively used by OceanBase Database. |
| sys_cpu_limit_trigger | This parameter specifies 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 between multiple units of a tenant. |
Read/Write and Query
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 | This parameter specifies 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
Parameter name |
Feature description |
|---|---|
| balancer_log_interval | Sets the interval for statistical logging output 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 less than or equal 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 | This parameter specifies 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 backend tasks such as load balancing. |
| data_copy_concurrency | Sets the maximum number of concurrently executing data migration replication tasks in the system. |
| tenant_groups | Sets 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
Parameter name |
Feature description |
|---|---|
| unit_gc_wait_time | Specifies the maximum wait duration for a minor GC. If the minor GC does not complete within this duration, a forced GC is triggered. |
| enable_rereplication | The master switch for automatic log stream replica migration replication. |
| 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 | Sets 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 | The number of consecutive failures for background tasks such as replica migration. Once the number of consecutive failures exceeds this threshold, the task will be placed on the blacklist. |
| balance_blacklist_retry_interval | Specifies the retry interval for background tasks, such as replica migration, after they are placed in the blacklist. |
| election_cpu_quota | It is used to set the CPU quota allocated for background tasks related to replica election. |
| election_blacklist_interval | Specifies the time interval during which the primary replica cannot be re-elected as the leader 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 each replica during global index creation. |
| get_leader_candidate_rpc_timeout | Sets the internal request timeout period for obtaining candidate leaders under the automatic leader switchover policy. |
| 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 number of concurrent data migrations from a single node. |
| server_data_copy_in_concurrency | Sets the maximum number of concurrent data migrations for a single node. |
| replica_safe_remove_time | Specifies the maximum period for which deleted replicas can be retained before they are cleaned up. |
Cache-related
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 | 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 | Used to set 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 priority of a block index in the caching system. |
| index_cache_priority | This parameter specifies the priority of an index in the caching system. |
| user_tab_col_stat_cache_priority | Sets the cache priority for storing statistics in the caching 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 | Sets the memory usage threshold for the plan cache. Evictions will stop when the cache usage drops below this threshold. |
Partitioning
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 | Sets the maximum number of partitions that each OBServer 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 | Sets the time interval for an OBServer node to delete non-existent replicas from a partitioned table. |
Backend Execution Threads
Parameter name |
Feature description |
|---|---|
| sql_net_thread_count | This parameter specifies the number of I/O threads in a MySQL cluster.global_sql_nio_serverThe number of threads. The default value is 0, which means to use the value specified by the parameternet_thread_counthave the same value. |
| auto_leader_switch_interval | Sets the working interval for the background thread that performs automatic leader switchover. |
| switchover_process_thread_count | Sets the size of the thread pool related to primary/standby switchover. |
I/O
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 consume. System logs exceeding this bandwidth limit will be discarded. |
| disk_io_thread_count | The number of threads for disk I/O. It must be an even number. |
| net_thread_count | Sets the number of network I/O threads. |
| data_storage_error_tolerance_time | Used to control the data disk status toERRORThe tolerance time for the status. |
| sys_bkgd_io_high_percentage | Sets the maximum percentage of system background I/O usage. |
| sys_bkgd_io_low_percentage | The minimum percentage of system background I/O usage. |
| user_iort_up_percentage | This parameter specifies the threshold for user disk I/O latency. When the user disk I/O latency exceeds this threshold, the system will throttle background I/O tasks. |
| ob_esi_rpc_port | Sets the communication port between the OBESE process and the observer process. |
| enable_ob_esi_process | It is used to control whether to enable the OBDI (External Block Device Interface) process. |
| ob_esi_session_timeout | Sets the timeout period for an obese process holding 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
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 | 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 policy. |
| 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 | This API is used to view the lowest application version number of the OBServer node 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 | Sets 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 | Refresh via RPClocation_cacheThe timeout period. |
| location_cache_refresh_sql_timeout | Refresh via SQLlocation_cacheThe timeout period. |
| 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 configuration files locally to achieve redundant storage of multiple configuration file copies. |
| 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 is 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 this threshold is exceeded, data migration in is prohibited. |
| enable_sql_operator_dump | It specifies whether to allow intermediate results of SQL processing to be written to disk to free up memory. |
| global_write_halt_residual_memory | Used to set the threshold for triggering a write suspension for general tenants.sysThe global remaining memory threshold below which tenants are not affected. |
| leak_mod_to_check | Used for memory leak detection, this is an internal debugging feature. |
| memory_chunk_cache_size | The capacity of memory blocks cached by the memory allocator. |
| memory_limit | The total amount of available memory. |
| memory_limit_percentage | Specifies the percentage of total memory that the system's total available memory size occupies. |
| memory_reserved | Sets the memory capacity reserved by the system for KVCache. |
| 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 system-reserved ID for the tenant.500The memory capacity of the tenant. |
| 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 | It 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 for the SQL parallel query engine. |
Others
Parameter name |
Feature description |
|---|---|
| builtin_db_data_verify_cycle | Specifies the self-check cycle for data bad blocks, in days. A value of 0 indicates no check. |
| data_storage_warning_tolerance_time | Specifies the tolerance period for setting the data disk status to WARNING. |
| dead_socket_detection_timeout | The time interval for detecting invalid sockets. |
| migration_disable_time | This parameter specifies the duration for which data migration to a node is paused when data migration fails due to reasons such as full disk space. |
| schema_history_expire_time | This parameter specifies the expiration time for historical metadata data. |
| datafile_size | Specifies the size of the data file. This parameter is generally not required. |
| devname | Specifies the name of the NIC device to which the service process binds. |
| enable_perf_event | This parameter specifies whether to enable information collection for performance events. |
| 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 statements to be executed. |
| high_priority_net_thread_count | Sets the number of high-priority network threads. The value is0indicates 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 | It specifies the percentage of network bandwidth that can be occupied by background system tasks. |
| schema_history_recycle_interval | Used to set the internal execution of the system.schemaThe time interval for recycling multi-version records. |
| enable_asan_for_memory_context | When using ob_asan, this parameter specifies whether to allow ObAsanAllocator (the default is to use ObAllocator as the MemoryContext allocator). |
| ofs_list | It stores the OFS (OceanBase File System, a distributed storage system independently designed by OceanBase Database) connection URL for each zone. This is primarily used to enable RootService to access files across zones in OFS deployment mode. |
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 | Sets the interval at which the root service waits and checks the cluster status after startup. |
| rootservice_memory_limit | Sets the maximum memory capacity limit for the Root Service. |
| lease_time | Sets the duration of the heartbeat lease. |
| server_check_interval | Sets the time interval for consistency check on server tables. |
| server_permanent_offline_time | This parameter specifies 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 | Specifies whether to allow the sys tenant and RootService to exclusively occupy an OBServer node. |
| fast_recovery_concurrency | It is used to control the concurrency number for quick recovery tasks scheduled by RootService when executed on OBServer. |
| wait_leader_batch_count | Specifies the maximum number of partitions that RootService can send for leader switchover at a time. |
RPC Authentication
Parameter name |
Feature description |
|---|---|
| rpc_client_authentication_method | Specifies the security authentication method for the RPC client. |
| rpc_server_authentication_method | Sets the security authentication method for the RPC server. |
SQL
Parameter name |
Feature description |
|---|---|
| sql_login_thread_count | Sets the number of threads for processing SQL login requests. |
| sql_audit_memory_limit | Sets the maximum memory that SQL audit data can occupy. |
| enable_sys_table_ddl | Specifies whether to allow manual creation of system tables. |
| 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 | Specifies the percentage of total disk space that redo logs can occupy. |
| dtl_buffer_size | Sets the cache size used by the SQL data transmission 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 resides to synchronize logs from the primary tenant. |
| log_storage_warning_tolerance_time | This parameter specifies the time before a disk marked as bad is triggered for leader switchover after I/O failures occur on the log disk. |
| clog_disk_utilization_threshold | The threshold for controlling the level of clog or iLog disk space reuse. |
| 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 | This example shows you how to set the alert threshold for transaction log synchronization duration. A WARN log is generated when the synchronization duration exceeds this value. |
| clog_transport_compress_func | Specifies 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 | Specifies the maximum wait time for killing transactions when required due to freezes 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 | Specifies whether to add server address, time, trace ID, and other debugging information 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 the client connects to the server and no data is sent, after which a Keepalive probe packet is sent. |
| tcp_keepintvl | Specifies the time interval, in seconds, between two consecutive heartbeat probes after the client connection heartbeat mechanism is enabled. |
| tcp_keepcnt | Specifies the maximum number of retries before closing an inactive connection. |
System logs
Parameter name |
Feature description |
|---|---|
| alert_log_level | The level for setting 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 | This parameter specifies whether to enable the log retention feature for OBServer nodes.max_syslog_file_countUsed together 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 error code per second. 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 specifies the default compression algorithm for table data. You can also specify other compression algorithms when creating a table. |
| default_compress | Specifies the default compression strategy used when creating tables in Oracle-compatible mode. |
| tableapi_transport_compress_func | Sets the compression algorithm used for transmitting query results from OBKV-Table. |
| default_transport_compress_func | Sets the RPC compression algorithm for the entire cluster. |
Minor compaction and major compaction related
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 rotation-based major 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 falls 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 how many major compactions are allowed before a minor compaction is triggered. |
| minor_merge_concurrency | Sets the number of concurrent threads during minor compaction. |
| minor_warm_up_duration_time | Sets 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 resource isolation for foreground and background processes. |
| global_background_cpu_quota | It is used to control 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-related
Parameter name |
Feature description |
|---|---|
| default_table_organization | Specifies the default table organization mode for creating tables. |
| default_table_merge_engine | Specifies the default table creation parameters for user tenants.merge_engine.
NoteFor OceanBase Database V4.3.5, this parameter is available starting from V4.3.5 BP3. |
CPU-related
Parameter name |
Feature description |
|---|---|
| cpu_quota_concurrency | Sets the maximum concurrency allowed for each CPU quota of a tenant. |
Read/write/query related
Parameter name |
Feature description |
|---|---|
| enable_monotonic_weak_read | Specifies whether to enable monotonic read. |
| query_response_time_stats | Used to specify whether to enableinformation_schema.QUERY_RESPONSE_TIMEStatistics collection for views. |
| query_response_time_flush | Used to set whether to refresh.information_schema.QUERY_RESPONSE_TIMEView and rereadquery_response_time_range_base. |
| query_response_time_range_base | Used to setinformation_schema.QUERY_RESPONSE_TIMEThe interval for collecting view time parameters. |
Load balancing
Parameter name |
Feature description |
|---|---|
| unit_gc_wait_time | Specifies the maximum wait duration for a minor GC. If the minor GC does not complete within this duration, a forced GC is triggered. |
| balancer_idle_time | Specifies the wake-up interval for idle threads of background tasks, such as those related to load balancing. |
| enable_rebalance | It is used to set whether to enable automatic load balancing. |
| enable_transfer | Controls whether file transfer is allowed within a tenant. If this parameter is disabled,enable_rebalanceThis parameter is invalid. |
| partition_balance_schedule_interval | The partition balancing scheduling cycle. |
Replica-related
Parameter name |
Feature description |
|---|---|
| replica_parallel_migration_mode | Specifies the mode for the parallel migration feature of log stream replicas. |
| choose_migration_source_policy | Specifies the priority strategy for selecting source replicas during migration. |
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 | Specifies the concurrency level for log restore. |
| log_archive_concurrency | Specifies the concurrency for log archiving. |
| backup_data_file_size | Specifies the maximum file size for a single data backup file. |
Partitioning
Parameter name |
Feature description |
|---|---|
| enable_auto_split | Controls whether automatic partitioning is enabled for a tenant. The default value is disabled. |
| auto_split_tablet_size | Specifies the threshold for triggering a split after the auto-partitioning feature is enabled for this tenant. The default value is 128 MB. |
| global_index_auto_split_policy | Specifies whether to enable automatic partitioning for the new global index. Default value:DISTRIBUTED. |
Backend Execution Threads
Parameter name |
Feature description |
|---|---|
| px_workers_per_cpu_quota | Sets the proportion of worker threads for parallel execution. |
| ddl_thread_score | Sets the number of threads used by a DDL task. |
| compaction_low_thread_score | Sets the number of worker threads for low-priority compaction. |
| compaction_high_thread_score | Sets the number of worker threads for high-priority compaction. |
| compaction_mid_thread_score | Specifies 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 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 | Sets the time interval for 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 | Used to set the number of threads for MySQL tenant login, that is,mysql_queueNumber of threads. The default value of 0 indicates to take all available threads.unit_min_cpuThe value of . |
| tenant_sql_net_thread_count | Sets the number of I/O threads for a MySQL-compatible tenant, that is,sql_nio_serverNumber of threads. The default value 0 indicates to obtain the maximum number allowed by the operating system.unit_min_cpuThe value of . |
Cache-related
Parameter name |
Feature description |
|---|---|
| default_storage_cache_policy | Configures the default caching strategy. |
| enable_manual_storage_cache_policy | This parameter specifies to enable manual hotspot caching strategies for users. |
| suspend_storage_cache_task | Specifies whether to pause the background caching task. |
| enable_adaptive_plan_cache | This parameter specifies whether to enable adaptive plan cache for a tenant. |
| result_cache_max_size | Used to controlresult cacheThe maximum amount of memory that the module can use. |
| result_cache_max_result | Used to control a singleresult cacheThe maximum number of cache objects that can be used isresult_cache_max_sizethe memory usage ratio. |
| ob_result_cache_evict_percentage | Used to setresult cacheMemory eviction watermark. |
| ob_deterministic_udf_cache_max_size | Used to mark the statement execution period. AlldeterministicThe maximum total memory that can be used by the cache pool of UDFs. |
I/O-related
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 are currently only effective 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 can occupy on a single node of a tenant. |
OBKV
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 subject to 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 | Set the daily scheduled trigger period for the TTL task. The TTL task will be triggered once within this period. |
| kv_group_commit_batch_size | Specifies the size of a batch for batch operations during group commits in OBKV. |
| 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 the PL/SQL code. |
| plsql_debug | Specifies whether to compile the project 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. |
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 when encountering scenarios not supported by direct load during the specified data import operation. |
Others
Parameter name |
Feature description |
|---|---|
| enable_early_lock_release | It 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 running under the current tenant. These identities are derived from the client certificates used in SSL mutual authentication.subjectin thecnField (common name). |
| ob_enable_batched_multi_statement | It specifies whether to enable batch execution optimization for group operations. |
| job_queue_processes | It specifies the maximum number of tasks that can run concurrently for each tenant, with the aim of controlling 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 | The maximum retry time for failed queries, in microseconds (μs). |
| default_enable_extended_rowid | Specifies whether to create the table in extended ROWID mode. |
| dump_data_dictionary_to_log_interval | It is used to control the persistence cycle of tenant data dictionaries. |
| enable_user_defined_rewrite_rules | A switch used to control 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 configureapprox_count_distinctThe precision of the function result. |
| enable_ps_parameterize | It is used to control whether to parameterize the parameters of a prepared statement during parsing. |
| default_skip_index_level | Controls the mechanism for generating skip indexes during incremental SSTable creation 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 log disk space of the tenant multiplied by this value, no further log writes are allowed. |
| log_disk_utilization_threshold | Sets the threshold for tenant log disk usage. When a tenant's log disk usage exceeds the total tenant log disk space multiplied by this value, log files are reused. |
| 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 write throttling is triggered. |
| writing_throttling_trigger_percentage | The threshold for setting the write speed. |
| standby_db_fetch_log_rpc_timeout | Sets the RPC timeout period for log pulling from the standby database, which 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 non-recyclable log disk space that triggers the log write throttling. |
| log_transport_compress_all | Specifies whether to compress log transmissions. |
| log_transport_compress_func | A compressor used for log transmission. |
| clog_max_unconfirmed_log_count | Sets the maximum number of uncommitted logs allowed in the transaction module. |
| clog_persistence_compress_func | Sets the compression algorithm for transaction log persistence to disk. |
| 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 | Specifies the maximum number of nesting levels allowed in a JSON document. |
Lock-related
Parameter name |
Feature description |
|---|---|
| enable_lock_priority | Table lock priority switch. |
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 will be 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 time delay for tenant log archiving. |
Materialized view related
Parameter name |
Feature description |
|---|---|
| enable_mlog_auto_maintenance | Controls whether to enable automatic materialized view log management.
NoteFor V4.3.5, this parameter is available starting with V4.3.5 BP4. |
| mlog_trim_interval | Specifies the scheduling cycle for the automatic minor compaction task of materialized view logs (mlogs).
NoteThis parameter is available starting from V4.3.5 BP4. |
| enable_mv_binlog_minimal_mode | Used to control materialized views.minimalThe switch for the
NoteFor V4.3.5, this parameter is available starting with V4.3.5 BP5. |
User login
Note
The parameters in the following table are effective 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 is locked out after exceeding the threshold 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 to implement 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 |
|---|---|
| default_progressive_merge_num | Specifies the default number of progressive major compactions for a newly created table. |
| major_freeze_duty_time | Sets the trigger time for daily scheduled freezing and major compaction. |
| major_compact_trigger | Specifies how many major compactions are allowed before a minor compaction is triggered. |
| minor_compact_trigger | 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 duration controls the recycling of multi-version data during minor compactions. |
| merger_check_interval | Specifies 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 | Specifies the number of threads used for daily major compaction. |
| merger_completion_percentage | It is used to set 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 | Specifies the time interval for batch leader switchover during daily major compaction. |
| merger_warm_up_duration_time | It specifies the warm-up time for the new baseline data during major compaction. |
Arbitration service related
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. |
