![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Mysql
文章平均质量分 89
先熬半个月
这个作者很懒,什么都没留下…
展开
-
mysql文章导航
一、狸猫技术窝的mysql专栏总结(10篇)(该系列需要会sql的基本操作)1、mysql(一)2、mysql(二) Buffer Pool(缓冲池)的内部结构3、Mysql(三)数据在磁盘上的存储结构(mysql物理数据结构)4、mysql(四)redo log5、mysql(五)undo log日志、mysql事务6、mysql(六)锁机制7、mysql (七)索引及查询原理8、mysql(八)执行计划9、mysql(九)explain+案例分析10、mysq原创 2021-04-30 11:40:07 · 235 阅读 · 0 评论 -
牛客sql
一、查找最晚入职员工的所有信息描述有一个员工employees表简况如下:请你查找employees里最晚入职员工的所有信息,以上例子输出如下:最优解法select * from employees where hire_date = (select max(hire_date) from employees);当然会有order by排序后,用limit获取第一个元素,但这必须要在没有相同数据的情况下才可以学习:select 后要查询出聚合函数+字段..原创 2022-01-26 14:11:20 · 734 阅读 · 0 评论 -
Mysql复习
一、一条sql执行的步骤1、连接mysql服务端先在程序中加入mysql驱动依赖(用于连接mysql)注意:此时在客户端和mysql服务端,都存在各自的数据库连接池,主要用来限制和管理连接。客户端的连接池常见有DBCP、C3P0、Druid。2、mysql接收sql语句,并进行解析客户端通过连接发送sql语句到mysql,mysql有专门的线程监听sql请求,然后将sql传给SQL接口,由于此时这些语句mysql不能进行识别,所以需要sql解析器将sql语句进行解析。3、选择最原创 2021-12-28 13:25:44 · 697 阅读 · 0 评论 -
mysql DBA(五)innodb引擎
其中innodb就是图中的存储引擎。一、表空间、buffer pool、压缩表1、页在磁盘的数据文件中称为数据页,在mysql内存中称为缓存页。不过大小一般都是16k。页是IO交互的最小单位。(在磁盘文件和buffer pool交互的最小单位)可以对页的大小进行压缩,KEY_BLOCK_SIZE=4就是压缩为4k,此时这张表就是压缩表。但不是压缩的越低就越好,不同的场景压缩越低其指标不一样。row offset array:有序的存放指向各个row的指针...原创 2021-09-24 16:21:29 · 331 阅读 · 0 评论 -
mysql DBA(四)基准性能测试
一、磁盘类型和IOPS性能指标磁盘的访问模式:这里的顺序访问表示的是逻辑的顺序访问。硬盘又分机械硬盘和固态硬盘(SSD)。机械盘和固态盘的性能相差是很大的,性能相差几百倍。所以mysql尽量的使用ssd硬盘。1、机械硬盘:一般吞吐率(带宽)是用来衡量这个盘的顺序访问性能,IOPS用来衡量其随机访问性能。而mysql一般使用在oltp场景,所以随机访问的操作比较多。IOPS:有些厂商用上面的图表示IOPS,我们可以计算第一个的IOPS=48*1024...原创 2021-09-16 17:56:54 · 377 阅读 · 0 评论 -
mysq DBA(三)调优:sql执行计划
一、索引主键索引:每个表只能有一个唯一索引:字段的值是唯一的索引普通索引:普通字段的索引。索引底层是B+树结构的索引,mysql会对索引字段的值进行排序,排序完只会查询的速度才会很快。索引定义:一张表上可以有多个索引,指定后会对索引字段进行排序,排序的目的即为了快速的查询。B+树的缺点:插入时要对索引字段进行排序维护,维护代价比较大。1、B+Treemysql对数据储存是以页/块为基础的,其中叶子节点是有序的,且叶子节点之间是双向链表。B+树进行查找后,只能找到数.原创 2021-09-16 12:26:20 · 918 阅读 · 0 评论 -
mysq DBA(二)sql编程
一、数据类型、常用函数、编码一、数据类型数据类型主要分为5个类型:整型、1、INT类型具体有TINYINT(1字节)、SMALLINT(2)、MEDIUMINT(3)、INT(4)、BIGINT(8)常用的是INT类型,而且每个整型类型都有一个有符号(Signed)和无符号(UnSigned)类型,分别代表不同大小。例如我们现在创建一个z表,里面有个字段为a且其符号类型为无符号、另一个字段b为tinyint类型且有符号:create table z ( a int unsi.原创 2021-09-10 14:52:50 · 935 阅读 · 0 评论 -
Mysql DBA(一)
一、官方文档1、文档地址:https://dev.mysql.com/doc/可以对相应的命令、功能进行搜索2、下载https://www.mysql.com/downloads/进去开源版本的页面后:社区版和企业版的区别:原创 2021-09-04 16:06:39 · 1427 阅读 · 0 评论 -
mysql(十)主从、高可用
一、mysql的主从复制架构一、为什么要搭建mysql的主从复制架构aa原创 2021-04-30 11:29:00 · 701 阅读 · 1 评论 -
mysql(九)explain+案例分析
一、explaina原创 2021-04-29 17:47:51 · 381 阅读 · 0 评论 -
mysql(八)执行计划
aa原创 2021-04-28 14:43:17 · 269 阅读 · 0 评论 -
mysql (七)索引及查询原理
在说索引之前,我们需要先知道大量的数据页是怎么在磁盘中存储的。首先需要明白的是,大量的数据页是按顺序一页一页存放的,然后两两相邻的数据页直接采用双向链表的格式互相引用。大致如下图:啊啊...原创 2021-04-26 15:47:10 · 1002 阅读 · 0 评论 -
mysql(六)锁机制
这里的锁机制,在专栏中讲的不是很仔细,后面自己再自行补充。我们之前说过并发事务下会有脏写的问题,那么这个脏写是靠什么来防止的?——————其实靠的就是锁机制。依据锁机制可以讲多个事务更新同一行数据时串行化,这样可以避免同时更新一行数据。(如果单独执行一行sql,mysql会自动为其加上事务)举例:现在有一行数据,此时没有任何事务用它。此时事务A进来更新这行数据。此时事务A会创建一个锁,里面包含自己的trx_id和等待状态(false是非等待,即获取到相应的资源了),然后将这把锁..原创 2021-04-22 16:47:17 · 170 阅读 · 0 评论 -
mysql(五)undo log日志、mysql事务
一、undo log 日志主要作用:用来回滚事务。假设我们现在开启一个事务,然后执行4个sql语句,当我们执行完两个sql后,此时还剩两个sql没执行,此时我不行执行了想回滚事务,那么就要将那两个sql修改的值修改为原先的值。此时就需要undo log日志文件了。这个回滚日志其实记录的东西是比较简单的,比如你在缓存页种执行了一个insert语句,此时你在日志里就会记录insert语句的一些信息。如果需要回滚则执行该insert语句的逆向恢复delete操作即可。同样的道理,update原创 2021-04-21 14:34:39 · 530 阅读 · 0 评论 -
mysql(四)redo log
啊啊啊原创 2021-04-20 14:06:06 · 474 阅读 · 0 评论 -
Mysql(三)数据在磁盘上的存储结构(mysql物理数据结构)
上文mysql(二)中主要对buffer pool的内存结构进行说明,这篇对数据页等在磁盘上的存储结构进行说明。之前对于mysql存储结构的一些表空间、区(数据区)、数据页等概念进行说明。一、一行数据在磁盘中的存储形式1、这里先提一个问题:为什么要引入数据页的概念?————如果每次buffer pool从磁盘随机读取数据、buffer pool随机写数据到磁盘。这两个过程数据的交换都是每次交换一行数据,那么这样明显是效率不高的。所以需要适当的加大每次交互的数据量,所以引进了数据页的概.原创 2021-04-19 14:23:12 · 2828 阅读 · 0 评论 -
mysql(二) Buffer Pool(缓冲池)的内部结构
上一篇mysql(一) 中以一个update语句为例简单的介绍了innodb的大体结构,然而还是存在很多细节问题的,就如上一篇文末提及的几个问题。该篇主要对于InnoDB进行比较详细的分析一、Buffer Pool (缓冲池)1、啊...原创 2021-04-16 17:10:05 · 1305 阅读 · 0 评论 -
mysql(一)
该系列参考狸猫技术窝《从零开始带你成为MySQL实战优化高手》对于mysql可以看成是一个由编程语言写的一个数据管理系统,每次执行sql会调用该系统的接口代码,然后系统会将数据存到内存或者硬盘中。一、一条sql语句大概的执行步骤1、mysql驱动每次我们在需要连接数据库都需要添加相应的数据库驱动,以mysql为例,会在pom文件中添加mysql的驱动依赖<!--mysql驱动包--><dependency> <groupId>mysq.原创 2021-04-08 16:12:57 · 666 阅读 · 1 评论 -
是时候谈谈mysql的事务和锁
666666原创 2020-05-29 00:33:20 · 193 阅读 · 0 评论 -
一篇看透Mysql索引及优化
这里讲mysql的索引、原理、优化1、什么是索引呢?说一个大家可以经常听到的例子:我们去磁盘拿数据就像去书里找某个知识点,你可以选择一页一页翻,但那是非常耗时的。所以这时就需要给这本书建个目录,这样你要看什么知识可以通过先通过目录找到知识点大概的位置再去找它效率会得到很大的提高,而我们的索引就是充当着目录的作用。索引也是真实的存在文件中的,索引是帮助MySQL高效获取数据的排...原创 2020-04-28 19:16:01 · 474 阅读 · 1 评论