Sign InTry Free

TiDB Features

This document lists the features supported in each TiDB version.

Data types, functions, and operators

Data types, functions, and operators6.56.46.36.26.16.05.45.35.25.15.04.0
Numeric typesYYYYYYYYYYYY
Date and time typesYYYYYYYYYYYY
String typesYYYYYYYYYYYY
JSON typeYYYExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimental
Control flow functionsYYYYYYYYYYYY
String functionsYYYYYYYYYYYY
Numeric functions and operatorsYYYYYYYYYYYY
Date and time functionsYYYYYYYYYYYY
Bit functions and operatorsYYYYYYYYYYYY
Cast functions and operatorsYYYYYYYYYYYY
Encryption and compression functionsYYYYYYYYYYYY
Information functionsYYYYYYYYYYYY
JSON functionsYYYExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimental
Aggregation functionsYYYYYYYYYYYY
Window functionsYYYYYYYYYYYY
Miscellaneous functionsYYYYYYYYYYYY
OperatorsYYYYYYYYYYYY
Character sets and collations 1YYYYYYYYYYYY
User-level lockYYYYYNNNNNNN

Indexing and constraints

Indexing and constraints6.56.46.36.26.16.05.45.35.25.15.04.0
Expression indexes 2YExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimental
Columnar storage (TiFlash)YYYYYYYYYYYY
Use FastScan to accelerate queries in OLAP scenariosExperimentalExperimentalExperimentalExperimentalNNNNNNNN
RocksDB engineYYYYYYYYYYYY
Titan pluginYYYYYYYYYYYY
Titan Level MergeExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimental
Use buckets to improve scan concurrencyExperimentalExperimentalExperimentalExperimentalExperimentalNNNNNNN
Invisible indexesYYYYYYYYYYYN
Composite PRIMARY KEYYYYYYYYYYYYY
Unique indexesYYYYYYYYYYYY
Clustered index on integer PRIMARY KEYYYYYYYYYYYYY
Clustered index on composite or non-integer keyYYYYYYYYYYYN

SQL statements

SQL statements 36.56.46.36.26.16.05.45.35.25.15.04.0
Basic SELECT, INSERT, UPDATE, DELETE, REPLACEYYYYYYYYYYYY
INSERT ON DUPLICATE KEY UPDATEYYYYYYYYYYYY
LOAD DATA INFILEYYYYYYYYYYYY
SELECT INTO OUTFILEYYYYYYYYYYYY
INNER JOIN, LEFT|RIGHT [OUTER] JOINYYYYYYYYYYYY
UNION, UNION ALLYYYYYYYYYYYY
EXCEPT and INTERSECT operatorsYYYYYYYYYYYN
GROUP BY, ORDER BYYYYYYYYYYYYY
Window FunctionsYYYYYYYYYYYY
Common Table Expressions (CTE)YYYYYYYYYYNN
START TRANSACTION, COMMIT, ROLLBACKYYYYYYYYYYYY
EXPLAINYYYYYYYYYYYY
EXPLAIN ANALYZEYYYYYYYYYYYY
User-defined variablesExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimental
BATCH [ON COLUMN] LIMIT INTEGER DELETEYYYYYNNNNNNN
BATCH [ON COLUMN] LIMIT INTEGER INSERT/UPDATE/REPLACEYNNNNNNNNNNN
ALTER TABLE ... COMPACTYYYYExperimentalNNNNNNN
Table LockExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimental
TiFlash Query Result MaterializationExperimentalNNNNNNNNNNN

Advanced SQL features

