【TiDB 4.0 PCTA学习笔记】- 2.4 TiDB 与 MySQL 的差异 @3班 + 张先红

课程名称:2.4 TiDB 与 MySQL 的差异

学习时长:11

课程收获:了解 TiDB 和 MySQL 在语法、功能和行为上的主要差异

课程内容:

1、兼容性概览
(1)协议
主要是Client/Server协议,MySQL上的生态工具绝大多数都可以兼容TiDB
Client:PHP\Navicat、MySQL WORKBENCH
Data Migration tool:mysqldump、mydumper
commector:MySQL connectors

(2)语法
支持MySQL5.7/8.0的绝大多数语法

(3)语义
有些语义不支持的原因:在分布式环境下不容易实现,有设计但是没有完全实现
语义和MySQL有区别:auto_increment、storage engine

2、和MySQL有区别的特性
(1)暂时不支持的功能
存储过程和自定义函数
触发器
事件
约束

(2)和MySQL有差异的功能
a.auto_increment

auto_increment限制
将auto_increment属性加入到已经存在的列上面是不支持的
它的语义与MySQL也有区别
auto_increment只能保证唯一性,不能保证自增性
全文索引和空间索引不支持
不支持修改多个schema,不支持修改某一列的类型(char(10)→char(5),varchar(255)→varchar(10))
隔离级别在TiDB中默认是REPEATABLE READ
Analyze table
view是只读,不支持写操作
storage engines
charsets,只支持utf8、utf8mb4、ascii、latin1、binary
execution plan,执行计划输出和MySQL不一样

学习过程中参考的其他资料