This topic describes the cluster-level and tenant-level parameters of OceanBase Database, classified by feature.
Cluster-level parameters
Bandwidth-related
| Parameter | Description |
|---|---|
| enable_ob_ratelimit | Enables bandwidth throttling between regions in RPC connections. |
| ob_ratelimit_stat_period | The interval for calculating and updating the maximum bandwidth of an OBServer node. |
Load balancing-related
| Parameter name | Description |
|---|---|
| balancer_log_interval | The interval for load balancing and other background tasks to print statistics logs. |
| balancer_task_timeout | The timeout period for load balancing and other background tasks. |
| balancer_tolerance_percentage | The tolerance level for disk imbalance among units within a tenant in a load balancing strategy. If the disk imbalance is within the tolerance level, an equilibrium action is not triggered. |
| server_balance_critical_disk_waterlevel | The water level for triggering the disk space load balancing feature. |
| server_balance_disk_tolerance_percent | The tolerance level for disk load imbalance among nodes in a load balancing strategy. |
| resource_hard_limit | The unit allocation strategy. |
| enable_sys_unit_standalone | Specifies whether to isolate system tenant units on a node. |
Synchronization-related
| Parameter name | Description |
|---|---|
| enable_rereplication | Specifies whether to enable the automatic resynchronization feature. |
| ls_meta_table_check_interval | The check interval for the background inspection thread of the DBA_OB_LS_LOCATIONS/CDB_OB_LS_LOCATIONS view. |
| sys_bkgd_migration_change_member_list_timeout | The timeout period for changing the Paxos member group during replica migration. |
| sys_bkgd_migration_retry_num | The maximum number of retries when replica migration fails. |
Backup and restore-related
| Parameter name | Description |
|---|---|
| backup_data_file_size | The maximum file size of a single data backup file. |
| log_restore_concurrency | The concurrency level for restoring logs. |
Cluster-related
| Parameter name | Description |
|---|---|
| all_server_list | Displays the addresses of all servers in the cluster. |
| cluster | Sets the name of the OceanBase cluster. |
| cluster_id | Sets the ID of the OceanBase cluster. |
| rpc_timeout | Sets the timeout period for internal requests in the cluster. |
| local_ip | The IP address of the server where ObServer is installed. |
| observer_id | A unique identifier assigned to the OBServer node by the cluster. |
SQL-related
| Parameter name | Description |
|---|---|
| sql_login_thread_count | The number of threads for processing SQL login requests. |
CPU-related
| Parameter name | Description |
|---|---|
| cpu_count | The total number of CPU cores in the system. If set to 0, the system will automatically detect the number of CPU cores. |
| server_balance_cpu_mem_tolerance_percent | The tolerance for CPU and memory resource imbalance in node load balancing. |
| server_cpu_quota_max | The maximum CPU quota available to the system. |
| server_cpu_quota_min | The minimum CPU quota available to the system, which will be automatically reserved. |
| token_reserved_percentage | The percentage of idle tokens reserved for a tenant during CPU scheduling in the control tenant. |
| workers_per_cpu_quota | The number of worker threads allocated to each CPU quota. |
Directory path-related
| Parameter name | Description |
|---|---|
| config_additional_dir | Multiple directories for storing configuration files for redundancy. |
Memory space-related
| Parameter name | Description |
|---|---|
| datafile_disk_percentage | The percentage of total space on the disk where the data_dir is located. The OceanBase Database system initializes the data_dir disk to store data. |
| data_disk_usage_limit_percentage | The maximum percentage of data files that can be written. After this threshold is reached, data migration is prohibited. |
| enable_sql_operator_dump | Specifies whether to allow intermediate results of SQL processing to be written to disk to free up memory. |
| global_write_halt_residual_memory | The threshold of residual memory in bytes, in decimal, for triggering the halt of write requests for normal tenants (sys tenant is not affected). |
| leak_mod_to_check | Specifies the memory leak check module. This parameter is for internal debugging. |
| memory_chunk_cache_size | The capacity of memory chunks cached in the memory allocator. |
| memory_limit | The total size of available memory. |
| memory_limit_percentage | The percentage of total memory size that is available to the system. |
| memory_reserved | The size of memory reserved for the KVCache. |
| memstore_limit_percentage | The maximum percentage of memory used by MemStores in a tenant out of its total available memory. |
| system_memory | The size of memory reserved for the tenant with ID 500. |
| use_large_pages | The management of large pages used by the database. |
Debugging-related
| Parameter name | Description |
|---|---|
| debug_sync_timeout | The timeout period of the Debug Sync feature. |
| enable_rich_error_msg | Specifies whether to add debugging information, such as the server address, timestamp, and trace ID, to client messages. |
Compression algorithm-related
| Parameter name | Description |
|---|---|
| default_compress_func | The default compression algorithm for table data. You can also specify a different compression algorithm when you create a table. |
| default_compress | The default compression strategy for tables in Oracle mode when you create a table. |
| tableapi_transport_compress_func | The compression algorithm for transmitting query results of tableAPI. |
Transaction and transaction log-related
| Parameter name | Description |
|---|---|
| log_disk_size | The size of the redo log disk. |
| log_disk_percentage | The maximum percentage of space that redo logs can occupy on a disk. |
| clog_sync_time_warn_threshold | The sync time threshold for generating a warning log. A sync time exceeding this threshold triggers a WARN log. |
| dtl_buffer_size | The size of the buffer used by the SQL data transmission module. |
| ignore_replay_checksum_error | Specifies whether to ignore checksum errors encountered during transaction log replay. |
| trx_2pc_retry_interval | The interval for automatic retries after a two-phase commit failure. |
Minor and major compaction-related
| Parameter name | Description |
|---|---|
| enable_major_freeze | Specifies whether to enable the automatic global freeze feature. |
| micro_block_merge_verify_level | The verification level of macroblocks during a minor compaction. |
| row_compaction_update_limit | The number of updates of in-memory intra-row data triggering a minor compaction. |
PX-related
| Parameter | Description |
|---|---|
| px_workers_per_cpu_quota | The ratio of the number of parallel execution worker threads to the number of CPU cores. |
| px_task_size | The size of data processed by each task of the SQL parallel query engine. |
| max_px_worker_count | The maximum number of threads used by the SQL parallel query engine. |
Cache-related
| Parameter name | Description |
|---|---|
| bf_cache_miss_count_threshold | The number of times a macroblock must be missed in the Bloomfilter Cache for the cache to be created. |
| bf_cache_priority | The priority of the Bloom Filter cache. |
| cache_wash_threshold | The capacity threshold that triggers cache cleanup. |
| fuse_row_cache_priority | The priority of the Fusion Row cache in the cache system. |
| user_row_cache_priority | The priority of the baseline data row cache in the cache system. |
| autoinc_cache_refresh_interval | The refresh interval of the auto-increment column cache. |
| plan_cache_evict_interval | The interval at which the execution plan cache is cleared. |
| index_block_cache_priority | The priority of the metadata index microblock cache. |
| opt_tab_stat_cache_priority | The priority of the statistics cache. |
| tablet_ls_cache_priority | The priority of the tablet mapping cache. |
| user_block_cache_priority | The priority of the data block cache in the cache system. |
Location Cache-related
| Parameter name | Description |
|---|---|
| virtual_table_location_cache_expire_time | The expiration time of the location information cache for virtual tables. |
| location_cache_refresh_rpc_timeout | The timeout period of refreshing the location_cache table through RPC. |
| location_cache_refresh_sql_timeout | The timeout period of refreshing the location_cache table through SQL. |
| location_cache_refresh_min_interval | The minimum interval between location cache refresh requests to prevent excessive refresh requests from causing high system pressure. |
| location_cache_cpu_quota | The CPU quota for the location cache module. |
| location_fetch_concurrency | The maximum number of concurrent refreshes of the location cache on a single server. |
| location_refresh_thread_count | The number of threads on an OBServer node for requesting partition location information from the Root Service. |
Log-related
| Parameter name | Description |
|---|---|
| enable_record_trace_log | Specifies whether to record trace logs. |
| enable_async_syslog | Specifies whether to enable asynchronous write of system logs. |
| enable_syslog_recycle | Specifies whether to enable the recycle of system logs. |
| enable_syslog_wf | Specifies whether to write trace logs of the WARN level and higher to a separate log file. |
| max_string_print_length | The maximum length of a single line in a system log. |
| max_syslog_file_count | The maximum number of log files that can be accommodated before the files are recycled. |
| syslog_level | The system log level. |
| trace_log_sampling_interval | The time interval for periodically recording trace logs. |
Partition-related
| Parameter name | Description |
|---|---|
| tablet_meta_table_check_interval | 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 | The number of tablets cached in memory during iteration of the tablet meta table. |
| tablet_size | The size of each shard for internal parallel processing (such as major compactions and queries) in a partition. |
Read/write and query-related
| Parameter name | Description |
|---|---|
| weak_read_version_refresh_interval | The refresh interval for weak-consistency read versions, which affects the latency of weak-consistency read data. |
| large_query_worker_percentage | The percentage of worker threads reserved for handling large queries. |
| large_query_threshold | The execution time threshold for identifying a large query. |
| trace_log_slow_query_watermark | The execution time threshold for identifying a slow query. A trace log of a slow query is written to system logs. |
Root Service-related
| Parameter name | Description |
|---|---|
| rootservice_async_task_queue_size | The size of the asynchronous task queue in Root Service. |
| rootservice_async_task_thread_count | The size of the thread pool for asynchronous tasks in Root Service. |
| rootservice_list | The list of servers where Root Service and its replicas reside. |
| rootservice_ready_check_interval | The time interval for checking the cluster status after Root Service starts. |
| rootservice_memory_limit | The maximum memory capacity allowed to Root Service. |
| lease_time | The lease duration for heartbeats. |
| server_check_interval | The interval for checking the consistency of the server table. |
| server_permanent_offline_time | The time threshold for determining a permanently offline node. After a node is deemed permanently offline, its data replicas need to be automatically supplemented. |
| ob_event_history_recycle_interval | The interval for recycling historical events. |
I/O-related
| Parameter name | Description |
|---|---|
| rdma_io_thread_count | The number of I/O threads for RDMA. |
| syslog_io_bandwidth_limit | The maximum disk I/O bandwidth allowed for system logs. Excess system logs will be discarded. |
| disk_io_thread_count | The number of I/O threads for disks. It must be an even number. |
| net_thread_count | The number of I/O threads for networks. |
TCP-related
| Parameter name | Description |
|---|---|
| enable_tcp_keepalive | Specifies whether to enable the keepalive mechanism for client connections. |
| tcp_keepidle | The time in seconds after a client connection is established with the server that no data is sent before a keepalive probe is sent. |
| tcp_keepintvl | The time interval in seconds between two keepalive probes when the keepalive mechanism is enabled. |
| tcp_keepcnt | The maximum number of retries before a non-active connection is closed when the keepalive mechanism is enabled. |
RPC authentication-related
| Parameter | Description |
|---|---|
| rpc_client_authentication_method | The RPC client's secure authentication method. |
Others
| Parameter name | Description |
|---|---|
| builtin_db_data_verify_cycle | The period for self-inspection of bad data blocks, in days. The value 0 specifies not to perform the inspection. |
| data_storage_warning_tolerance_time | The tolerance period for a data disk to be in the WARNING state. |
| dead_socket_detection_timeout | The interval for detecting failed sockets. |
| enable_sys_table_ddl | Specifies whether to allow manual creation of system tables. |
| internal_sql_execute_timeout | The interval for system internal DML requests. |
| migration_disable_time | The duration of suspending data migration to the failed node when the node's data migration fails due to a full disk. |
| schema_history_expire_time | The expiration time of metadata history data. |
| datafile_size | The size of data files. Generally, you do not need to set this parameter. |
| devname | The name of the network card to which the service process binds. |
| enable_perf_event | Specifies whether to enable the collection of performance events. |
| enable_record_trace_id | Specifies whether to record the trace IDs set by applications. |
| enable_upgrade_mode | Specifies whether to enable upgrade mode. In upgrade mode, some system background features are suspended. |
| enable_ddl | Specifies whether to allow DDL operations. |
| high_priority_net_thread_count | The number of high-priority network threads. The value 0 specifies to disable this feature. |
| mysql_port | The port number for the SQL service protocol. |
| obconfig_url | The URL address of the OBConfig service. |
| rpc_port | The port number for remote access. |
| ssl_client_authentication | Specifies whether to enable the SSL connection feature. |
| stack_size | The size of the call stack of a program function. |
| tenant_task_queue_size | The size of the request queue of each tenant. |
| zone | The name of the zone to which the node belongs. Generally, you do not need to set this parameter. |
| ssl_external_kms_info | Records some information on which the SSL feature of OceanBase Database depends. It records relevant configurations for different SSL modes in the JSON format. The JSON record contains at least the ssl_mode field. |
| recyclebin_object_expire_time | Automatically purges expired schema objects from the recycle bin. |
| default_row_format | The default row format when creating a table in MySQL mode. |
| enable_sql_audit | Specifies whether to enable SQL auditing. |
| min_observer_version | The application version number of the minimum OBServer node in the cluster. |
| sys_bkgd_net_percentage | The percentage of network bandwidth available to background system tasks. |
| schema_history_recycle_interval | The interval for recycling schema multi-version records in the system. |
| enable_asan_for_memory_context | When using ob_asan, specifies whether to allow ObAsanAllocator (default ObAllocator as the MemoryContext allocator) to be used. |
Unsupported parameters
| Parameter name | Description |
|---|---|
| plan_cache_high_watermark | The threshold of memory usage of the execution plan cache. When the memory usage exceeds this threshold, automatic plan eviction is triggered. |
| plan_cache_low_watermark | The threshold of memory usage of the execution plan cache. When the memory usage falls below this threshold, plan eviction is stopped. |
| tenant_cpu_variation_per_server | The allowed deviation of CPU quota scheduling among multiple units of a tenant. |
| system_trace_level | The log level of system tracing logs. |
Tenant-level parameters
User login-related
Note
The following table describes the tenant-level parameters that are effective only in MySQL mode.
| Parameter | Description |
|---|---|
| connection_control_failed_connections_threshold | The threshold of failed login attempts. |
| connection_control_min_connection_delay | The minimum duration of account lockout after the failed login attempt threshold is reached. |
| connection_control_max_connection_delay | The maximum duration of account lockout. The account lockout duration does not increase after it reaches the maximum duration. |
Load balancing-related
| Parameter | Description |
|---|---|
| balancer_idle_time | The interval at which the load balancing thread is awakened when it is idle. |
| enable_rebalance | Specifies whether to enable automatic load balancing. |
Audit-related
| Parameter | Description |
|---|---|
| audit_sys_operations | Specifies whether to track the operations of system users. |
| audit_trail | Specifies whether to enable database audit. |
Transaction and transaction log-related
| Parameter name | Description |
|---|---|
| log_disk_utilization_limit_threshold | The threshold of log disk utilization for limiting log write. When the usage of the log disk exceeds the total size of the log disk space of the tenant multiplied by this threshold, log write is no longer allowed. |
| log_disk_utilization_threshold | The threshold of log disk utilization for log file reuse. When the usage of the log disk exceeds the total size of the log disk space of the tenant multiplied by this threshold, log file reuse is performed. |
| writing_throttling_maximum_duration | Controls the write speed by controlling memory allocation. Specifically, it specifies the time required for allocating the remaining MemStore memory after write throttling is triggered. |
| writing_throttling_trigger_percentage | The threshold of write speed. |
Minor and major compactions
| Configuration Item Name | Function Description |
|---|---|
| default_progressive_merge_num | Used to set the default number of progressive merges when creating a new table. |
| major_freeze_duty_time | Used to set the trigger time for daily scheduled freezing and merging. |
| major_compact_trigger | Used to set how many freezes trigger a merge. |
| minor_compact_trigger | The threshold for the number of SSTables that triggers a dump (Minor Compaction). |
| undo_retention | Used to set the range of multi-version data that the system should retain, in seconds, controlling the recycling of multi-version data during dumping. |
| merger_check_interval | Used to set the scheduling interval for the merge status check thread. |
| freeze_trigger_percentage | Used to set the tenant memory usage threshold for triggering global freezing. |
CPU
| Configuration Item Name | Function Description |
|---|---|
| cpu_quota_concurrency | Used to set the maximum concurrency allowed for each CPU quota of a tenant. |
Encryption
| Parameter name | Description |
|---|---|
| external_kms_info | Stores some key management information. |
| tde_method | Specifies the method for transparently encrypting tablespaces. |
PL
| Parameter name | Description |
|---|---|
| plsql_code_type | Specifies the compilation type of PL/SQL code. |
| plsql_debug | Specifies whether to compile a debug version. |
| plsql_optimize_level | Specifies the optimization level during compilation. |
| plsql_v2_compatibility | Specifies compatibility features from Oracle 8. Notice This parameter applies only to Oracle mode and is currently not in effect. |
Compatibility-related
Note
The following table lists the configuration items that take effect only in MySQL mode.
| Configuration item | Description |
|---|---|
| enable_sql_extension | Specifies whether to enable SQL extensions for the tenant. |
Read/write and query-related
| Configuration item | 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 flush the information_schema.QUERY_RESPONSE_TIME view and re-read query_response_time_range_base. |
| query_response_time_range_base | The interval for the time parameter in the information_schema.QUERY_RESPONSE_TIME view to collect statistics. |
Routing-related
| Configuration item | Description |
|---|---|
| ob_proxy_readonly_transaction_routing_policy | Controls whether the Proxy takes read-only statements into account when routing transactions. |
I/O-related
| Parameter name | Description |
|---|---|
| io_category_config | The percentage of I/O requests for each category. |
Background execution threads
| Parameter name | Description |
|---|---|
| compaction_low_thread_score | The number of worker threads for low-priority compactions. |
| compaction_high_thread_score | The number of worker threads for high-priority compactions. |
| compaction_mid_thread_score | The number of worker threads for medium-priority compactions. |
| ha_high_thread_score | The number of worker threads for high-priority threads of high availability. |
| ha_mid_thread_score | The number of worker threads for medium-priority threads of high availability. |
| ha_low_thread_score | The number of worker threads for low-priority threads of high availability. |
| ob_compaction_schedule_interval | The scheduling interval for compactions. |
Others
| Parameter name | Description |
|---|---|
| enable_early_lock_release | Specifies whether to enable the early lock release feature. |
| workarea_size_policy | Specifies the strategy for adjusting the size of the SQL workspace, which can be manual or automatic. |
| open_cursors | Specifies the maximum number of cursors that can be opened simultaneously in a session. |
| ob_ssl_invited_common_names | Records the application identities of the tenant, which are from the cn field (common name) in the subject field of the client certificate during two-way SSL authentication. |
| ob_enable_batched_multi_statement | Specifies whether to enable the grouped execution optimization for the batch processing feature. |
| job_queue_processes | The maximum number of jobs that can run simultaneously for a tenant. This parameter is used to control the extent to which jobs can monopolize the resources of the tenant. Notice This parameter takes effect only in Oracle mode. |
| default_auto_increment_mode | Specifies the default auto-increment mode. |
| ob_query_switch_leader_retry_timeout | The maximum retry duration for failed queries, in microseconds (us). |
| default_enable_extended_rowid | Specifies whether to create a table in the extended ROWID mode by default. |
Unsupported configuration items
| Configuration item name | Description |
|---|---|
| sql_work_area | The size of memory for the tenant's workspace. |
| max_stale_time_for_weak_consistency | The maximum allowed age of data for weak-consistency reads. |