04 2021 档案

摘要:测试脚本 ## 删除测试表 DROP TABLE IF EXISTS tb2001; DROP TABLE IF EXISTS tb2002; DROP TABLE IF EXISTS tb2003; ## 创建测试表 CREATE TABLE tb2001( id INT AUTO_INCREME 阅读全文
posted @ 2021-04-30 15:24 TeyGao 阅读(235) 评论(0) 推荐(1) 编辑
摘要:utf8mb4排序规则 在MySQL中常见的utf8mb4排序规则有: utf8mb4_0900_ai_ci utf8mb4_unicode_ci utf8mb4_general_ci 当设置表的默认字符集为utf8mb4字符集但未明确指定排序规则时: 在MySQL 5.7版本中,默认排序规则为ut 阅读全文
posted @ 2021-04-30 14:14 TeyGao 阅读(13783) 评论(0) 推荐(3) 编辑
摘要:测试环境 MySQL版本: 5.7.30 事务级别: READ-COMMITTED 测试数据 mysql> show create table tb1001 \G *************************** 1. row *************************** Table 阅读全文
posted @ 2021-04-14 20:34 TeyGao 阅读(373) 评论(0) 推荐(0) 编辑
摘要:测试环境 MySQL版本: 5.7.30 事务级别: READ-COMMITTED 测试内容 在MySQL官方文档中有如下描述: For SELECT ... FOR UPDATE or SELECT ... LOCK IN SHARE MODE, locks are acquired for sc 阅读全文
posted @ 2021-04-14 17:37 TeyGao 阅读(392) 评论(0) 推荐(0) 编辑
摘要:测试环境 MySQL版本: 5.7.30 事务级别: READ-COMMITTED 测试内容 在MySQL官方文档中有如下描述: For SELECT ... FOR UPDATE or SELECT ... LOCK IN SHARE MODE, locks are acquired for sc 阅读全文
posted @ 2021-04-14 17:36 TeyGao 阅读(292) 评论(0) 推荐(0) 编辑
摘要:测试环境 MySQL版本: 5.7.30 事务级别: READ-COMMITTED 测试数据 mysql> show create table tb1001 \G *************************** 1. row *************************** Table 阅读全文
posted @ 2021-04-14 00:14 TeyGao 阅读(227) 评论(0) 推荐(0) 编辑
摘要:问题描述 当SELECT语句中使用SLEEP时,何时触发SLEEP操作? 模拟测试 mysql> show create table tb1001 \G *************************** 1. row *************************** Table: tb1 阅读全文
posted @ 2021-04-13 21:05 TeyGao 阅读(1190) 评论(0) 推荐(0) 编辑
摘要:MySQL事务提交流程 MySQL事务提交流程可拆分为下面几个阶段: Prepare阶段 Flush阶段 Sync阶段 Commit阶段 Clean阶段 Prepare阶段 获取MDL_Key::COMMIT Metux。 获取last_committed值,该值为上一次COMMIT队里中最大的se 阅读全文
posted @ 2021-04-11 16:16 TeyGao 阅读(731) 评论(0) 推荐(0) 编辑
摘要:官方参数解释 binlog_transaction_dependency_tracking specifies the source of dependency information that the source records in the binary log to help replica 阅读全文
posted @ 2021-04-11 13:36 TeyGao 阅读(1989) 评论(0) 推荐(0) 编辑
摘要:WRITESET_SESSION特殊点 /* This object encapsulates the state kept between transactions of the same client in order to compute logical timestamps based on 阅读全文
posted @ 2021-04-11 13:15 TeyGao 阅读(422) 评论(0) 推荐(0) 编辑
摘要:基础知识 基于 COMMIT_ORDER 的并行复制只有在有压力的情况下才可能会形成一组,压力不大的情况下在从库的并行度并不会高。但是基于 WRITESET 的并行复制目标就是在ORDER_COMMIT 的基础上再尽可能的降低 last commit ,这样在从库获得更好的并行度(即便在主库串行执行 阅读全文
posted @ 2021-04-11 13:10 TeyGao 阅读(187) 评论(0) 推荐(0) 编辑
摘要:测试场景 MySQL版本: 5.7.29 事务级别: READ-COMMITTED 测试数据 DROP TABLE IF EXISTS tb1001; CREATE TABLE `tb1001` ( `id` INT(11) NOT NULL AUTO_INCREMENT, `c1` INT(11) 阅读全文
posted @ 2021-04-08 21:50 TeyGao 阅读(153) 评论(0) 推荐(0) 编辑
摘要:测试需求 在MySQL官方文档中有如下描述: https://dev.mysql.com/doc/refman/5.7/en/innodb-locks-set.html REPLACE is done like an INSERT if there is no collision on a uniq 阅读全文
posted @ 2021-04-08 21:41 TeyGao 阅读(225) 评论(0) 推荐(0) 编辑
摘要:测试场景 MySQL版本: 5.7.29 事务级别: READ-COMMITTED 测试数据 DROP TABLE IF EXISTS tb1001; CREATE TABLE `tb1001` ( `id` INT(11) NOT NULL AUTO_INCREMENT, `c1` INT(11) 阅读全文
posted @ 2021-04-08 21:39 TeyGao 阅读(1041) 评论(0) 推荐(1) 编辑