![](https://img-blog.csdnimg.cn/20201014180756754.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
MySQL45讲笔记
文章平均质量分 61
记录mysql45讲的学习笔记
你走吧起风了__
孤独本是常态,逢人何必言深。
展开
-
MySQL高级优化之到底可不可以使用join?
在实际生产中,关于 join 语句使用的问题,一般会集中在以下两类: 我们 DBA 不让使用 join,使用 join 有什么问题呢? 如果有两个大小不同的表做 join,应该用哪个表做驱动表呢? 今天这篇文章,我就先跟你说说 join 语句到底是怎么执行的,然后再来回答这两个问题。 为了便于量化分析,我还是创建两个表 t1 和 t2 来和你说明。 CREATE TABLE `t2` ( `id` int(11) NOT NULL, `a` int(11) DEFAULT NULL,原创 2021-03-30 17:05:31 · 169 阅读 · 0 评论 -
详解MySQL锁机制的好文推荐
传送门原创 2021-03-27 14:50:53 · 107 阅读 · 0 评论 -
记一次MySQL语句执行问题
表结构如下: mysql> CREATE TABLE `table_a` ( `id` int(11) NOT NULL, `b` varchar(10) DEFAULT NULL, PRIMARY KEY (`id`), KEY `b` (`b`) ) ENGINE=InnoDB; 假设现在表里面,有 100 万行数据,其中有 10 万行数据的 b 的值是’1234567890’, 假设现在执行语句是这么写的: mysql> select * from table原创 2021-03-27 14:32:47 · 93 阅读 · 1 评论 -
Mysql性能优化学习笔记
笔记: 1.MySQL会为每个线程分配一个内存(sort_buffer)用于排序该内存大小为sort_buffer_size 1>如果排序的数据量小于sort_buffer_size,排序将会在内存中完成 2>如果排序数据量很大,内存中无法存下这么多数据,则会使用磁盘临时文件来辅助排序,也称外部排序 3>在使用外部排序时,MySQL会分成好几份单独的临时文件用来存放排序后的数据,然后在将这些文件合并成一个大文件 2.mysql会通过遍历索引将满足条件的数据读取到...原创 2021-03-27 10:45:04 · 194 阅读 · 0 评论 -
Mysql学习笔记
1:为啥删除了表的一半数8据,表文文件大小没变化? 因为delete 命令其实只是把记录的位置,或者数据页标记为了“可复用”,但磁盘文件的大小是不会变的。也可以认为是一种逻辑删除,所以物理空间没有实际释放,只是标记为可复用,表文件的大小当然是不变的啦! 2:表的数据信息存在哪里? 表数据信息可能较小也可能巨大无比,她可以存储在共享表空间里,也可以单独存储在一个以.ibd为后缀的文件里,由参数innodb_file_per_table来控制,老师建议总是作为一个单独的文件来存储,这样非常容易管理,原创 2021-03-26 15:16:57 · 87 阅读 · 0 评论 -
一条SQL查询语句的执行流程
平时我们使用数据库,看到的通常都是一个整体。比如,你有个最简单的表,表里只有一个 ID 字段,在执行下面这个查询语句时: mysql> select * from T where ID=10; 我们看到的只是输入一条语句,返回一个结果,却不知道这条语句在 MySQL 内部的执行过程。 所以今天我想和你一起把 MySQL 拆解一下,看看里面都有哪些“零件”,希望借由这个拆解过程,让你对 MySQL 有更深入的理解。 这样当我们碰到 MySQL 的一些异常或者问题时,就能够直戳本质,更为快速地原创 2021-03-24 19:26:35 · 209 阅读 · 0 评论