![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据库
文章平均质量分 96
Herrt灬凌夜
There is no royal road to learning
Please don't stop believing in yourself.
展开
-
MySQL 锁机制
锁 MyISAM与InnoDB关于锁方面的区别 MyISAM 默认使用的是表级锁,不支持行级锁。 当session1在对A表做读操作时,会对表A上一个读锁(共享锁),此时session2再对表A做读操作是可以正常读取数据的。 当session1在对A表做读操作时,会对表A上一个读锁(共享锁),此时session2再对表A做写操作时,会给表加一个写锁(排它锁),此时发现表A已经被session1上上了读锁,那么session2就会等待表A的读锁释放之后,再给表A上一个写锁,再对表A进行操作。 当sessi原创 2021-10-12 08:27:23 · 57 阅读 · 0 评论 -
MySQL 索引
为什么要使用索引 我们知道数据一般是存储在磁盘中的,我们在查询数据时就需要将磁盘中的数据以块为单位查询到内存中,在进行轮询来进行查找,当然这样非常适合于数据量比较小的表。如果数据量比较大的话,那么我们的查询效率就会变得非常慢,所以我们就需要引入索引,而索引的灵感来自于字典,可以像字典一样通过偏旁部首来精确查找到我们想要字。 存储结构 InnoDB 逻辑存储结构 table space 表在物理存储时会存在单独的表空间中。 seqment 一个表空间中又分为 数据段 和 索引段。 extent 一个段中又原创 2021-10-12 08:26:40 · 72 阅读 · 0 评论 -
MySQL 执行流程
MySQL 执行流程MySQL 查询sql如何执行服务端连接通信类型连接方式通讯协议通讯方式服务端 SQL 执行过程缓存解析器预处理器查询优化器 MySQL 查询sql如何执行 我们在日常开发中经常使用sql去查询数据库数据,但是一条sql是如何去在数据库中执行查询的呢?下面就来聊聊sql在服务端的执行过程。 服务端连接 通信类型 MySQL 在同一个连接中是同步执行的,一个sql发起之后,只有得到服务端响应之后才可以发起下一个sql语句。 想要使用异步,必须发起一个新的连接,但是大量连接会使服务端压力巨原创 2021-09-22 20:15:30 · 165 阅读 · 0 评论