随笔分类 -  MySQL

摘要:SQL 数据定义语言(Data Definition Language,DDL) 用来创建或删除数据库以及表等对象,主要包含以下几种命令: DROP:删除数据库和表等对象 CREATE:创建数据库和表等对象 ALTER:修改数据库和表等对象的结构 数据操作语言(Data Manipulation L 阅读全文
posted @ 2022-03-26 19:09 BearBrick0 阅读(332) 评论(0) 推荐(0) 编辑
摘要:如何实现ACID? 前言 最近在面试,有被问到,MySQL的InnoDB引擎是如何实现事务的,又或者说是如何实现ACID这几个特性的,当时没有答好,所以自己总结出来,记录一下。 事务的四大特性 事务的四大特性ACID分别是,A-原子性(Atomicity),C-一致性(Consistency),I- 阅读全文
posted @ 2022-03-08 21:17 BearBrick0 阅读(79) 评论(0) 推荐(0) 编辑
摘要:并发时常见的死锁及解决方法 死锁是并发系统中常见的问题,同样也会出现在数据库MySQL的并发读写请求场景中。**当两个及以上的事务,双方都在等待对方释放已经持有的锁或因为加锁顺序不一致造成循环等待锁资源,就会出现“死锁”。**常见的报错信息为 Deadlock found when trying t 阅读全文
posted @ 2022-03-08 19:57 BearBrick0 阅读(174) 评论(0) 推荐(0) 编辑
摘要:锁 锁机制 事务与锁是不同的。事务具有ACID( 原子性、一致性、隔离性和持久性),锁是用于解决隔离性的一种机制。事务的隔离级别通过锁的机制来实现。 为了保证数据并发访问时的一致性和有效性,任何一个数据库都存在锁机制。锁机制的优劣直接影响到数据库的并发处理能力和系统性能,所以锁机制也就成为了各种数据 阅读全文
posted @ 2022-03-08 19:54 BearBrick0 阅读(60) 评论(0) 推荐(0) 编辑
摘要:索引 索引(Index)是什么?为什么要使用索引? 索引是提高数据库性能的重要方式,用来快速找出数据表中的特定记录。如果在表中查询的列有一个索引,MySQL 能快速到达一个位置去搜寻数据,而不必查看所有数据。一个表可以创建多个索引,一个索引可以包含一个或者多个字段。 从表面上看,索引类似于书的目录, 阅读全文
posted @ 2022-03-08 19:30 BearBrick0 阅读(102) 评论(0) 推荐(0) 编辑
摘要:事务 当多个用户访问同一数据时,一个用户在更改数据的过程中可能有其它用户同时发起更改请求,为保证数据的一致性状态,MySQL 引入了事务。 在银行业务中,有一条记账原则,即有借有贷,借贷相等。为了保证这种原则,每发生一笔银行业务,就必须确保会计账目上借方科目和贷方科目至少各记一笔,并且这两笔账要么同 阅读全文
posted @ 2022-03-08 16:00 BearBrick0 阅读(242) 评论(0) 推荐(0) 编辑
摘要:索引优化 索引结构 要搞明白这个问题,需要大家首先明白 MySQL 中索引存储的数据结构。这个其实很多小伙伴可能也都听说过,B+Tree 嘛! B+Tree 是什么?那你得先明白什么是 B-Tree,来看如下一张图: 前面是 B-Tree,后面是 B+Tree,两者的区别在于: B-Tree 中,所 阅读全文
posted @ 2022-03-06 18:59 BearBrick0 阅读(1334) 评论(0) 推荐(1) 编辑
摘要:为什么 MySQL 使用 B+树 - 知乎 (zhihu.com) 首先需要澄清的一点是,MySQL 跟 B+ 树没有直接的关系,真正与 B+ 树有关系的是 MySQL 的默认存储引擎 InnoDB,MySQL 中存储引擎的主要作用是负责数据的存储和提取(从我们的磁盘中),除了 InnoDB 之外, 阅读全文
posted @ 2022-03-06 12:56 BearBrick0 阅读(284) 评论(0) 推荐(0) 编辑
摘要:为什么要知道MySQL的执行过程呢?是因为我们要对sql语句进行优化。这个是很要必要的。 客户端发送一条查询给服务器。 服务器先检查查询缓存,如果命中了缓存,则立刻返回存储在缓存中的结果。否则进入下一阶段。 服务器端进行SQL解析,预处理,再由优化器生成对应的执行计划。 MySQL根据优化器生成的执 阅读全文
posted @ 2022-02-26 23:33 BearBrick0 阅读(199) 评论(0) 推荐(0) 编辑
摘要:SQL查询语句先执行SELECT? SELECT 语句的完整语法,如下: SELECT DISTINCT <select_list> FROM <left_table> <join_type> JOIN <right_table> ON <join_condition> WHERE <where_c 阅读全文
posted @ 2022-02-26 23:30 BearBrick0 阅读(112) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示
主题色彩