mysql Schema
mysql 库里存储的是 TiDB 系统表。该设计类似于 MySQL 中的 mysql 库,其中 mysql.user 之类的表可以直接编辑。该库还包含许多 MySQL 的扩展表。
权限系统表
这些系统表里面包含了用户账户以及相应的授权信息:
- user用户账户,全局权限,以及其它一些非权限的列
- db数据库级别的权限
- tables_priv表级的权限
- columns_priv列级的权限
- password_history记录密码更改历史
- default_roles默认启用的角色
- global_grants动态权限
- global_priv基于证书的认证信息
- role_edges角色之间的关系信息
服务端帮助信息系统表
- help_topic目前为空
统计信息相关系统表
- stats_buckets统计信息的桶
- stats_histograms统计信息的直方图
- stats_top_n统计信息的 TopN
- stats_meta表的元信息,比如总行数和修改数
- stats_extended扩展统计信息,比如列之间的顺序相关性
- stats_feedback统计信息的查询反馈
- stats_fm_sketch统计信息列的直方图 FMSketch 分布
- stats_table_locked被锁定的统计信息
- stats_meta_history历史统计信息中的元信息部分
- stats_history历史统计信息中的其它部分
- analyze_options各个表默认的- analyze参数
- column_stats_usage列统计信息的使用情况
- schema_index_usage索引的使用情况
- analyze_jobs正在执行的统计信息收集任务以及过去 7 天内的历史任务记录
执行计划相关系统表
- bind_info执行计划的绑定信息
- capture_plan_baselines_blacklist关于自动绑定执行计划对象的黑名单
PLAN REPLAYER 相关系统表
- plan_replayer_status存储用户注册的- PLAN REPLAYER CAPTURE抓取任务
- plan_replayer_task存储- PLAN REPLAYER CAPTURE抓取结果
GC Worker 相关系统表
- gc_delete_range需要被 GC worker 定期删除的 KV 范围段
- gc_delete_range_done已经被删除的 KV 范围段
缓存表使用的系统表
- table_cache_meta存储了缓存表的元信息
元数据锁相关系统表
- tidb_mdl_view元数据锁的视图,可以用于查看当前阻塞的 DDL 的相关信息
- tidb_mdl_infoTiDB 内部用于同步各节点的元数据锁的相关信息
DDL 相关系统表
- tidb_ddl_history记录了 DDL 语句的历史记录
- tidb_ddl_jobsTiDB 内部存放的正在执行的 DDL 的元数据,用于执行 DDL
- tidb_ddl_reorgTiDB 内部存放的正在执行的物理 DDL(例如加索引)的元数据,用于执行物理 DDL
其它系统表
- GLOBAL_VARIABLES全局系统变量表
- tidb用于 TiDB 在 bootstrap 的时候记录相关版本信息
- expr_pushdown_blacklist表达式下推的黑名单
- opt_rule_blacklist逻辑优化规则的黑名单
- table_cache_meta缓存表的信息
- advisory_locks存储锁函数相关的信息