MySQL版本演进中的重要功能改进及与MariaDB间的版本兼容性对照

这是以前(应该是在2023/07/01之前)简单整理的MySQL重大的功能更新,尤其MariaDB 10.0 以后与MySQL版本号脱钩后,两者的版本号对应,当然,这并不是完全兼容。

--------------------------------------------------------------------------------

MySQL 版本历史,及重要新特性,参考 https://www.markjour.com/article/20210106-mysql-versions.html

2008-11-27 MySQL 5.1,开始支持分区,和主从同步时的行复制(RBR)。
2010-12-03 MySQL 5.5,InnoDB 成为默认引擎(5.5.5 开始),utf8mb4,
2013-02-05 MySQL 5.6,
    重构日期数据类型,支持微秒等;
    EXPLAIN 可用来查看 DELETE,INSERT,REPLACE,UPDATE 等
    分区表增强
2015-10-21 MySQL 5.7
    引入对JSON的支持
    引入了虚拟列,类似于Oracle中的函数索引。
    引入ALTER USER命令,可用来修改用户密码,密码的过期策略,及锁定用户等。
    mysql.user表中存储密码的字段从password修改为authentication_string。
2018-04-19 MySQL 8.0
    窗口函数
    新增“隐藏索引”的特性
    默认的认证插件由mysql_native_password更改为caching_sha2_password。
    Grant不再隐式创建用户。 
    移除PASSWORD()函数。这就意味着无法通过“SET PASSWORD ... = PASSWORD('auth_string') ”命令修改用户密码。
    BLOB, TEXT, GEOMETRY和JSON字段允许设置默认值。
2021-10-19 发布的 8.0.27 (Update @ 2021-11-16)


MariaDB 与 MySQL 的不兼容处,可参考 https://mariadb.com/kb/en/mariadb-vs-mysql-compatibility/


MariaDB  5.1-5.1    ~  MySQL 5.1
MariaDB  5.5        ~  MySQL 5.5
MariaDB 10.0        ~  MySQL 5.6
MariaDB 10.1-10.3   ~  MySQL 5.7
MariaDB 10.4-10.11  ~  MySQL 8.0


发表评论

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据