摘要: MariaDB 10.0.8增加了一种新的执行计划——Extended Keys。 它充分利用了InnoDB的隐藏列来做执行计划,因为我们都知道InnoDB的索引组织表会把主键放在最末尾,所以实际上每个索引最后都包含了主键。 打开和关闭这个优化器选项的命令如下: Enable: set optimi 阅读全文
posted @ 2020-07-07 22:57 Cetus-Y 阅读(428) 评论(0) 推荐(0) 编辑
摘要: 唯一索引额外功能 为了便于说明,我们创建一个简单的表t,如下: 我在这个表的字段a上创建了唯一索引,字段b上面没有索引,表里初始化两行数据,分别是(1, 1)和(2, 1)。假设我现在要执行一个新的插入语句: 就会报错: 如果我现在要给字段b上加上一个唯一索引,可以这么执行: 同样会报错: 也就是说 阅读全文
posted @ 2020-07-07 20:52 Cetus-Y 阅读(699) 评论(0) 推荐(0) 编辑
摘要: 背景 MySQL现行版本中存在一个count(distinct)语句返回结果错误的bug,表现为,实际结果存在值,但是用count(distinct)统计后返回的是0。 drop table if exists tb; set tmp_table_size=1024; create table tb 阅读全文
posted @ 2020-07-07 20:38 Cetus-Y 阅读(390) 评论(0) 推荐(0) 编辑
摘要: 背景 innodb_flush_log_at_trx_commit 这个参数可以说是InnoDB里面最重要的参数之一,它控制了重做日志(redo log)的写盘和落盘策略。 具体的参数意义见手册 简单说来,可选值的安全性从0->2->1递增,分别对应于mysqld 进程crash可能丢失 -> OS 阅读全文
posted @ 2020-07-07 20:35 Cetus-Y 阅读(225) 评论(0) 推荐(0) 编辑
摘要: 背景 最近发布的MariaDB 10.1 Alpha版本,提交了一个改动,放宽了InnoDB Page<=16K的限制,将上限提高到64K。 从MDEV-6075需求文档中可以看出,目前只支持COMPACT的结构,DYNAMIC结构能否支持还在研究,COMPRESSED结构则确定无法支持。 业务应用 阅读全文
posted @ 2020-07-07 20:33 Cetus-Y 阅读(386) 评论(0) 推荐(0) 编辑