mysql 各个版本重要新特性
mysql 各个版本重要新特性
mysql 5.5:
1、支持online ddl
2、默认存储引擎为innodb
3、引入半同步异步复制(主库在提交事务后,会等待从库反馈收到relay log)
mysql 5.6:
1、支持gtid复制(备库需log_slave_updates=on开启bin log)
2、undo log 独立表空间
3、支持传输表空间(独立表空间),默认表开启独立表空间模式
4、mysql 支持只读模式运行
5、单表分区数支持最多8192,支持分区表与非分区表(表结构相同)之间的分区交换
6、支持基于库的并行复制,支持延迟复制
7、引入slave_master_info、slave_relay_log_info系统表记录主从复制、回放状态信息,之前只通过master.info/relay.info文件记录,增强了主从复制的一致性
mysql 5.7:
1、引入组复制,支持强同步复制
2、引入增强半同步异步复制(主库在提交事务前,会等待从库反馈收到relay log)
3、innodb_buffer_pool_size支持在线修改大小无需重启mysql
4、支持undo tablespace truncate
5、引入sys schema
6、支持基于逻辑时钟的并行复制
7、引入mysql.gtid_executed系统表,gtid 信息的持久化,gtid复制备库可以不开启bin log(log_slave_updates=on)
8、支持json数据类型
mysql 8.0:
1、支持窗口函数、CTE
2、支持DDL原子性,全面支持事务引擎,数据字典废弃了非事务引擎myisam
3、支持新版本自动升级,版本升级不需要手动执行mysql_upgrade
4、恢复支持redo log archiving,优化了一致性备份
5、支持自增列计数器持久化到redo log,服务重启不影响表自增列计数
6、引入参数innodb_deadlock_detect支持关闭死锁检测,在搞并发系统通过关闭死锁检测,依赖innodb_lock_wait_timeout 参数检测死锁可能更高效(关闭死锁检测需谨慎)
7、支持Asynchronous Replication Automatic failover,在一个异步复制通道上可以设置多个复制源,当某个复制源不可用(宕机、网络故障)时,备库在重试超时后可以根据权重重新选择复制源 继续保持数据同步,配合mgr特性增强了容灾能力
8、增强了组复制,修复了一系列bug