-
眼见为实,看看MySQL中的隐藏列!
在介绍mysql的多版本并发控制MVCC的过程中,我们提到过mysql中存在一些隐藏列,例如行标识、事务ID、回滚指针等,不知道大家是否和我一样好奇过,要怎样才能实际地看到这些隐藏列的值呢? 本文我们就来重点讨论一下诸多隐藏列中的行标识DB_ROW_ID,实际上,将行标识称为隐藏列并不准确,因为它并不是一个真实存在的列,DB_ROW_ID实际上是一个非空唯···
- 发布时间:2025-05-16
- 作者:益强科技
- 来源:[list:source]
- 浏览量([list:visits])
- 点赞([list:likes])
-
一文读懂一条查询语句的宿命
select * from XXX where id=1; 这应该是n年前入门mysql必用的查询语句了吧,学如逆水行舟,不进则退,这么久过去了,你知道这条语句在Mysql内部的执行过程吗? 我们先来看看司空见惯的Mysql基本架构示意图 可以看到,Mysql可以分为 Server层,包括连接器、查询缓存、分析器、优化器、执行器等,除了直接落地到磁盘、和从···
- 发布时间:2025-05-16
- 作者:益强科技
- 来源:[list:source]
- 浏览量([list:visits])
- 点赞([list:likes])
-
关于MySQL,这篇都没人赞,太没天理了!
研发的童鞋每次对MySQL库表做重大操作之前,例如: 修改表结构; 批量修改或者删除数据; 都会向DBA申请进行数据库的备份。 画外音:又或者说,不备份直接操作啦? 那DBA童鞋是怎么进行MySQL备份的呢? 调研了几十个RD和QA,基本是3种答案: 不太清楚; 在线逻辑备份,mysqldump; 离线物理备份(冷备),拷贝从库库文件; 那实际上,DBA是···
- 发布时间:2025-05-16
- 作者:益强科技
- 来源:[list:source]
- 浏览量([list:visits])
- 点赞([list:likes])
-
Oracle中索引位图转换的优势
第一章 Oracle索引位图转换介绍 1.1 索引位图转换 首先介绍一下索引位图转换概念: 索引位图转换是优化器对目标表上的一个或多个目标索引执行位图布尔运算。Oracle数据库里有一个映射函数(Mapping Function),它可以实现B树索引中ROWID和对应位图索引中的位图之间互相转换。目的是对相同ROWID做AND、OR等连接运算。 当执行计划···
- 发布时间:2025-05-16
- 作者:益强科技
- 来源:[list:source]
- 浏览量([list:visits])
- 点赞([list:likes])
-
CDC是个啥,它是如何工作的?
【.com快译】从广泛意义上说,全球许多企业每天都需要通过频繁的数据批量处理与加载,来定期将数据从一个数据库迁移到另一个数据库(或数据仓库)。这类定期批量加载的工作,往往既耗费时间,又会消耗原始系统的大量处理能力。因此,管理员只能在业务运行的间歇期间运行数据的批量传输与复制作业,否则会产生严重的效率影响。而显然,这与24x7的不间断业务需求是背道而驰的。 ···
- 发布时间:2025-05-16
- 作者:益强科技
- 来源:[list:source]
- 浏览量([list:visits])
- 点赞([list:likes])
-
MyISAM与InnoDB的索引,究竟有什么差异?
数据库的索引分为主键索引(Primary Inkex)与普通索引(Secondary Index)。InnoDB和MyISAM是怎么利用B+树来实现这两类索引,其又有什么差异呢?这是今天要聊的内容。 一、MyISAM的索引 MyISAM的索引与行记录是分开存储的,叫做非聚集索引(UnClustered Index)。 其主键索引与普通索引没有本质差异: 有···
- 发布时间:2025-05-16
- 作者:益强科技
- 来源:[list:source]
- 浏览量([list:visits])
- 点赞([list:likes])
-
切记!MySQL 中 ORDER BY 与 IMIT 不要一起用,有大坑
现象与问题 ORDER BY排序后,用LIMIT取前几条,发现返回的结果集的顺序与预期的不一样。 下面是我遇到的问题: 可以看到,带LIMIT与不带LIMIT的结果与我预期的不一样,而且“很不可思议”,真是百思不得其解。 后来百度了一下,如果order by的列有相同的值时,mysql会随机选取这些行,为了保证每次都返回的顺序一致可以额外增加一个排序字段(···
- 发布时间:2025-05-16
- 作者:益强科技
- 来源:[list:source]
- 浏览量([list:visits])
- 点赞([list:likes])
-
MySQL 深潜 - 一文详解 MySQL Data Dictionary
一 背景 在 MySQL 8.0 之前,Server 层和存储引擎(比如 InnoDB)会各自保留一份元数据(schema name, table definition 等),不仅在信息存储上有着重复冗余,而且可能存在两者之间存储的元数据不同步的现象。不同存储引擎之间(比如 InnoDB 和 MyISAM)有着不同的元数据存储形式和位置(.FRM, .PA···
- 发布时间:2025-05-16
- 作者:益强科技
- 来源:[list:source]
- 浏览量([list:visits])
- 点赞([list:likes])
-
为什么MySQL不推荐使用子查询和JOIN?
1.对于mysql,不推荐使用子查询和join是因为本身join的效率就是硬伤,一旦数据量很大效率就很难保证,强烈推荐分别根据索引单表取数据,然后在程序里面做join,merge数据。 2.子查询就更别用了,效率太差,执行子查询时,MYSQL需要创建临时表,查询完毕后再删除这些临时表,所以,子查询的速度会受到一定的影响,这里多了一个创建和销毁临时表的过程。···
- 发布时间:2025-05-16
- 作者:益强科技
- 来源:[list:source]
- 浏览量([list:visits])
- 点赞([list:likes])
-
聊聊Innodb是如何存数据的?
前言 如果你使用过mysql数据库,对它的存储引擎:innodb,一定不会感到陌生。 众所周知,在mysql8以前,默认的存储引擎是:myslam。但mysql8之后,默认的存储引擎已经变成了:innodb,它是我们建表的首选存储引擎。 那么,问题来了: innodb底层是如何存储数据的? 表中有哪些隐藏列? 用户记录之间是如何关联起来的? 如果你想知道上···
- 发布时间:2025-05-16
- 作者:益强科技
- 来源:[list:source]
- 浏览量([list:visits])
- 点赞([list:likes])