mysql新特性

5.7新特性

  1. sys库
  2. document store
  3. X protocol
  4. json支持
  5. 空间数据
  6. 虚拟列
  7. query rewrite plugin
  8. 表空间传输
  9. innodb undo表空间
  10. 表空间管理及加密
  11. 在线ddl
  12. 多源复制
  13. 增强半同步
  14. group replication
  15. 基于trace阅读执行计划
  16. 优化器

8.0新特性

  1. 消除了buffer pool mutex
  2. 数据字典全部采用innodb引擎存储,支持DDL原子性,crash safe,元数据管理更完善
  3. 快速在线加新列
  4. 并行redo log,并提升redo log的I/O性能,可在线调整redo log buffer
  5. 新增倒序索引,不可见索引
  6. 优化器增强,增强CBO特性
  7. 支持会话级别set var 动态调整部分参数
  8. 重构SQL分析器
  9. 行锁增加SKIP LOCKED 和 NOWAIT 选项
  10. 新增事务CATS特性
  11. 在线修改undo log 数量
  12. 直方图
  13. 认证插件由sha256改成caching_sha2
  14. 新增role功能
  15. 自增列持久化
  16. 增强json
  17. 增加redo/undo log加密
  18. 增加resource group功能
  19. 新增更多数据字典
  20. 默认字符集改成utf8mb4
  21. 通用表达式CTE
  22. 窗口函数
  23. restart 功能

13期问题

1.mysql有哪些索引,有什么注意的

  存储上分类:btree,hash,r-tree

  功能上分类:主键,唯一索引,普通索引,联合索引,全文索引

  注意事项:

    1.innodb按主键顺序存储

    2.innodb普通索引包含主键

    3.主键,唯一索引等值查询上可以节约一些IO开销

    4.普通索引选择区别度比较大的列创建索引

    5.hash索引只能使用到等值查询

    6.索引不支持‘%like%

    7.索引是左值优先生效

2.innodb有哪些锁,如何排查?

  innodb锁:recored lock,gap lock,next-key lock,inc lock

  排查:show engine innodb status ,information_schmea.innodb_trx

3.对性能影响较大的参数有哪些?

  innodb_buffer_pool_size

  innodb_flush_log_trx_commit

  sync_binlog

  group_commit

  innodb_thread_   (8.0要取消)

  innodb_data_file_path

  innodb_log_file_size

  innodb_log_files_in_group

  innodb_file_per_table

4.数据库慢如何排查?

  1.操作系统层,资源检查,判断 cpu  io  memory

  2.show processlist,innodb_trx 表查看执行语句情况,确定top sql ,分析锁,执行计划等

5.复制延迟高,如何排查?

  1.确定是io_thread 还是 sql_thread 延迟

  2.io_thread延迟检查网络

  3.sql_thread延迟,查看是否有大事务,主库表是否有主键,从库是否开启并行复制

 

posted on 2018-11-01 10:44  Thiefnm  阅读(149)  评论(0编辑  收藏  举报