Advanced SQL features6.56.46.36.26.16.05.45.35.25.15.04.0
Prepared statement cacheYYYYYYYYExperimentalExperimentalExperimentalExperimental
SQL plan management (SPM)YYYYYYYYYYYY
Create bindings according to historical execution plansExperimentalNNNNNNNNNNN
Coprocessor cacheYYYYYYYYYYYExperimental
Stale ReadYYYYYYYYYYNN
Follower readsYYYYYYYYYYYY
Read historical data (tidb_snapshot)YYYYYYYYYYYY
Optimizer hintsYYYYYYYYYYYY
MPP Execution EngineYYYYYYYYYYYN
Index MergeYYYYYYYExperimentalExperimentalExperimentalExperimentalExperimental
Placement Rules in SQLYYYYYYExperimentalExperimentalNNNN
Cascades PlannerExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimental

Data definition language (DDL)

Data definition language (DDL)6.56.46.36.26.16.05.45.35.25.15.04.0
Basic CREATE, DROP, ALTER, RENAME, TRUNCATEYYYYYYYYYYYY
Generated columnsExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimental
ViewsYYYYYYYYYYYY
SequencesYYYYYYYYYYYY
Auto incrementYY 4YYYYYYYYYY
Auto randomYYYYYYYYYYYY
TTL (Time to Live)ExperimentalNNNNNNNNNNN
DDL algorithm assertionsYYYYYYYYYYYY
Multi-schema change: add columnsYYYYExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimental
Change column typeYYYYYYYYYYNN
Temporary tablesYYYYYYYYNNNN
Concurrent DDL statementsYYYYNNNNNNNN
Acceleration of ADD INDEX and CREATE INDEXYExperimentalExperimentalNNNNNNNNN
Metadata lockYExperimentalExperimentalNNNNNNNNN
FLASHBACK CLUSTER TO TIMESTAMPYExperimentalNNNNNNNNNN

Transactions

Transactions6.56.46.36.26.16.05.45.35.25.15.04.0
Async commitYYYYYYYYYYYN
1PCYYYYYYYYYYYN
Large transactions (10GB)YYYYYYYYYYYY
Pessimistic transactionsYYYYYYYYYYYY
Optimistic transactionsYYYYYYYYYYYY
Repeatable-read isolation (snapshot isolation)YYYYYYYYYYYY
Read-committed isolationYYYYYYYYYYYY

Partitioning

Partitioning6.56.46.36.26.16.05.45.35.25.15.04.0
Range partitioningYYYYYYYYYYYY
Hash partitioningYYYYYYYYYYYY
List partitioningYYYYYExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalN
List COLUMNS partitioningYYYYYExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalN
EXCHANGE PARTITIONYYYExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalN
Dynamic pruningYYYYYExperimentalExperimentalExperimentalExperimentalExperimentalNN
Range COLUMNS partitioningYYYNNNNNNNNN
Range INTERVAL partitioningExperimentalExperimentalExperimentalNNNNNNNNN

Statistics

Statistics6.56.46.36.26.16.05.45.35.25.15.04.0
CMSketchDisabled by defaultDisabled by defaultDisabled by defaultDisabled by defaultDisabled by defaultDisabled by defaultDisabled by defaultDisabled by defaultYYYY
HistogramsYYYYYYYYYYYY
Extended statisticsExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalN
Statistics feedbackNNNNDeprecatedDeprecatedDeprecatedExperimentalExperimentalExperimentalExperimentalExperimental
Automatically update statisticsYYYYYYYYYYYY
Fast AnalyzeExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimental
Dynamic pruningYYYYYExperimentalExperimentalExperimentalExperimentalExperimentalNN
Collect statistics for PREDICATE COLUMNSExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalNNNNN
Control the memory quota for collecting statisticsExperimentalExperimentalExperimentalExperimentalExperimentalNNNNNNN
Randomly sample about 10000 rows of data to quickly build statisticsExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimental
Lock statisticsExperimentalNNNNNNNNNNN

Security

