mysql 8.0

阿里云服务器

MySQL 8.0 是一个重要的版本更新,它引入了许多新的特性和改进,使得 MySQL 更加高效、强大和安全。以下是一些 MySQL 8.0 的新特性:

  1. 数据字典:MySQL 8.0 摒弃了 Server Layer 定义的 FRM 文件和其他非事务表,使用了一组 InnoDB 表来保存数据字典,支持事务特性。

  2. Atomic DDL:在 Data Dictionary 支持事务特性的基础上,8.0 增加了一个 DDL log 字典表,用来协调在 DDL 过程中对数据字典、文件系统和事务系统的修改,做到原子性。

  3. 安全性:从 8.0 开始,支持 role 对权限进行便捷管理,以及新增多个系统权限,分别对应新 增了 ROLE_EDGES、GLOBAL_GRANTS 两个系统表;mysql schema 下的涉及权限和用户相关的表 更改成 InnoDB 引擎,支持事务特性,保证了账号管理语句的原子性。

  4. Auto increment 持久化:在 MySQL 8.0 中,Auto increment 列的值可以持久化保存,即使在系统崩溃或重启后也能保持一致。

  5. 死锁检测:MySQL 8.0 增强了死锁检测机制,可以更快速地检测到数据库死锁情况,并采取相应的措施解决死锁问题。

  6. 性能优化:MySQL 8.0 在性能方面进行了大量的优化,包括查询优化、索引优化、线程优化等,使得数据库的整体性能得到显著提升。

  7. 新字符集:MySQL 8.0 默认字符集改为 utf8mb4,避免了在数据库设计时忘记修改默认编码而出现的乱码问题。

  8. DDL原子性:InnoDB表的DDL操作支持事务完整性,即DDL操作要么成功要么回滚。DDL操作回滚日志写入到data dictionary数据字典mysql.innodb_ddl_log中,用于回滚操作。通过设置参数,可将DDL操作日志打印输出到MySQL错误日志中。

总之,MySQL 8.0 是一个非常强大和全面的数据库管理系统,具有许多新的特性和改进,使得它更加高效、可靠和安全。