07 2023 档案

摘要:> 以下内容出自 《MySQL 实战 45 讲》 # 24 | MySQL是怎么保证主备一致的? ## MySQL 主备的基本原理 如图所示就是基本的主备切换流程。(M-S结构) ![image](https://img2023.cnblogs.com/blog/1371486/202307/137 阅读全文
posted @ 2023-07-10 23:06 LionelYee 阅读(50) 评论(0) 推荐(0) 编辑
摘要:> 以下内容出自《MySQL 实战 45 讲》 # 23 | MySQL是怎么保证数据不丢的? ## binlog 的写入机制 1、事务执行过程中,先把日志写到 binlog cache,事务提交的时候,再把 binlog cache 写到 binlog 文件中。 2、一个事务的 binlog 是不 阅读全文
posted @ 2023-07-09 17:57 LionelYee 阅读(62) 评论(0) 推荐(0) 编辑
摘要:> 以下内容出自 《MySQL 实战 45 讲》 # 21 | 为什么我只改一行的语句,锁这么多? ## 加锁规则 **原则 1:加锁的基本单位是 next-key lock。next-key lock 是前开后闭区间。** **原则 2:查找过程中访问到的对象才会加锁。** **优化 1:索引上的 阅读全文
posted @ 2023-07-06 23:36 LionelYee 阅读(119) 评论(0) 推荐(0) 编辑
摘要:> 以下内容出自 《MySQL 实战 45 讲》 # 19 | 为什么我只查一行的语句,也执行这么慢? ## 第一类:查询长时间不返回 ```mysql mysql> select * from t where id=1; ``` 一般碰到这种情况。大概率是表 t 被锁住了。 分析: 首先执行 `s 阅读全文
posted @ 2023-07-06 21:35 LionelYee 阅读(37) 评论(0) 推荐(0) 编辑
摘要:# 18 | 为什么这些SQL语句逻辑相同,性能却差异巨大? ``` CREATE TABLE `tradelog` ( `id` int(11) NOT NULL, `tradeid` varchar(32) DEFAULT NULL, `operator` int(11) DEFAULT NUL 阅读全文
posted @ 2023-07-02 18:46 LionelYee 阅读(10) 评论(0) 推荐(0) 编辑
摘要:# 16 | “order by”是怎么工作的? ## 前置 MySQL 会给每个线程分配一块内存用于排序,称为 sort_buffer。 排序时可能在内存中完成,也可能需要使用外部排序,这取决于排序所需的内存和参数 sort_buffer_size 。 sort_buffer_size,就是 My 阅读全文
posted @ 2023-07-02 18:21 LionelYee 阅读(23) 评论(0) 推荐(0) 编辑
摘要:> 一下内容出自《MySQL 实战 45 讲》 ## 14 | count(*)这么慢,我该怎么办? ### count(*) 的实现方式 不同的 MySQL 引擎中,count(*) 有不同的实现方式。 - MyISAM 引擎把一个表的总行数存在了磁盘上,执行 count(\*) 的时候会直接返回 阅读全文
posted @ 2023-07-02 12:17 LionelYee 阅读(61) 评论(0) 推荐(0) 编辑
摘要:## 13 | 为什么表数据删掉一半,表文件大小不变? ### 参数 innodb_file_per_table 表数据既可以存在共享表空间里,也可以是单独的文件。这个行为是由参数 innodb_file_per_table 控制的: - ON 表示的是,每个 InnoDB 表数据存储在一个以 .i 阅读全文
posted @ 2023-07-01 15:35 LionelYee 阅读(42) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示