课程名称:【TiDB 4.0 PCTA学习笔记】 2.5.2~2.5.4
学习时长:100min
课程收获:
- 了解TiDB中的系统表
- 了解PD Control的使用
- 了解Dashboard的使用,热力图的查看
2.5.2 TiDB中的系统表
Default Schemas
- 和MySQL5.7的区别
mysql System Schema
- 定义:mysql schema是一个system schema。
- 包含权限信息
- user。用户的account信息、全局权限等
- db。数据库层面的权限信息。
- tables_priv。表级别的权限。
- columns_priv。列级权限。
- 包含统计信息(CBO是用这些统计信息吗?)
- stats_buckets.
- stats_histograms.
- stats_meta.
- GC相关的表。
- gc_delete_range
- 其他的一些表
- GLOBAL_VARIABLES。全局变量相关的表。
- tidb。记录版本信息、生命周期等参数。
INFORMATION_SCHEMA
提供了一种查看系统元数据的标准方法。
- SESSION_VARIABLES。记录session相关的数据。例如:
- TiDB_INDEXES。提供了数据库中所有表的索引信息。例如:
- TIDB_HOT_REGIONS。PD所统计的热点region信息。(也可以使用Dashboard来看热点问题)例如:
- TIKV_REGION_PEERS。记录了每个region的信息。例如:
- TIKV_REGION_STATUS。记录了每个region的信息。例如:
- TIKV_STORE_STATUS。记录每个TIKV的节点信息。
- CLUSTER_PROCESSLIST。记录了所有节点的PROCESSLIST信息。
- SLOW_QUERY。一个外部表,基于日志。记录TiDB中的慢查询。
- CLUSTER_SLOW_QUERY。基于日志。记录集群中的慢查询。
SQL的诊断
主要是三部分:集群信息表、集群监控表、自动诊断。
- 集群信息表
- 集群监控表(v4.0后)
- SQL 诊断表(可以使用Dashboard中可视化查看)
- inspection_result
- inspection_summary
2.5.3 PD Control的使用
PD的概念简单回顾
PD全称:Placement Driver
PD Control 概览
- 启动方式,两种启动方式:
- 推荐:
tiup ctl pd -u http://<pd_ip>:<pd_port>[-i]
tidb-ansible/resources/bin/pd-ctl -u http://<pd_ip>:<pd_port> [-i]
- 推荐:
获取PD中的信息
- Cluster Info :获取集群信息
- Memeber Info:集群中member中的信息
- Member leader Info:看那个member是leader
- Member health Info:看member是否健康
- Query TSO Info:查看具体的时间戳
Modify PD Member
- member leader resign:重新发起选举
- member leader transfer <pd_name>:将leader传递到一个指定的pd
- member leader_priority <pd_name> :设置pd在leader选举中优先级。可以把本地的pd优先级调高、远端的pd优先级调低,减少选举的资源消耗。
- member delete name <pd_name>:从pd集群中,删除指定的pd,通过pd name删除。一般缩容的时候用。 * member delete id <pd_id>:从pd集群中,删除指定的pd,通过pd id删除。一般缩容的时候用。
KV Cluster Info
- store :获取kv集群的信息
- region:获取当前集群中所有region的信息。一般数据量较大,可以指定存入一个文件中。
- region <region_id>:通过id指定看某个region的信息。
- region store <store_id>:查看某个store中所有region的信息。
- label:查看当前TiKV的label信息。
- label store dc <dc_name>:看某个label下面有哪些TiKV。
Modify KV Memeber
- store weight <store_id> <leader_weight> <region_weight>:查看TiKV所占权重。调整TiKV的权重。权重越小,分配到的region数量就越小。
- store label 1 :修改 store label。
- store delete <store_id>:删除store。这个store上的region会迁移到其他的store中。
PD的调度
主要任务
- region leader的平衡
- region的数量平衡
- region热点的平衡
- 升级时,限制新leader的产生
配置Schedule
修改Schedule
策略的手动设置
Scheduling Operation
TiDB Dashboard高级功能
- TiDB 4.0 引入
- 内部自带,不同额外安装。
- 数据一部分在普罗米修斯中,一部分在TiDB的表中。
特性
- 流量可视化。这个很有特点,多看看。