知数堂MySQL学习

MySQL 8部分新特性(8.0.17)

2019-09-26  本文已影响0人  重庆八怪

  1. 同时更改多个用户的时候可能某些成功某些失败。没有原子性
  2. 现在有原子性要么都成功要么都失败。13.1.1
  3. 默认认证插件为caching_sha2_password,性能更好更安全 6.4.1.3
  4. 支持角色 6.2.10
  1. 自增字段修改加入redo 持久化
  2. 如果修改的值大于自增则持久化
  3. innodb_deadlock_detect可以关闭死锁检测
  4. INFORMATION_SCHEMA.INNODB_CACHED_INDEXES可以查看缓存的数据
  5. 支持for update nowait操作
  6. innodb使用mysql的数据字典 14
  7. 临时表存放到ibtmp1目录
  8. 分区表使用native,支持online DDL
  9. mysql系统表和变量现在放到innodb tablespace中叫做mysql.ibd
  10. innodb_undo_log_truncate默认开启
  11. innodb_rollback_segments参数含义,从全局变为每个undo表空间
  12. innodb_max_dirty_pages_pct_lwm参数默认值修改为10
  13. innodb_max_dirty_pages_pct从75增加到90
  14. innodb_auto_lock_mode默认设置为2,自增锁降低
  15. innodb_dedicated_server参数加入,默认是OFF,开启用于自动配置一些参数,包含:

innodb_buffer_pool_size
innodb_log_file_size
innodb_flush_method

  1. INFORMATION_SCHEMA.INNODB_TABLESPACES_BRIEF视图可以查看表空间类型
  2. Innodb支持原子性DDL
  3. SDI加入Serialized dictionary information (SDI) ,除了临时文件和UNDO表空间,其他数据
    文件都包含,SDI 数据是一个容易的表元数据,用于在数据字典损坏的情况下直接从表空间中
    抽取元数据,是压缩格式JSON
  4. redo 记录优化
    开启独占的redo写线程
    用户线程将脏数据写入flush list使用relaxed order
    新参数加入
  innodb_log_wait_for_flush_spin_hwm:定义最大平均日志写入时间
  innodb_log_spin_cpu_abs_lwm:定义最小CPU使用总数
  innodb_log_spin_cpu_pct_hwm:定义最大CPU使用总数

这3个参数需要再研究

  1. innodb_log_buffer_size:可动态修改回收内存
  2. undo 日志对 small LOB data支持 8.0.12
  3. 瞬间增加字段支持,算法为ALGORITHM=INSTANT,优先使用INSTANT算法
  1. 不可见索引
  2. 降序索引
  3. 函数索引
  4. 类型返回检测
    比如c是一个TINYINT UNSIGNED 占用1字节最大255条件使用c < 256 恒成立,如果
    c >= 255转换为c=255
  5. 8.0.16 半连接支持EXISTS子查询
  6. 8.0.17 反半连接支持not in/not EXISTS
  1. 需要配置admin_address为IP值,默认不开启
  2. 需要配置admin_port端口默认33062
  3. 没有连接限制
  4. 需要SERVICE_CONNECTION_ADMIN权限
上一篇 下一篇

猜你喜欢

热点阅读