图解MySQL 1-22 章节相关总结
文章目录
- 1 出现的命令总结
- 2 一句话总结章节的内容
- 3 章节分类
1 出现的命令总结
- max_connections
- kill connection
- wait_timeout
- show processlist
- 查 information_schema 库的 innodb_trx 表
- –skip-grant-tables 参数
- –skip-networking 参数
- set sql_log_bin=off
- query_rewrite.rewrite_rules
- force index
- 慢查询日志(slow log)
- long_query_time
- Rows_examined
- innodb_stats_persistent
- cardinality
- show index
- explain
- analyze table t
- alias
- month()
- CAST
- add index index2(email(6))
- count(distinct email)
- reverse(‘input_id_card_string’)
- innodb_flush_log_at_trx_commit
- innodb_io_capacity
- innodb_max_dirty_pages_pct
- show table status
2 一句话总结章节的内容
一句话总结 | 章节 |
---|---|
由于MySQL统计信息错误或者其他原因,导致SQL语句虽然没有问题,但是MySQL选择的索引和预期不一样,导致性能出现问题,可以通过:analyze table,force index,诱导等方式解决。 | 10. MySQL为什么有时候会选错索引? |
前缀索引、最左前缀原则、倒序存储、哈希存储 | 11. 怎么给字符串字段加索引? |
大部分情况SQL执行没问题,偶尔会很慢,不是SQL没写好的原因,而是数据库在刷脏页。可能是由于redo log写满了或者内存不够而淘汰的内存页中有脏页,都会触发刷脏页操作。 | 12. 为什么我的MySQL会“抖”一下 |
只是delete表,表文件大小不会改变。需要alter table重建表,重建表有两种方式:本地DDL和Online DDL | 13. 为什么表数据删掉一半,表文件大小不变? |
count(*)的实现方式,Redis缓存记录行数的缺点,count(1),count(id), count(字段)区别 | 14. count( * )这么慢,我该怎么办? |
SQL语句中,对字段做函数操作,破坏索引的有序性,导致MySQL放弃走索引搜索树。 | 18. 为什么这些SQL语句逻辑相同,性能却差异巨大? |
等flush,等锁(MDL锁、行锁),字段没索引,字段有索引但是undo log太多 | 19. 为什么我只查一行的语句,也执行这么慢? |
已经上线的MySQL,在业务高峰期,如何临时地提升一下性能。 | 22. MySQL有哪些“饮鸩止渴”提高性能的方法? |
3 章节分类
图解MySQL 1-22 文章分类
Category | Subcategory | Resources |
---|---|---|
索引 | 索引底层实现 | 为什么MySQL数据库要用B+树存储索引?(必看) 4. 深入浅出索引(上) 5. 深入浅出索引(下) 数据结构补充:漫画:什么是B+树? 高频面试题:什么是B树?为啥文件索引要用B树而不用二叉查找树? AVL树 红黑树(简单了解) |
索引优化 | 一条sql执行的很慢的原因有哪些 10. MySQL为什么有时候会选错索引? 11. 怎么给字符串字段加索引? 12. 为什么我的MySQL会“抖”一下? 18. 为什么这些SQL语句逻辑相同,性能却差异巨大? 19. 为什么我只查一行的语句,也执行这么慢? 22. MySQL有哪些“饮鸩止渴”提高性能的方法? | |
索引分类 | 4. 深入浅出索引(上) 5. 深入浅出索引(下) 9. 普通索引和唯一索引,应该怎么选择? | |
其他索引问题 | MyISAM与InnoDB的索引,究竟有什么差异? 都说InnoDB好,那还要不要使用Memory引擎? 自增主键为什么不是连续的? 自增id用完怎么办? | |
事务 | 事务基础问题 | 3. 事务隔离:为什么你改了我还看不见? 8. 事务到底是隔离的还是不隔离的? |
日志相关问题(难点) | 2. 日志:一条SQL更新语句是如何执行的? 8. 事务到底是隔离的还是不隔离的? 20. 幻读是什么,幻读有什么问题? 15. 答疑文章(一):日志和索引相关问题 23. MySQL是怎么保证数据不丢的? | |
锁 | 6. 全局锁和表锁 7. 行锁功过:怎么减少行锁对性能的影响? 19. 为什么我只查一行的语句,也执行这么慢? 21. 为什么我只改一行的语句,锁这么多? |