mysql
文章平均质量分 69
Survivor001
这个作者很懒,什么都没留下…
展开
-
【Mysql】 InnoDB引擎深入- 内存结构之ChangeBuffer | Log Buffer
ChangeBufferChangeBuffer是InsertBuffer 的升级版本,InsertBuffer主要是针对insert 操作进行缓存,而ChangeBuffer是针对 insert、update、delete 操作都进行缓存。ChangeBuffer是InnoDB引擎中比较关键的特性功能。它是一种特数据的数据结构。通过之前的学习,我们知道,当DML数据时,并不是直接去写入磁盘,而是先判断再缓冲池中判断是否有该页,如果有则直接修改(后续通过checkpoint刷新到磁盘中)。如果缓冲池中不存在原创 2022-06-24 16:56:22 · 273 阅读 · 0 评论 -
【Mysql】 InnoDB引擎深入- 内存结构之Buffer Pool缓冲池
缓冲池是InnoDB内存结构中比较重要的结构,主要目的就是解决CPU速度与磁盘速度之间的鸿沟,从而提高整体的性能。缓冲池其实就是一块内存区域,在数据库进行数据读取时,会将从磁盘读取到的数据页缓存到缓冲池中,下一次再读取到相同的页时,首先就先判断缓冲池中是否有命中的缓存页,如果有就直接读取,没有再去磁盘读取。所以缓存页的命中率也是优化的一个手段。 当数据发生改变时,首先会修改缓存池中的页,然后通过Master Thread线程以一定的频率刷新到磁盘中,需要注意的是,并不是修改了一个页就会刷新到磁盘中,这里需原创 2022-06-24 16:52:26 · 358 阅读 · 0 评论 -
【Mysql】 InnoDB引擎深入- InnoDB后台线程
下图是简单的一个InnoDB体系架构图,InnoDB存储引擎有多个内存快组成的内存池,负责如下工作:维护所有进程|线程需要访问的多个内部数据结构。缓存磁盘上的数据,方便快速的读取,同时在对磁盘文件的数据进行修改之前在这里进行缓存。重做日志..... 后台线程的主要目的就是负责刷新内存池中的数据,保证缓冲池中的缓存数据时最近的数据。此外将已经修改的数据文件刷新到磁盘文件,同时保证在数据库发生异常情况下InnoDB能恢复到正常状态。核心线程如下:Master原创 2022-06-24 16:47:19 · 393 阅读 · 0 评论 -
【Mysql】 InnoDB引擎深入- 行溢出
知识点介绍:ascii字符集: n/1 (一个字符代表一个字节)gbk字符集: n/2utf8字符集: n/3 对于可变长度列最大存储长度为65535个字节(64kb),也就是说一行数据最大长度就是65535个字节,但是由于上面介绍过行格式中还存在其他相关信息的存储,例如null值、回滚指针的信息,所以最大长度为65535-2 个字节。 如果在ascii字符集下,也就是一行最多可以存储65532个字符; 在gbk字符集下65532/2字符; 在utf8字符集下65532/3字符; 根据数据页了解我们原创 2022-06-24 16:35:50 · 610 阅读 · 0 评论 -
【Mysql】 InnoDB引擎深入- 行格式
前面已经介绍了InnoDB的数据页结构,我们已经了解了InnoBD种数据和索引的存储结构以及页的概念。现在我们知道了数据库数据是以行存储在页种user record中的,那么现在就来了解下表的行格式。存储引擎支持四种行格式:、、 和,默认DYNAMIC表 14.9 InnoDB 行格式概述当前引擎中默认行格式为DYNAMIC(动态的),几种行格式基础格式差异不大,根据官网描述:那我们就直接看下COMPACT 行格式:我们向数据库插入一条数据,那么这条数据在磁盘上的存储格式是什么样的呢?大致介绍下相关内容:1原创 2022-06-24 16:30:23 · 357 阅读 · 0 评论 -
【Mysql】 InnoDB引擎深入- 二级索引、联合索引、回表、索引覆盖
接着上面文章内容对数据页的详细介绍以及聚集索引原理的了解【Mysql】 InnoDB引擎深入 - 数据页 | 聚集索引,有了这个知识前提,对了解二级索引、联合索引等相关内容的理解就变得非常简单了。二级索引(又名辅助索引、普通索引、非聚集索引),叶子节点不包含行记录的全部数据。叶子节点除了键值(索引建)之外,每个叶子节点中还包含了一个书签,该书签就是用来告诉引擎哪里可以找到该条记录的所有行数据,在InnoDB中该书签就是聚集索引建一般来说也就是聚集索键。 通俗来说,二级索引跟聚集索引有着一样的树原创 2022-06-24 16:19:53 · 696 阅读 · 0 评论 -
【Mysql】 InnoDB引擎深入 - 数据页 | 聚集索引
【Mysql】 InnoDB引擎深入 - 数据页 | 聚集索引原创 2022-06-24 16:12:45 · 658 阅读 · 1 评论 -
【Mysql】 InnoDB引擎 - 介绍
【Mysql】 InnoDB引擎 - 介绍原创 2022-06-24 16:00:20 · 583 阅读 · 0 评论 -
Mysql 优化数据库查询效率
mysql慢sql问题定位和优化 :Mysql优化 数据库查询效率转载 2022-05-20 09:43:05 · 80 阅读 · 0 评论 -
Mysql order by 和 group by索引优化
核心:order by 和 group by是将where 条件查出来的数据进行排序和分组(其实分组实质上是先排序,然后将排好序的数据进行分开) 同时还应知道,通过索引查询出来的数据是按照索引排好顺序的。 order by 和 group by什么时候会出现Using filesort ?不会出现Using filesort的情况 : 通过where条件查询出的数据,如果按照order by进行排序的话,本来就是有序的; 会出现Using filesort的情况 : 通过where条件查原创 2022-05-08 20:50:37 · 419 阅读 · 0 评论 -
Mysql管理sql
这里是针对Mysql5.6版本的。阿里云的服务器。1. 数据库连接:mysql -u root -p输入密码:***2. 查看数据库show databases;3. 我们用户信息都是在mysql库中。切换数据库到mysql;use mysql;4. 查看当前用户以及权限相关信息; 简单信息:select user,host from user; 全部信息:select * from user \G;5. 创建用...原创 2021-11-03 13:47:48 · 61 阅读 · 0 评论