- 关于 TiDB
- 快速上手
- 部署标准集群
- 数据迁移
- 运维操作
- 监控与告警
- 故障诊断
- 性能调优
- 系统调优
- 软件调优
- SQL 性能调优
- SQL 性能调优概览
- 理解 TiDB 执行计划
- SQL 优化流程
- 控制执行计划
- 教程
- TiDB 工具
- 功能概览
- 适用场景
- 工具下载
- TiUP
- TiDB Operator
- Dumpling
- TiDB Lightning
- TiDB Data Migration
- Backup & Restore (BR)
- TiDB Binlog
- TiCDC
- sync-diff-inspector
- TiSpark
- 参考指南
- 架构
- 监控指标
- 安全加固
- 权限
- SQL
- SQL 语言结构和语法
- SQL 语句
ADD COLUMN
ADD INDEX
ADMIN
ADMIN CANCEL DDL
ADMIN CHECKSUM TABLE
ADMIN CHECK [TABLE|INDEX]
ADMIN SHOW DDL [JOBS|QUERIES]
ADMIN SHOW TELEMETRY
ALTER DATABASE
ALTER INDEX
ALTER INSTANCE
ALTER PLACEMENT POLICY
ALTER TABLE
ALTER USER
ANALYZE TABLE
BACKUP
BEGIN
CHANGE COLUMN
CHANGE DRAINER
CHANGE PUMP
COMMIT
CREATE [GLOBAL|SESSION] BINDING
CREATE DATABASE
CREATE INDEX
CREATE PLACEMENT POLICY
CREATE ROLE
CREATE SEQUENCE
CREATE TABLE LIKE
CREATE TABLE
CREATE USER
CREATE VIEW
DEALLOCATE
DELETE
DESC
DESCRIBE
DO
DROP [GLOBAL|SESSION] BINDING
DROP COLUMN
DROP DATABASE
DROP INDEX
DROP PLACEMENT POLICY
DROP ROLE
DROP SEQUENCE
DROP STATS
DROP TABLE
DROP USER
DROP VIEW
EXECUTE
EXPLAIN ANALYZE
EXPLAIN
FLASHBACK TABLE
FLUSH PRIVILEGES
FLUSH STATUS
FLUSH TABLES
GRANT <privileges>
GRANT <role>
INSERT
KILL [TIDB]
LOAD DATA
LOAD STATS
MODIFY COLUMN
PREPARE
RECOVER TABLE
RENAME INDEX
RENAME TABLE
REPLACE
RESTORE
REVOKE <privileges>
REVOKE <role>
ROLLBACK
SELECT
SET DEFAULT ROLE
SET [NAMES|CHARACTER SET]
SET PASSWORD
SET ROLE
SET TRANSACTION
SET [GLOBAL|SESSION] <variable>
SHOW [BACKUPS|RESTORES]
SHOW ANALYZE STATUS
SHOW [GLOBAL|SESSION] BINDINGS
SHOW BUILTINS
SHOW CHARACTER SET
SHOW COLLATION
SHOW [FULL] COLUMNS FROM
SHOW CONFIG
SHOW CREATE PLACEMENT POLICY
SHOW CREATE SEQUENCE
SHOW CREATE TABLE
SHOW CREATE USER
SHOW DATABASES
SHOW DRAINER STATUS
SHOW ENGINES
SHOW ERRORS
SHOW [FULL] FIELDS FROM
SHOW GRANTS
SHOW INDEX [FROM|IN]
SHOW INDEXES [FROM|IN]
SHOW KEYS [FROM|IN]
SHOW MASTER STATUS
SHOW PLACEMENT
SHOW PLACEMENT FOR
SHOW PLACEMENT LABELS
SHOW PLUGINS
SHOW PRIVILEGES
SHOW [FULL] PROCESSSLIST
SHOW PROFILES
SHOW PUMP STATUS
SHOW SCHEMAS
SHOW STATS_HEALTHY
SHOW STATS_HISTOGRAMS
SHOW STATS_META
SHOW STATUS
SHOW TABLE NEXT_ROW_ID
SHOW TABLE REGIONS
SHOW TABLE STATUS
SHOW [FULL] TABLES
SHOW [GLOBAL|SESSION] VARIABLES
SHOW WARNINGS
SHUTDOWN
SPLIT REGION
START TRANSACTION
TABLE
TRACE
TRUNCATE
UPDATE
USE
WITH
- 数据类型
- 函数与操作符
- 聚簇索引
- 约束
- 生成列
- SQL 模式
- 表属性
- 事务
- 垃圾回收 (GC)
- 视图
- 分区表
- 临时表
- 字符集和排序规则
- Placement Rules in SQL
- 系统表
mysql
- INFORMATION_SCHEMA
- Overview
ANALYZE_STATUS
CLIENT_ERRORS_SUMMARY_BY_HOST
CLIENT_ERRORS_SUMMARY_BY_USER
CLIENT_ERRORS_SUMMARY_GLOBAL
CHARACTER_SETS
CLUSTER_CONFIG
CLUSTER_HARDWARE
CLUSTER_INFO
CLUSTER_LOAD
CLUSTER_LOG
CLUSTER_SYSTEMINFO
COLLATIONS
COLLATION_CHARACTER_SET_APPLICABILITY
COLUMNS
DATA_LOCK_WAITS
DDL_JOBS
DEADLOCKS
ENGINES
INSPECTION_RESULT
INSPECTION_RULES
INSPECTION_SUMMARY
KEY_COLUMN_USAGE
METRICS_SUMMARY
METRICS_TABLES
PARTITIONS
PLACEMENT_RULES
PROCESSLIST
REFERENTIAL_CONSTRAINTS
SCHEMATA
SEQUENCES
SESSION_VARIABLES
SLOW_QUERY
STATISTICS
TABLES
TABLE_CONSTRAINTS
TABLE_STORAGE_STATS
TIDB_HOT_REGIONS
TIDB_INDEXES
TIDB_SERVERS_INFO
TIDB_TRX
TIFLASH_REPLICA
TIKV_REGION_PEERS
TIKV_REGION_STATUS
TIKV_STORE_STATUS
USER_PRIVILEGES
VIEWS
METRICS_SCHEMA
- UI
- CLI
- 命令行参数
- 配置文件参数
- 系统变量
- 存储引擎
- 遥测
- 错误码
- 通过拓扑 label 进行副本调度
- 常见问题解答 (FAQ)
- 版本发布历史
- 术语表
TiDB 4.0.8 Release Notes
发版日期:2020 年 10 月 30 日
TiDB 版本:4.0.8
新功能
优化提升
TiDB
- 在挑选索引组合计算表达式选择率的贪心算法里优先使用选择率低的索引 #20154
- 在 Coprocessor 运行状态中记录更多的 RPC 信息 #19264
- 优化读取慢日志的效率,以提升慢查询性能 #20556
- 在挑选执行计划时,优化器会在 Plan Binding 阶段等待超时的执行计划以记录更多的 Debug 信息 #20530
- 在慢查询和慢日志中增加语句的重试时间 #20495 #20494
- 增加系统表
table_storage_stats
#20431 - 为
INSERT
/UPDATE
/REPLACE
语句记录 RPC 相关的运行时信息 #20430 - 在
EXPLAIN FOR CONNECTION
语句的结果中新增算子信息 #20384 - 在 TiDB 日志中将客户端的连接建立/断开日志级别调整为
DEBUG
#20321 - 增加 Coprocessor Cache 的监控信息 #20293
- 在运行时信息中记录更多的悲观锁相关参数 #20199
- 在运行时信息和 Trace 功能中增加两个新的耗时信息 #20187
- 在慢日志中添加事务提交的运行时信息 #20185
- 关闭 Index Merge Join #20599
- 为临时字符串常量增加 ISO 8601 和时区支持 #20670
TiKV
PD
TiFlash
- 添加关于 Raft log 的监控
- 添加关于
cop
任务内存使用的监控 - 在存在删除数据的情况下使
min
/max
索引更加准确 - 提高小批量数据下的查询性能
- 添加
error.toml
文件以支持标准错误码
Tools
Backup & Restore (BR)
TiCDC
- 在 MySQL sink 中定期输出统计信息 #1023
Dumpling
TiDB Lightning
Bug 修复
TiDB
- 修复使用分区表时,可能遇到非预期 Panic 的问题 #20565
- 修复外连接时,若外表有过滤条件,Index Merge Join 结果有时不正确的问题 #20427
- 修复
BIT
类型进行转换时,由于类型长度溢出而错误地返回NULL
的问题 #20363 - 修复
ALTER TABLE ...
语法改变BIT
类型的默认值,可能导致默认值错误的问题 #20340 - 修复
BIT
类型转换为INT64
时可能导致长度溢出错误的问题 #20312 - 修复混合类型的列在进行条件传播优化时,可能导致结果错误的问题 #20297
- 修复 Plan Cache 在存储过期执行计划时,可能 Panic 的问题 #20246
- 修复
FROM_UNIXTIME
和UNION ALL
一起使用时,返回结果会被错误地截断的问题 #20240 - 修复
Enum
类型在转换为Float
类型时可能导致错误结果的问题 #20235 - 修复
RegionStore
在某些条件下会 Panic 的问题 #20210 - 修复
BatchPointGet
请求对无符号整数的最大值进行排序时,结果错误的问题 #20205 - 修复
Enum
/Set
类型在混合 Collation 的类型判定时,结果 Collation 可能与 MySQL 不兼容的问题 #20364 - 修复将其他类型的
0
转换为YEAR
类型时,结果与 MySQL 不兼容的问题 #20292 - 修复
KV Duration
监控指标中包含store0
时,上报结果不正确的问题 #20260 - 修复写入
Float
类型数据时,由于长度溢出提示out of range
错误后仍然被错误地写入问题 #20252 - 修复
NOT NULL
属性生成列允许在某些情况下写入NULL
值的问题 #20216 - 修复
YEAR
类型数据写入超过允许范围时,错误提示不准确的问题 #20170 - 修复某些情况下悲观事务重试时,会报错
invalid auto-id
的问题 #20134 - 修复
ALTER TABLE
更改Enum
/Set
类型时,未进行重复性约束检查的问题 #20046 - 修复一些算子在并发执行时,记录的 Coprocessor Task 运行时信息错误的问题 #19947
- 修复只读系统变量无法被作为 Session 级变量显式
SELECT
的问题 #19944 - 修复重复
ORDER BY
条件有时会导致执行计划选择不是最优的问题 #20333 - 修复生成 Metric Profile 时,由于字体超过允许的最大值导致失败的问题 #20637
TiKV
PD
TiFlash
- 修复了日志信息中时间戳错误的问题
- 修复了使用多盘部署时错误的容量导致创建 TiFlash 副本失败的问题
- 修复了 TiFlash 重启后可能提示数据文件损坏的问题
- 修复了 TiFlash 崩溃后磁盘上可能残留损坏文件的问题
- 修复了在写流量较小情况下,由于 Raft Learner 协议中的状态不能及时更新而导致
wait index duration
变长,造成查询慢的问题 - 修复了在重放过期 Raft 日志时,proxy 会向 key-value 引擎写入大量 Region state 信息的问题
Tools
文档内容是否有帮助?