架构与数据类型

返回 MySQL

命令速查见 基础命令

架构

客户端
  └─► 连接层(连接管理、认证、线程池)
        └─► SQL 层(解析 → 优化 → 执行)
              └─► 存储引擎层(InnoDB / MyISAM / ...)
                    └─► 磁盘(数据文件、日志文件)

InnoDB 支持事务、行锁、MVCC、外键,绝大多数业务表首选。

职责
连接层认证、权限、线程/连接池(max_connections
SQL 层解析器、优化器(选索引、JOIN 顺序)、执行器
存储引擎真正读写数据页;不同引擎 API 一致

数据类型

整数

类型字节范围(有符号)
TINYINT1-128 ~ 127
SMALLINT2-32768 ~ 32767
INT4-21亿 ~ 21亿
BIGINT8±9.2×10¹⁸

UNSIGNED 可让同字节数范围翻倍;主键、计数优先 BIGINT

字符串

类型说明
CHAR(n)定长,最多 255
VARCHAR(n)变长,按实际长度 + 长度前缀
TEXT大文本,不宜直接完整列索引
JSON5.7+;8.0+ 函数索引、多值索引

时间

类型说明
DATE仅日期
DATETIME无时区,推荐默认
TIMESTAMP自动时区转换,2038 上限

相关