This topic describes cluster- and tenant-level parameters in OceanBase Database.
Cluster-level parameters
Bandwidth parameters
| Parameter | Description |
|---|---|
| enable_ob_ratelimit | Specifies whether to enable rate limiting between regions in a remote procedure call (RPC) connection. |
| ob_ratelimit_stat_period | The time interval at which an OBServer node calculates and updates the maximum bandwidth. |
Load balancing parameters
| Parameter | Description |
|---|---|
| balancer_idle_time | The interval for waking up the idle threads of backend tasks such as load balancing. |
| balancer_log_interval | The interval for printing statistical logs generated by the threads of backend tasks such as load balancing. |
| balancer_task_timeout | The timeout period of backend tasks such as load balancing. |
| balancer_tolerance_percentage | The tolerance for disk imbalance among multiple units of a tenant, which is set in the load balancing strategy. If the imbalance is within the range that starts at the average value minus the tolerance and ends at the average value plus the tolerance, no balancing action is triggered. |
| enable_rebalance | Specifies whether to enable automatic load balancing. |
| server_balance_critical_disk_waterlevel | The disk usage threshold that triggers disk load balancing. |
| server_balance_disk_tolerance_percent | The tolerance for disk load imbalance among nodes, which is set in the load balancing strategy. |
| resource_hard_limit | Specifies how resource units are allocated. |
| enable_sys_unit_standalone | Specifies whether the unit of the sys tenant exclusively occupies a node. |
Replica parameters
| Parameter | Description |
|---|---|
| enable_rereplication | Specifies whether to enable automatic data synchronization to replicas. |
| ls_meta_table_check_interval | The interval at which the background inspection threads inspect the DBA_OB_LS_LOCATIONS or CDB_OB_LS_LOCATIONS view. |
| sys_bkgd_migration_change_member_list_timeout | The timeout period for modifying the Paxos member list during replica migration. |
| sys_bkgd_migration_retry_num | The maximum number of retries after a replica migration task fails. |
Backup and restore parameters
| Parameter | Description |
|---|---|
| backup_data_file_size | The size of the backup data files. |
Cluster parameters
| Parameter | Description |
|---|---|
| all_server_list | Displays the IP addresses of all servers in the cluster. |
| cluster | The name of the current OceanBase cluster. |
| cluster_id | The ID of the current OceanBase cluster. |
| rpc_timeout | The timeout period of an internal request in the cluster. |
SQL parameters
| Parameter | Description |
|---|---|
| sql_login_thread_count | The number of threads for processing SQL logon requests. |
CPU parameters
| Parameter | Description |
|---|---|
| cpu_count | The total number of CPUs in the system. If the parameter is set to 0, the system will automatically detect the number of CPUs. |
| server_balance_cpu_mem_tolerance_percent | The tolerance of CPU and memory resource imbalance in the node load balancing strategy. |
| server_cpu_quota_max | The maximum CPU quota for the system. |
| server_cpu_quota_min | The minimum CPU quota for the system. The system automatically reserves the quota. |
| token_reserved_percentage | The percentage of idle tokens reserved for tenants in the scheduling of CPUs for the tenants. |
| workers_per_cpu_quota | The number of worker threads allocated to each CPU quota. |
Directory parameters
| Parameter | Description |
|---|---|
| config_additional_dir | The local directories for storing multiple copies of configuration files for redundancy. |
| data_dir | The directory for storing SSTables and other data. |
Memory parameters
| Parameter | Description |
|---|---|
| datafile_disk_percentage | The percentage of used space to the total space of the disk where the data_dir directory is located. This disk will be initialized for data storage by the OceanBase Database system. |
| data_disk_usage_limit_percentage | The percentage of data write space to the total space of the disk. When the data write space reaches the threshold, data can no longer be written to the disk. |
| enable_sql_operator_dump | Specifies whether to allow intermediate SQL processing results to be written to the disk to release the memory. |
| global_write_halt_residual_memory | The global available memory threshold that triggers the suspension of write operations of user tenants. (The sys tenant is not affected.) |
| leak_mod_to_check | The internal debugging feature used for memory leakage check. |
| memory_chunk_cache_size | The total cache size of the memory allocator. |
| memory_limit | The total size of available memory. |
| memory_limit_percentage | The percentage of available memory to total memory in the system. |
| memory_reserved | The memory size reserved by the system for the KV cache. |
| memstore_limit_percentage | The percentage of the memory that can be occupied by the MemStore to the total available memory of a tenant. |
| system_memory | The memory size reserved by the system for the SYS500 tenant. |
| use_large_pages | Manages the use of large memory pages by the database. |
Debugging parameters
| Parameter | Description |
|---|---|
| debug_sync_timeout | The timeout period for a Debug Sync operation. When the value is set to 0, Debug Sync is disabled. |
| enable_rich_error_msg | Specifies whether to add debugging information, such as the server address, error time, and trace ID, to the client message. |
Compression algorithm parameters
| Parameter | Description |
|---|---|
| default_compress_func | The default algorithm for compressing table data. You can also specify another compression algorithm when creating a table. |
| default_compress | The default compression strategy used during table creation in Oracle mode. |
| tableapi_transport_compress_func | The algorithm for compressing TableAPI query results for transmission. |
Transaction and transaction log parameters
| Parameter | Description |
|---|---|
| log_disk_size | The size of the log disk where the REDO logs are stored. |
| log_disk_percentage | The percentage of the total disk space occupied by REDO logs. |
| clog_sync_time_warn_threshold | The warning threshold of time consumed for synchronizing transaction logs. When the consumed time reaches the threshold, a WARN-level log is generated. |
| dtl_buffer_size | The size of the cache allocated to the SQL data transmission module. |
| ignore_replay_checksum_error | Specifies whether to ignore checksum errors that occur during transaction log playback. |
| trx_2pc_retry_interval | The interval for retrying a failed two-phase commit task. |
Minor and major compaction parameters
| Parameter | Description |
|---|---|
| enable_major_freeze | Specifies whether to enable automatic global freezing. |
| micro_block_merge_verify_level | The verification level of macroblocks in a major compaction. |
| row_compaction_update_limit | The number of data updates that triggers a major compaction of rows in the memory. |
PX parameters
| Parameter | Description |
|---|---|
| px_workers_per_cpu_quota | The ratio of Parallel eXecution (PX) worker threads. |
| px_task_size | The amount of data processed by the SQL parallel query engine in each task. |
| max_px_worker_count | The maximum number of threads for the SQL parallel query engine. |
Cache parameters
| Parameter | Description |
|---|---|
| bf_cache_miss_count_threshold | The number of macroblock misses that triggers the creation of the Bloom filter cache. |
| bf_cache_priority | The priority of the Bloom filter cache. |
| cache_wash_threshold | The remaining capacity threshold that triggers cache cleanup. |
| fuse_row_cache_priority | The priority of the fuse 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 for the auto-increment column cache. |
| plan_cache_evict_interval | The eviction interval for the execution plan cache. |
| index_block_cache_priority | The priority of the microblock cache for metadata indexes. |
| 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 parameters
| Parameter | Description |
|---|---|
| virtual_table_location_cache_expire_time | The validity period of the location cache of the virtual table. |
| location_cache_refresh_rpc_timeout | The timeout period for refreshing the location cache through RPC. |
| location_cache_refresh_sql_timeout | The timeout period for refreshing the location cache through SQL. |
| location_cache_refresh_min_interval | The minimum interval for sending location cache refresh requests, which prevents excessive refresh requests from overloading the system. |
| location_cache_cpu_quota | The CPU quota for the location cache module. |
| location_fetch_concurrency | The maximum number of concurrent requests for refreshing the location cache on a single server. |
| location_refresh_thread_count | The number of threads used by the OBServer node to obtain partition location information from Root Service. |
Log parameters
| Parameter | Description |
|---|---|
| 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 recycling for system logs. |
| enable_syslog_wf | Specifies whether to print system logs above the WARN level to a separate log file. |
| max_string_print_length | The maximum length of a single row when system logs are printed. |
| max_syslog_file_count | The maximum number of log files that can be retained. |
| syslog_level | The level of system logs. |
| trace_log_sampling_interval | The interval at which trace logs are printed. |
Partition parameters
| Parameter | Description |
|---|---|
| tablet_meta_table_check_interval | The interval at which the background inspection threads inspect the DBA_OB_TABLET_REPLICAS or CDB_OB_TABLET_REPLICAS view. |
| tablet_meta_table_scan_batch_count | The number of tablets cached in memory when the tablet meta table iterator is working. |
| tablet_size | The size of each shard during intra-partition parallel processing such as parallel compactions and queries. |
Read/write and query parameters
| Parameter | Description |
|---|---|
| weak_read_version_refresh_interval | The version refresh interval for weak consistency reads. This parameter affects the latency of weak consistency reads. |
| large_query_worker_percentage | The percentage of worker threads reserved for large queries. |
| large_query_threshold | The execution time threshold to identify a large query. |
| trace_log_slow_query_watermark | The execution time threshold to identify a slow query. Trace logs of slow queries are written to system logs. |
Root Service parameters
| Parameter | Description |
|---|---|
| rootservice_async_task_queue_size | The size of the internal asynchronous task queue for Root Service. |
| rootservice_async_task_thread_count | The size of the thread pool for internal asynchronous tasks of Root Service. |
| rootservice_list | The list of servers where the Root Service and its replicas are deployed. |
| rootservice_ready_check_interval | The wait time after the Root Service is started, during which the cluster status is checked. |
| rootservice_memory_limit | The maximum memory available to Root Service. |
| lease_time | The heartbeat lease period. |
| server_check_interval | The interval at which the server checks the table consistency. |
| server_permanent_offline_time | The time threshold for heartbeat missing at which a server is considered permanently offline. Data replicas on a permanently offline server must be automatically supplemented. |
| ob_event_history_recycle_interval | The interval at which historical events are recycled. |
I/O parameters
| Parameter | Description |
|---|---|
| rdma_io_thread_count | The number of RDMA I/O threads for Libeasy. |
| syslog_io_bandwidth_limit | The maximum I/O bandwidth available for system logs. If this value is reached, the remaining system logs are discarded. |
| disk_io_thread_count | The number of disk I/O threads. The value must be an even number. |
| net_thread_count | The number of network I/O threads. |
TCP parameters
| Parameter | Description |
|---|---|
| enable_tcp_keepalive | Specifies whether to enable the keepalive mechanism for client connections. |
| tcp_keepidle | The interval in seconds before sending a keepalive probe packet when no data is sent on a client connection. |
| tcp_keepintvl | The interval between two probes in seconds when you enable the keepalive mechanism for client connections. |
| tcp_keepcnt | The maximum number of retries before terminating a non-active connection. |
Other parameters
| Parameter | Description |
|---|---|
| builtin_db_data_verify_cycle | The cycle of a bad block check in the unit of days. When the value is set to 0, the bad block check is not performed. |
| data_storage_warning_tolerance_time | The tolerance period after which the data disk is set to the WARNING state. |
| dead_socket_detection_timeout | The interval for detecting invalid sockets. |
| enable_sys_table_ddl | Specifies whether to enable manual creation of system tables. |
| internal_sql_execute_timeout | The interval of DML requests in the system. |
| migration_disable_time | The period during which data migration is suspended for a node after data migration to the node fails due to reasons such as full disk usage. |
| schema_history_expire_time | The validity period of history metadata. |
| datafile_size | The size of a data file. This parameter is generally left unspecified. |
| devname | The name of the network interface card (NIC) to which the service process is bound. |
| enable_perf_event | Specifies whether to enable the information collection feature for performance events. |
| enable_record_trace_id | Specifies whether to record the trace ID configured by the application. |
| enable_upgrade_mode | Specifies whether to enable the upgrade mode. In upgrade mode, some backend system features are suspended. |
| enable_ddl | Specifies whether to allow the execution of DDL statements. |
| high_priority_net_thread_count | The number of network threads with a high priority. When this parameter is set to 0, this feature is disabled. |
| mysql_port | The port number for the SQL service protocol. |
| obconfig_url | The URL of the OBConfig service. |
| rpc_port | The RPC port. |
| ssl_client_authentication | Specifies whether to enable SSL authentication. |
| stack_size | The size of the function call stack for programs. |
| tenant_task_queue_size | The request queue size of each tenant. |
| zone | The name of the zone where the node is located. This parameter is generally left unspecified. |
| ssl_external_kms_info | The information that the SSL feature of OceanBase Database relies on, which is recorded in JSON strings for different SSL modes. Such a JSON string contains at least the ssl_mode field. |
| recyclebin_object_expire_time | The period during which a schema object can be retained in the recycle bin. After the period elapses, the object will be purged from the recycle bin. |
| default_row_format | The default row format used in table creation in MySQL mode. |
| enable_sql_audit | Specifies whether to enable SQL audit. |
| min_observer_version | The earliest OBServer version in the cluster. |
| sys_bkgd_net_percentage | The maximum percentage of network bandwidth for backend system tasks. |
| schema_history_recycle_interval | The interval for recycling schema multi-version history files. |
| enable_asan_for_memory_context | Specifies whether to enable ObAsanAllocator when ob_asan is working. By default, ObAllocator is the allocator of MemoryContext. |
Unsupported parameters
| Parameter | Description |
|---|---|
| plan_cache_high_watermark | The memory threshold to trigger plan cache eviction. Automatic eviction is triggered when the memory occupied by the plan cache reaches the specified threshold. |
| plan_cache_low_watermark | The memory threshold to stop plan cache eviction. The eviction is stopped when the memory occupied by the plan cache decreases to the specified threshold. |
| tenant_cpu_variation_per_server | The variation allowed for CPU quota scheduling among multiple units of a tenant. |
| system_trace_level | The level of system trace logs to be printed. |
Tenant-level parameters
User logon parameters
Note
The following table describes the parameters that take effect only in MySQL mode.
| Parameter | Description |
|---|---|
| connection_control_failed_connections_threshold | The threshold of failed logon attempts. |
| connection_control_min_connection_delay | The minimum lock period for an account whose number of failed logon attempts reaches the specified threshold. |
| connection_control_max_connection_delay | The maximum lock period for an account whose number of failed logon attempts reaches the specified threshold. |
Audit parameters
| Parameter | Description |
|---|---|
| audit_sys_operations | Specifies whether to track the operations of the SYS user. |
| audit_trail | Specifies whether to enable database audit. |
Transaction and transaction log parameters
| Parameter | Description |
|---|---|
| log_disk_utilization_limit_threshold | The maximum usage of the tenant log disk. When the occupied space of the tenant log disk exceeds its total space multiplied by the specified value, log write is not allowed. |
| log_disk_utilization_threshold | The usage threshold of the tenant log disk. When the occupied space of the tenant log disk exceeds its total space multiplied by the specified value, log files are reused. |
| writing_throttling_maximum_duration | The time required for allocating the remaining memory of the MemStore after the write speed is limited. This parameter controls the write speed by controlling the memory allocation progress. |
| writing_throttling_trigger_percentage | The upper limit of the write speed. |
Minor and major compaction parameters
| Parameter | Description |
|---|---|
| default_progressive_merge_num | The default number of progressive major compactions during table creation. |
| major_freeze_duty_time | The time to trigger a freeze and a major compaction every day. |
| major_compact_trigger | The number of minor compactions for triggering a global major compaction. |
| minor_compact_trigger | The threshold for triggering the next-level compaction in hierarchical minor compactions. |
| undo_retention | The time range in seconds of data versions to be retained by the system. This variable is used to control the collection of data of multiple versions in minor compactions. |
| merger_check_interval | The interval for scheduling the thread for checking the major compaction status. |
| freeze_trigger_percentage | The threshold of memory used by tenants for triggering a global freeze. |
CPU parameters
| Parameter | Description |
|---|---|
| cpu_quota_concurrency | The maximum concurrency allowed for each CPU quota of a tenant. |
Encryption parameters
| Parameter | Description |
|---|---|
| external_kms_info | The key management information. |
| tde_method | The encryption method for a transparent tablespace. |
PL parameters
| Parameter | Description |
|---|---|
| plsql_code_type | The compilation mode of PL/SQL code. |
| plsql_debug | Specifies whether to compile code for debugging. |
| plsql_optimize_level | The compilation optimization level. |
| plsql_v2_compatibility | Specifies whether compatibility with Oracle 8 is supported. Note This parameter applies only to the Oracle mode and does not take effect now. |
| plsql_warnings | Controls the error reporting behavior of the PL/SQL compiler. You can use this parameter to specify the status of a warning code or a warning code type to enable, disable, or error. |
Compatibility parameters
Note
The following table describes the parameters that take effect only in MySQL mode.
| Parameter | Description |
|---|---|
| enable_sql_extension | Specifies whether to enable SQL extension for tenants. |
Read/write and query parameters
| Parameter | Description |
|---|---|
| enable_monotonic_weak_read | Specifies whether to enable monotonic reads. |
| query_response_time_stats | Specifies whether to collect the statistics of 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 | The time interval at which the time parameters of the information_schema.QUERY_RESPONSE_TIME view are collected. |
Routing parameters
| Parameter | Description |
|---|---|
| ob_proxy_readonly_transaction_routing_policy | Specifies whether OBProxy routes a transaction based on read-only statements. |
I/O parameters
| Parameter | Description |
|---|---|
| io_category_config | The percentages of all types of I/O requests. |
Background execution thread parameters
| Parameter | Description |
|---|---|
| compaction_low_thread_score | The weight of the CPU time slice occupied by the worker threads for low-priority compaction tasks. |
| compaction_high_thread_score | The weight of the CPU time slice occupied by the worker threads for high-priority compaction tasks. |
| compaction_mid_thread_score | The weight of the CPU time slice occupied by the worker threads for medium-priority compaction tasks. |
| ha_high_thread_score | The current number of high-availability high-priority worker threads. |
| ha_mid_thread_score | The current number of high-availability medium-priority worker threads. |
| ha_low_thread_score | The current number of high-availability low-priority worker threads. |
| ob_compaction_schedule_interval | The time interval for compaction scheduling. |
Backup and restore parameters
| Parameter | Description |
|---|---|
| log_restore_concurrency | The concurrency of log restoration. |
| log_archive_concurrency | The concurrency of log archiving. |
Other parameters
| Parameter | Description |
|---|---|
| enable_early_lock_release | Specifies whether to enable the early lock release (ELR) feature. |
| workarea_size_policy | Specifies whether the size of an SQL workarea is manually or automatically adjusted. |
| open_cursors | The maximum number of cursors that can be concurrently opened in a single session. |
| ob_ssl_invited_common_names | The list of identities of applications running under the current tenant. The identity of an application comes from the cn (common name) field of the subject of the client certificate in two-way SSL authentication. |
| ob_enable_batched_multi_statement | Specifies whether to enable group-based execution optimization for the batch processing feature. |
| job_queue_processes | The maximum number of concurrent tasks that can be run under each tenant. You can set this parameter to prevent tenant resources from being excessively occupied by tasks. Note This parameter takes effect only in Oracle mode. |
| default_auto_increment_mode | The default auto-increment mode of auto-increment columns. |
| ob_query_switch_leader_retry_timeout | The maximum retry period for failed queries, in us. |
| default_enable_extended_rowid | Specifies whether to create the table in Extended ROWID mode. |
Unsupported parameters
| Parameter | Description |
|---|---|
| sql_work_area | The workarea memory of a tenant. |
| max_stale_time_for_weak_consistency | The maximum latency allowed in weak consistency reads. |