配置分類
系統配置(系統變量)
通過mysql客戶端中使用命令進行修改,持久化到tikv層。
集群配置
包括pd, tidb-server, tikv,tiflash的配置,通過各個節點上配置文件持久化設置。只有在節點重啟生效。
區別
作用域(系統參數)
集群配置沒有作用域范圍,只有系統配置才有作用域
- global: 對新建會話連接有效,當前連接會話或已建立的會話不生效
- session: 僅在當前會話生效
- instance: 節點上實例重啟后生效
配置調整
系統參數
通過mysql客戶端連接到TiDB-Server后,使用set命令修改。
全局參數
-- 1.1 查看當前配置值
select @@tidb_slow_log_threshold;
-- 1.2 修改配置
set @@global.tidb_slow_log_threshold = 200;
set global tidb_slow_log_threshold = 200;
會話參數
set tidb_distsql_scan_concurrency = 10;
set session tidb_distsql_scan_concurrency = 10;
集群參數
配置過程
- 以編輯模式打開集群的配置文件
- 設置參數
- 執行reload命令滾動分發配置、重啟相應組件
詳細過程
以編輯模式打開集群的配置文件
tiup cluster edit-config ${cluster-name}
設置參數
全局組件范圍生效(在server_configs標簽內配置)
server_configs:
tidb:
log.slow-threshold: 300
指定組件范圍生效(在具體節點標簽內配置)
tidb_servers:
- host: 192.168.10.181
port: 4000
config:
log.slow-threshold: 300
可以參考模板文件參數配置
/tidb/.tiup/bin/tiup cluster template # 生成模板文件
執行reload命令
tiup cluster reload ${cluster-name} [-N <nodes>] [-R <roles>]
查看配置
集群參數
通過show config
命令查看
通過 SQL語句 show config 來直接查看集群所有實例的配置信息
show config
查看tidb-server參數
-- 根據對應的字段進行過濾
SHOW CONFIG WHERE type='tidb';
SHOW CONFIG WHERE type = 'tidb' AND name = 'advertise-address';
查看tikv參數
SHOW CONFIG WHERE type='tikv';
SHOW CONFIG WHERE type = 'tikv' AND name like '%sync-log%';
使用系統表查看
Information Schema 提供了一種查看系統元數據的方法。許多 INFORMATION_SCHEMA
表都有相應的 SHOW
命令。查詢 INFORMATION_SCHEMA
的好處是可以在表之間進行 join
操作。
-
集群拓撲表 (information_schema.cluster_info)
用於獲取集群當前的拓撲信息,以及各個實例的版本、版本對應的 Git Hash、各實例的啟動時間、各實例的運行時間。
-
集群配置表 (information_schema.cluster_config)
用於獲取集群當前所有實例的配置。對於 TiDB 4.0 之前的版本,用戶必須逐個訪問各個實例的 HTTP API 才能獲取這些配置信息。
-
集群硬件表 information_schema.cluster_hardware
用於快速查詢集群硬件信息。
-
集群負載表 information_schema.cluster_load
用於查詢集群不同實例以及不同硬件類型的負載信息。
-
內核參數表 information_schema.cluster_systeminfo
用於查詢集群不同實例的內核配置信息。目前支持查詢 sysctl 的信息。
-
集群日志表 information_schema.cluster_log
用於集群日志查詢,通過將查詢條件下推到各個實例,降低日志查詢對集群的影響,性能影響小於等 grep 命令。
select * from information_schema.cluster_info;
系統參數
通過show variables命令查看系統變量值
查看各個作用域范圍變量
- 全局 (global) :使用 show global variables 查看
- 實例 (instance) :使用 show variables 查看
- 會話 (session) :使用 show variables 查看