Security6.56.46.36.26.16.05.45.35.25.15.04.0
Transparent layer security (TLS)YYYYYYYYYYYY
Encryption at rest (TDE)YYYYYYYYYYYY
Role-based authentication (RBAC)YYYYYYYYYYYY
Certificate-based authenticationYYYYYYYYYYYY
caching_sha2_password authenticationYYYYYYYYYNNN
tidb_sm3_password authenticationYYYNNNNNNNNN
tidb_auth_token authenticationYYNNNNNNNNNN
Password managementYNNNNNNNNNNN
MySQL compatible GRANT systemYYYYYYYYYYYY
Dynamic PrivilegesYYYYYYYYYYNN
Security Enhanced ModeYYYYYYYYYYNN
Redacted Log FilesYYYYYYYYYYYN

Data import and export

Data import and export6.56.46.36.26.16.05.45.35.25.15.04.0
Fast Importer (TiDB Lightning)YYYYYYYYYYYY
mydumper logical dumperDeprecatedDeprecatedDeprecatedDeprecatedDeprecatedDeprecatedDeprecatedDeprecatedDeprecatedDeprecatedDeprecatedDeprecated
Dumpling logical dumperYYYYYYYYYYYY
Transactional LOAD DATAYYYYYYYYYYYN 5
Database migration toolkit (DM)YYYYYYYYYYYY
TiDB BinlogYYYYYYYYYYYY
Change data capture (CDC)YYYYYYYYYYYY
Stream data to Amazon S3, Azure Blob Storage, and NFS through TiCDCExperimentalNNNNNNNNNNN
TiCDC supports bidirectional replication between two TiDB clustersYNNNNNNNNNNN

Management, observability, and tools

Management, observability, and tools6.56.46.36.26.16.05.45.35.25.15.04.0
TiDB Dashboard UIYYYYYYYYYYYY
TiDB Dashboard Continuous ProfilingYYYYYYExperimentalExperimentalNNNN
TiDB Dashboard Top SQLYYYYYYExperimentalNNNNN
TiDB Dashboard SQL DiagnosticsYYExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimental
TiDB Dashboard Cluster DiagnosticsYYExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimental
TiKV-FastTune dashboardExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimental
Information schemaYYYYYYYYYYYY
Metrics schemaYYYYYYYYYYYY
Statements summary tablesYYYYYYYYYYYY
Slow query logYYYYYYYYYYYY
TiUP deploymentYYYYYYYYYYYY
Kubernetes operatorYYYYYYYYYYYY
Built-in physical backupYYYYYYYYYYYY
Global KillYYYYYExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimental
Lock ViewYYYYYYYYYExperimentalExperimentalExperimental
SHOW CONFIGYYYYYYYYYYYY
SET CONFIGYYYYYExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimental
DM WebUIExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalNNNNNN
Foreground Quota LimiterYYYYExperimentalExperimentalNNNNNN
Background Quota LimiterExperimentalExperimentalExperimentalExperimentalNNNNNNNN
EBS volume snapshot backup and restoreYYNNNNNNNNNN
PITRYYYYNNNNNNNN
Global memory controlYExperimentalNNNNNNNNNN
Cross-cluster RawKV replicationExperimentalExperimentalExperimentalExperimentalNNNNNNNN
Green GCExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalExperimentalN

  1. TiDB incorrectly treats latin1 as a subset of utf8. See TiDB #18955 for more details.
  2. Starting from v6.5.0, the expression indexes created on the functions listed by the tidb_allow_function_for_expression_index system variable have been tested and can be used in production environments, and more functions will be supported in the future releases. For functions not listed by this variable, the corresponding expression indexes are not recommended for use in production environments. See expression indexes for details.
  3. See Statement Reference for a full list of SQL statements supported.
  4. Starting from v6.4.0, TiDB supports high-performance and globally monotonic AUTO_INCREMENT columns
  5. For TiDB v4.0, the LOAD DATA transaction does not guarantee atomicity.
Download PDFRequest docs changesAsk questions on TiDB Forum
Was this page helpful?
Products
TiDB Cloud
TiDB
Pricing
Get Demo
© 2023 PingCAP. All Rights Reserved.