数据库
文章平均质量分 50
hulinku
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
MySQL多事务并发控制
MySQL的默认隔离级别是可重复读。若两个事务A和B操作同一资源,A和B都通过begin开启事务后,若A只存在读操作,则B可以对数据进行写操作,且B的写操作不会影响A的读,即A每次读到的内容都是一致的(就算B已经提交)。若A进行了写操作,则B的读操作不受影响,但B的写操作会被阻塞,直到A提交了事务或者到达超时时间。值得注意的是,B可以对另外的行进行写操作,即如果A更改了第一行数据,那B改第原创 2017-12-28 17:12:54 · 3045 阅读 · 0 评论 -
乐观锁和悲观锁
注明: 本文转载自http://www.hollischuang.com/archives/934在数据库的锁机制中介绍过,数据库管理系统(DBMS)中的并发控制的任务是确保在多个事务同时存取数据库中同一数据时不破坏事务的隔离性和统一性以及数据库的统一性。乐观并发控制(乐观锁)和悲观并发控制(悲观锁)是并发控制主要采用的技术手段。无论是悲观锁还是乐观锁,都是人们定义出来的概念,可以认为是一种思想转载 2018-01-01 21:35:57 · 199 阅读 · 0 评论 -
MySQL中的B+Tree索引原理
转自:http://blog.youkuaiyun.com/u013235478/article/details/50625677B+树索引是B+树在数据库中的一种实现,是最常见也是数据库中使用最为频繁的一种索引。B+树中的B代表平衡(balance),而不是二叉(binary),因为B+树是从最早的平衡二叉树演化而来的。在讲B+树之前必须先了解二叉查找树、平衡二叉树(AVLTree)和平衡多路查找树(B-Tr转载 2017-12-28 17:34:53 · 242 阅读 · 0 评论 -
InnoDB和MyISAM区别
区别:1. InnoDB支持事务,MyISAM不支持,对于InnoDB每一条SQL语言都默认封装成事务,自动提交,这样会影响速度,所以最好把多条SQL语言放在begin和commit之间,组成一个事务; 2. InnoDB支持外键,而MyISAM不支持。对一个包含外键的InnoDB表转为MYISAM会失败; 3. InnoDB是聚集索引,数据文件是和索引绑在一起的,必须要有主键,通过主键索引效...转载 2018-03-15 15:39:35 · 200 阅读 · 0 评论 -
MySQL索引详解
什么是索引?1、索引索引是表的目录,在查找内容之前可以先在目录中查找索引位置,以此快速定位查询数据。对于索引,会保存在额外的文件中。2、索引,是数据库中专门用于帮助用户快速查询数据的一种数据结构。类似于字典中的目录,查找字典内容时可以根据目录查找到数据的存放位置,然后直接获取即可。索引由数据...转载 2018-04-02 11:57:58 · 297 阅读 · 0 评论 -
MySQL隔离级别和封锁协议
一直以来对数据库的事务隔离机制的理解总是停留在表面,其内容也是看一遍忘一边。这两天决定从原理上理解它,整理成自己的知识。查阅资料的过程中发现好多零碎的概念如果串起来足够写一本书,所以在这里给自己梳理一个脉络,具体的内容参考引文或在网上搜一下。由于平时接触最多的是MySQL,所以文章中某些部分是MySQL特有的特性,请读者注意。数据库并发操作会引发的问题:多个事务同时访问数据库时候,会发生下列5类问题转载 2018-04-02 12:53:23 · 2490 阅读 · 0 评论 -
正确建立索引以及最左前缀原则
索引建立的原则用于索引的最好的备选数据列是那些出现在WHERE子句、join子句、ORDER BY或GROUP BY子句中的列。仅仅出现在SELECT关键字后面的输出数据列列表中的数据列不是很好的备选列SELECTcol_a <- 不是备选列FROMtbl1 LEFT JOIN tbl2ON tbl1.col_b = tbl2.col_c <- 备选列WHEREcol...转载 2018-09-28 13:54:42 · 545 阅读 · 0 评论
分享