一、锁介绍 不同存储引擎支持的锁是不同的,比如MyISAM只有表锁,而InnoDB既支持表锁又支持行锁。 下图展示了InnoDB不同锁类型之间的关系: 图中的概念比较多不好理解,下面依次进行说明。 1.1乐观锁 ? 乐观锁是相对悲观锁而言的,乐观锁假设数据一般情况下不会造成冲突,所在在数据进行提交更 ...
分类:
数据库 时间:
2020-11-11 16:49:56
阅读次数:
27
一、存储引擎 1.什么是存储引擎? 库就是文件夹,表就是文件,文件都会有文件的格式,存储引擎就是文件格式. 存储引擎就是文件的类型(格式),文本文件有TXT类型、图片有JPG类型、视频有MP4格式. mysql中最常用的是InnoDB存储引擎(格式) 2.使用存储引擎 1 # 创建表是指定存储引擎 ...
分类:
数据库 时间:
2020-11-11 16:30:14
阅读次数:
15
继续回答水友提问(最近问MySQL的多):沈老师,我在网上看到不同的资料,有的说InnoDB支持哈希索引,有的说不支持,到底哪个是正确的呢?对于InnoDB的哈希索引,确切的应该这么说:(1)InnoDB用户无法手动创建哈希索引,这一层上说,InnoDB确实不支持哈希索引;(2)InnoDB会自调优(self-tuning),如果判定建立自适应哈希索引(AdaptiveHashIndex,AHI)
分类:
数据库 时间:
2020-11-10 11:34:19
阅读次数:
18
继续回答星球水友提问:沈老师,MyISAM只支持表锁,但网上文章却说,在并发插入量比较大的时候,比较适合使用MyISAM,这矛盾吗?这个问题,涉及MySQL表锁的一些细节,借着这个问题,系统性说下表锁的“所以然”。画外音:网上不少文章只说结论,不说为什么,容易让人蒙圈。MySQL表锁知识系统性梳理。哪些存储引擎使用表锁?MySQL,除InnoDB支持行锁外,MySQL的其他存储引擎均只使用表锁,例
分类:
数据库 时间:
2020-11-10 11:33:20
阅读次数:
13
继续回答星球水友提问:沈老师,我听网上说,MySQL数据表,在数据量比较大的情况下,主键不宜过长,是不是这样呢?这又是为什么呢?这个问题嘛,不能一概而论:(1)如果是InnoDB存储引擎,主键不宜过长;(2)如果是MyISAM存储引擎,影响不大;先举个简单的栗子说明一下前序知识。假设有数据表:t(idPK,nameKEY,sex,flag);其中:(1)id是主键;(2)name建了普通索引;假设
分类:
数据库 时间:
2020-11-10 11:33:03
阅读次数:
12
上篇《缓冲池(bufferpool),彻底懂了!》介绍了InnoDB缓冲池的工作原理。简单回顾一下:(1)MySQL数据存储包含内存与磁盘两个部分;(2)内存缓冲池(bufferpool)以页为单位,缓存最热的数据页(datapage)与索引页(indexpage);(3)InnoDB以变种LRU算法管理缓冲池,并能够解决“预读失效”与“缓冲池污染”的问题;画外音:细节详见《缓冲池(bufferp
分类:
其他好文 时间:
2020-11-10 11:28:25
阅读次数:
7
Xtrabackup物理备份工具,备份MySQL5.6.36(一)Xtrabackup工具简介percona公司的备份工具,性能比较高。物理备份工具。特点:物理备份工具,在同级数据量基础上,都要比逻辑备份性能要好的多。特别是在数据量比较大的时候,体现的更加明显。备份方式:1、拷贝数据文件(myisam存储引擎可以直接cp拷贝,但是innodb的不行)2、拷贝数据页备份原理(innodb):1、对于
分类:
数据库 时间:
2020-11-06 02:41:00
阅读次数:
30
Mysql中的行级锁、表级锁、页级锁在计算机科学中,锁是在执行多线程时用于强行限制资源访问的同步机制,即用于在并发控制中保证对互斥要求的满足。在数据库的锁机制中介绍过,在DBMS中,可以按照锁的粒度把数据库锁分为行级锁(INNODB引擎)、表级锁(MYISAM引擎)和页级锁(BDB引擎)。行级锁行级锁是Mysql中锁定粒度最细的一种锁,表示只针对当前操作的行进行加锁。行级锁能大大减少数据库操作的冲
分类:
数据库 时间:
2020-11-01 21:37:12
阅读次数:
26
引言好久没写文章了,今天回来重操旧业。毕竟现在对后端开发的要求越来越高,大家要做好各种准备。因此,大家有可能遇到如下问题为什么Mysql中Innodb的索引结构采取B+树?回答这个问题时,给自己留一条后路,不要把B树喷的一文不值。因为网上有些答案是说,B树不适合做文件存储系统的索引结构。如果按照那种答法,自己就给自己挖了一个坑,很难收场。因此,就有了这篇文章的诞生~文末附面试指南!正文这里的Mys
分类:
数据库 时间:
2020-11-01 21:08:42
阅读次数:
31
引言照例,我们先来一个场景~面试官:"知道事务的四大特性么?"你:"懂,ACID嘛,原子性(Atomicity)、一致性(Consistency)、隔离性(Isolation)、持久性(Durability)!"面试官:"你们是用mysql数据库吧,能简单说说innodb中怎么实现这四大特性的么?“你:"我只知道隔离性是怎么做的balab
分类:
数据库 时间:
2020-11-01 21:01:50
阅读次数:
26