自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(5)
  • 收藏
  • 关注

原创 MySQL优化器参数prefer_ordering_index优化理念

1、我们知道MySQL 5.7已经由了MRR的特性,通过把主键放到read_rnd_buffer中进行递增排序,然后把排序后的id数据整体去主键索引中检索数据,这样已经把原本回表的离散io转换成了顺序io,极大的降低了回表的代价,提高了回表的效率,尤其是limit n当n比较小的时候,这个时候开启这个参数,会减少由于优化器认为回表代价高导致不走索引而选择全表扫描;2、但是该参数存在bug,当limit n中的n比较小的时候,导致优化器直接选择走order by上的索引,忽略了选择性更高的其他索引;

2024-11-08 16:23:18 1062

原创 show slave status 详解 【MySQL5.7】

Relay_Master_Log_File: mysql-bin.000032 #正在执行到的主库上的binlog文件名【反映从库SQL_thread执行进度】Read_Master_Log_Pos: 1717 #正在读取到的主库的pos【反映从库IO_thread执行进度】Exec_Master_Log_Pos: 1717 # 当前执行到的主库的pos【反映从库SQL_thread执行进度】以MySQL5.7.19为例,部分重要的地方用红色标注了。

2024-03-25 15:06:54 428 1

原创 物理读和逻辑读

逻辑读:将数据从buffer cache内存读取到PGA给用户的过程。物理读:将数据从磁盘上的文件写入到buffer cache的过程;

2024-01-22 10:35:31 578

原创 PostgreSQL的MVCC vs InnoDB的MVCC

老版本存储到回滚段(注意,回滚段中的数据仅包含更改值,即delta value),同时新版本行记录中的回滚指针指向回滚段中的老版本。即使所有记录都是dead状态,PostgreSQL的顺序扫描也会扫描对象所有的老版本,直到执行vacuum将dead的记录删除。PostgreSQL仅更新tuple老版本的xmax,因此老版本的大小和相应插入的记录大小相同。同理,第三步,删除T1然后将其标记为虚拟删除(仅在行记录指定的一个bit位上打上delete标签)并在回滚段中插入一个对应的新版本。

2024-01-09 15:20:16 389

原创 InnoDB存储引擎有三大特性

InnoDB存储引擎有三大特性非常令人激动,它们分别是插入缓冲、两次写和自适应哈希 innodb 关键特性其中之二 写缓存是为了提升写性能,两次写为了提升可靠性 change buffer innodb引擎是索引组织表,所有记录都放在聚集索引里,因此其辅助索引中的记录地址存放的主键的键值。 它是一种特殊的数据结构,缓存对二级索引页面的更改并且这些页面不在buffer pool中。缓存的changes可能由insert、delete和update 的结果导致。稍后在页面被其他读取操作加载到 buffer po

2022-07-21 15:11:47 1379 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除