MySQL数据库高级

MySQL数据库高级

https://github.com/RingoTangs/LearningNote/blob/master/MySQL/MySQL.md
https://www.processon.com/mindmap/610801b47d9c087a20aa3209

1.mySQL的架构分析

2.索引优化分析

索引很重要



3.查询截取分析

4.MySQL锁机制

锁很重要

表锁

加读锁

  • 锁定表之后,能读自己,但无法改自己,也无法读别的表;别的session也能读,

加写锁

案例总结


——————————————————————

表锁分析

行级锁

概括

InnoDB存储引擎由于实现了行级锁定,虽然在锁定机制的实现方面所带来的性能损耗可能比表级锁定会要更高一些,但是在整体并发处理能力方面要远远优于MyISAM的表级锁定的。当系统并发量较高的时候,InnoDB的整体性能和MyISAM相比就会有比较明显的优势了。

InnoDB存储引擎和MyISAM存储引擎最大不同有两点:一是支持事务,二是采用行锁

  • 事务的ACID:

  • 并发事务带来的哪些问题

    • 更新丢失

    • 脏读

    • 不可重复读

    • 幻读

  • 事务的隔离级别

MySQL InnoDB存储引擎的默认支持的隔离级别是REPEATABLE-READ(可重读)

行锁案例

MySQL 5.5版本以后,默认使用InnoDB存储引擎,事务的commint提交默认打开 ————> "set autocommit = 1"

  • 行锁两个SESSION同时対一条记录进行写操作

  • 行锁两个SESSION同时对不同记录进行写操作

  • SESSION1和SESSION2同时对不同的行进行写操作互不影响

行锁分析

优化建议

5.主从复制

posted @ 2021-08-03 21:12  BigMonster85  阅读(54)  评论(0)    收藏  举报