PolarDB for MySQL 是阿里云推出的一款兼容 MySQL 协议的云原生数据库,它在保持与 MySQL 高度兼容的同时,进行了性能优化和功能增强。PolarDB 的 MySQL 版本(目前支持 MySQL 5.6、5.7 和 8.0)支持绝大多数标准的 MySQL 特性,并在此基础上扩展了部分高级功能。
以下是 PolarDB for MySQL 支持的主要 MySQL 核心特性及增强功能:
✅ 一、标准 MySQL 功能支持
-
SQL 语法兼容
- 完全兼容 MySQL 的 SQL 语法,包括 DDL、DML、DCL。
- 支持常用函数(字符串、数值、日期时间、聚合等)。
-
存储引擎
- 使用自研的 PolarFS + 分布式存储架构,底层采用类似 InnoDB 的事务存储引擎,提供 ACID 保证。
- 兼容 InnoDB 表引擎的所有特性(如行级锁、MVCC、外键、事务等)。
- 不支持 MyISAM、Memory 等非事务引擎。
-
事务支持
- 支持完整的事务(BEGIN/COMMIT/ROLLBACK)。
- 支持隔离级别:READ UNCOMMITTED、READ COMMITTED、REPEATABLE READ、SERIALIZABLE。
- 默认使用 REPEATABLE READ(MySQL 5.7 及之前),MySQL 8.0 默认为 REPEATABLE READ,但可配置。
-
索引支持
- 支持主键、唯一索引、普通索引、前缀索引、全文索引(仅限 InnoDB,MySQL 5.7+)、空间索引(MySQL 5.7+)。
- 支持在线 DDL(ALTER TABLE 不阻塞读写,基于 MySQL 5.7+ 的 Online DDL 特性)。
-
JSON 支持
- MySQL 5.7 及以上版本支持 JSON 数据类型和相关函数(JSON_EXTRACT, JSON_SET 等)。
- 支持对 JSON 字段创建虚拟列并建立索引。
-
字符集与排序规则
- 支持 utf8mb4、utf8、gbk、latin1 等常见字符集。
- 推荐使用
utf8mb4+utf8mb4_unicode_ci或utf8mb4_bin。
-
用户权限管理
- 支持 GRANT/REVOKE,用户、角色管理。
- 支持 SSL 连接、IP 白名单等安全控制。
-
复制与高可用
- 基于共享存储的主从架构(一个主节点,最多 15 个只读节点)。
- 数据强一致,无需传统异步复制。
- 故障自动切换(秒级 Failover)。
-
备份与恢复
- 自动快照备份(基于 PolarFS 快照技术)。
- 支持按时间点恢复(PITR)。
- 备份不影响主库性能。
-
分区表
- 支持 RANGE、LIST、HASH、KEY 分区。
- 支持子分区(MySQL 5.7+)。
- 支持在线添加/删除分区。
✅ 二、PolarDB 增强特性(超越原生 MySQL)
-
计算与存储分离
- 存储基于共享的分布式文件系统 PolarFS,计算节点无状态。
- 存储容量可弹性扩展(最高可达 100TB)。
-
高性能 I/O
- 利用 RDMA 网络和内核旁路技术,降低延迟。
- 提升 OLTP 性能,尤其适用于高并发场景。
-
多读节点扩展
- 最多支持 15 个只读节点,实现读能力水平扩展。
- 读节点与主节点共享同一份存储,数据延迟极低(毫秒级)。
-
并行查询(Parallel Query)
- 对大表扫描类查询支持并行执行,显著提升分析型查询性能(需开启参数)。
-
全局一致性快照
- 所有节点共享存储,保证任意节点读取的数据是全局一致的。
-
Serverless 模式(PolarDB Serverless)
- 支持根据负载自动扩缩容计算资源,节省成本。
-
HTAP 能力(通过列存索引)
- 支持创建列存索引(Columnar Index),用于提速复杂分析查询。
- 实现一份数据同时支持 OLTP 和 OLAP 场景(需企业版或特定版本支持)。
-
跨区域灾备
- 支持跨可用区部署,以及跨地域复制(DR),保障业务连续性。
-
智能运维
- 自动诊断、性能洞察、SQL 审计、慢查询分析等。
❌ 三、不支持或受限的功能
-
不支持插件式存储引擎
- 如 MyISAM、TokuDB、RoaringBitmap 等非 InnoDB 引擎不可用。
-
临时表限制
- 临时表仅存在于会话本地,不支持复制到只读节点(行为与原生 MySQL 一致)。
-
部分系统表只读
- performance_schema、information_schema 多数为只读视图。
-
自定义配置有限制
- 部分 MySQL 参数不可修改(出于稳定性考虑)。
-
不支持本地磁盘存储
- 所有数据必须存储在 PolarFS 上,无法使用本地 SSD。
✅ 四、版本支持情况
| PolarDB MySQL 版本 | 对应 MySQL 版本 | 主要特性 |
|---|---|---|
| 5.6 | MySQL 5.6 | 基础事务、分区、基础复制 |
| 5.7 | MySQL 5.7 | JSON、在线 DDL、并行查询、GTID |
| 8.0 | MySQL 8.0 | CTE、窗口函数、隐藏索引、原子 DDL、角色管理 |
注:推荐使用 MySQL 8.0 版本以获得最新特性和性能优化。
总结
PolarDB for MySQL 在保持与 MySQL 高度兼容的基础上,提供了:
- 更高的性能(I/O、并发)
- 更强的扩展性(读节点、存储弹性)
- 更高的可用性(自动故障转移、备份恢复)
- 更丰富的云原生功能(Serverless、HTAP、并行查询)
适合需要高并发、高可用、易扩展的企业级应用场景。
📌 建议:具体功能支持请参考阿里云官方文档:
👉 https://help.aliyun.com/product/68825.html
如需使用特定功能(如列存索引、并行查询),请确认实例版本和规格是否支持。
CLOUD技术笔记