
Mysql相关
文章平均质量分 65
xiaobai___1
这个作者很懒,什么都没留下…
展开
-
一条SQL查询语句的执行顺序
SQL常用字段执行顺序原创 2024-04-08 22:59:33 · 423 阅读 · 0 评论 -
MySQL的锁的类型
乐观锁与悲观锁、全局锁、表级锁、页级锁和行级锁、共享锁与排它锁、间隙锁与临键锁原创 2024-03-19 23:56:00 · 413 阅读 · 0 评论 -
MySQL主键采用什么结构?为什么要自增?为什么用int?
MySQL主键通常采用的是自增的整数类型结构。MySQL主键需要自增主要是为了保证插入性能优化以及数据聚簇。MySQL主键通常使用int类型是因为它足够高效且空间占用小。原创 2024-03-15 21:46:08 · 985 阅读 · 0 评论 -
乐观锁与悲观锁
乐观锁的核心思想是“乐观”,它假设在数据处理过程中,冲突发生的概率较低。因此,乐观锁不会在事务开始时就锁定数据,而是在数据提交时检查是否有其他事务修改过这些数据。如果数据未被修改,则事务可以成功提交;如果数据被其他事务修改了,则当前事务需要重新执行或放弃。乐观锁通常通过版本号(version)或时间戳(timestamp)来实现,每次更新数据时,版本号或时间戳都会相应地增加。这样,当事务尝试更新数据时,它会检查版本号或时间戳是否与开始时相同,如果不同则说明数据已被其他事务修改。原创 2024-03-12 23:57:57 · 1724 阅读 · 0 评论 -
B树和B+树的区别是什么?
B+树通过将数据全部存储在叶子节点,并且通过指针将这些叶子节点连接起来,提高了区间访问和全表扫描的效率,这也是为什么MySQL等数据库系统通常选择B+树作为索引结构的原因。而B树虽然在非叶子节点上可以直接访问到数据,但在大数据量的情况下,其查询效率和空间利用率不如B+树。原创 2024-03-05 23:57:34 · 712 阅读 · 0 评论 -
了解MVCC的实现吗 ?(隐式字段,ReadView,undo log)
MVCC即多版本并发控制,它的实现原理主要依赖于记录中的隐藏字段、undo log(回滚日志)以及Read View(读视图)。原创 2024-03-05 21:46:27 · 945 阅读 · 0 评论 -
谈谈mysql 的日志?binlog 和 redo log 有什么区别?
MySQL数据库中有多种日志,其中最重要的是二进制日志(binlog)、重做日志(redo log)和回滚日志(undo log)。这些日志在数据库操作中起着至关重要的作用,不仅保证了数据的安全性和完整性,还对性能优化和故障恢复提供了支持。具体如下:原创 2024-03-04 23:52:56 · 774 阅读 · 0 评论 -
谈一谈mysql的删除操作 DELETE、TRUNCATE和DROP
在使用这些删除操作时,需要特别注意以下几点:安全性:确保在执行删除操作前明确数据范围,必要时先备份数据以防误删。空间管理:了解不同存储引擎对空间的处理方式,如有必要可以使用OPTIMIZE TABLE来回收空间。效率考量:根据需要删除的数据量选择适当的命令,比如对于大量数据的删除,TRUNCATE可能更高效。原创 2024-03-04 23:30:09 · 2042 阅读 · 0 评论 -
超详细多表查询详解-多表关系-多表查询-子查询
内连接的语法分为两种: 隐式内连接、显式内连接原创 2024-03-03 23:59:46 · 1982 阅读 · 0 评论 -
五千字 DDL、DML、DQL、DCL 超详解
DDL (Data Definition Language) 数据定义语言,用来定义数据库对象(数据库,表, 字段)DML (Data Manipulation Languag) 数据操作语言,用来对数据库表中的数据进行增删改DQL (Data Query Language) 数据查询语言,用来查询数据库中表的记录DCL (Data Control Language) 数据控制语言,用来创建数据库用户、控制数据库的访问权限原创 2024-03-03 22:37:00 · 5989 阅读 · 0 评论 -
什么样的场景适合加索引,什么场景不适合加索引,索引失效的场景
主键字段:主键字段通常会自动创建索引,因为它们用于唯一标识表中的每一行,这有助于提高查询效率。外键字段:外键字段用于建立表之间的关系,对这些字段建立索引可以提高连接操作的效率,通常是一个表中的字段与另一个表中的主键字段关联.原创 2024-03-01 23:36:22 · 1185 阅读 · 0 评论 -
事务的特性 ACID
事务的特性 ACID原创 2024-02-22 00:38:07 · 543 阅读 · 1 评论 -
什么情况下索引会失效? 最左匹配法则
在设计复合索引和编写查询语句时,应考虑到这一原则,以确保索引能够发挥最大的效能。二, 模糊查询,如果%号在前面也会导致索引失效。如果在添加索引的字段上进行了运算操作或者类型转换也都会导致索引失效。所以,通常情况下,想要判断出这条sql是否有索引失效的情况,可以使用explain执行计划来分析。三, 如果使用了复合索引,中间使用了范围查询,右边的条件索引也会失效。四, 不要在索引上进行运算操作, 索引会失效。一, 索引在使用的时候没有遵循最左匹配法则。五, 字符串不加单引号,造成索引失效.原创 2024-02-21 23:42:44 · 657 阅读 · 0 评论 -
MYSQL 回表查询
聚集索引的叶子节点存储的是完整的数据行,而普通索引的叶子节点存储的是该行数据的主键值。当进行查询时,如果使用了普通索引,且查询所需的字段不全都包含在索引中,数据库就需要通过索引找到对应的主键值,然后再通过主键值到聚集索引中查找完整的数据行,这个过程就是所谓的“回表查询”。总的来说,了解回表查询的概念对于优化数据库性能是非常重要的,开发者在设计索引和编写查询语句时应该尽量避免不必要的回表操作,以提高查询效率。此时name列的B+树存储的数据为当前列数据(name这一列)和主键列数据(id)原创 2024-02-21 18:28:37 · 634 阅读 · 0 评论