自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 索引设计的原则

联合索引本质上来说也是一个B+树,但是不同的是,单列索引的B+树的键值数量是1(即一个键值+一个页指针),但是联合索引的键值数量是大于等于2,如下图三行绿色是联合索引,粉色是记录的主键。,索引用b+树存放本身就会占据空间,而增删改的执行重建索引要消耗大量的时间成本。这个查询中只有a列和b列使用到了索引,而c列没有使用索引,因为根据最左匹配查询原则,遇到范围查询会停止。这里查stuno 可以走单列索引也可以走联合索引,但实际走了联合索引,验证了联合索引优于单列索引的原则。在多个字段都要创建索引的情况下,

2023-12-26 01:31:53 939 1

原创 MySQL索引的使用

从MySQL 8.x开始支持 隐藏索引(invisible indexes) ,只需要将待删除的索引设置为隐藏索引,使 查询优化器不再使用这个索引(即使使用force index(强制使用索引),优化器也不会使用该索引), 确认将索引设置为隐藏索引后系统不受任何响应,就可以彻底删除索引。index_name 指定索引的名称,为可选参数,如果不指定,那么MySQL默认col_name为索引名;length 为可选参数,表示索引的长度,只有字符串类型的字段才能指定索引长度;,这样做的效率其实很低。

2023-12-23 18:56:10 344 1

原创 MySQL索引初步了解

*辅助索引(普通索引/二级索引)**就是除了聚集索引之外的其他索引,不具有数据存储的功能,索引 B+ 树叶子节点存储的 data 也只是主键的值而已。可以看出B树的非叶子节点也存储了DATA,这就带来一个关键的缺陷,节点的大小是按页区指定的,非叶子节点的DATA会和POINT竞争存储空间,大概率是POINT竞争不过,导致B树的层数增加,因而降低索引的效率。而非唯一索引就是没有这种约束的索引。的角度来说,MySQL 索引分为主键索引与非主键索引、单列索引与多列索、唯一索引与非唯一索引、前缀索引与后缀索引。

2023-12-23 02:35:45 322 1

原创 Innodb内存架构和外存结构

MySQL 官方文档中给出的InnoDB的架构模型。

2023-12-22 19:11:48 930

原创 MySQL常见存储引擎

MyISAM提供了大量的特性,包括**全文索引、压缩、空间函数(GIS)**等,但MyISAM 不支持事务、行级 锁、外键 ,有一个毫无疑问的缺陷就是崩溃后无法安全恢复。数据文件结构:表名.frm 存储表结构 、表名.MYD 存储数据 (MYData)、 表名.MYI 存储索引 (MYIndex)5.5之前默认的存储引擎 优势是访问的 速度快 ,对事务完整性没有要求或者以SELECT、INSERT为主的应用。针对数据统计有额外的常数存储。Memory 引擎:置于内存的表。

2023-12-20 21:57:32 318

原创 SQL语句执行流程

如果有权限,就打开表继续执行。打开表的时候,执行器就会根据表的引擎定义,去使用这个引擎提供的接口。

2023-12-20 16:07:18 1126

原创 MySQL逻辑架构

MySQL内部维持着一些Cache和Buffer,比如Query Cache用来缓存一条SELECT语句的执行结果,如果能够在其中找到对应的查询结果,那么就不必再进行查询解析、优化和执行的整个过程了,直接将结果反馈给客户端。进行查询(全表检索还是使用索引检索),表之间的连接顺序如何,最后会按照执行计划中的步骤调用存储引擎提供的方法来真正的执行查询,并将查询结果返回给用户。在MySQL的查询缓存中,锁的粒度问题主要体现在查询缓存的实现方式上。比如表缓存,记录缓存,key缓存,权限缓存等。

2023-12-19 23:48:21 1070 1

原创 MySQL系统文件目录、数据文件目录

MySQL系统文件目录、数据文件目录

2023-12-19 13:16:33 1017 1

原创 MySQL8安装

MySQL8.X安装教程

2023-12-19 11:15:45 700 1

原创 如何在url请求路径设置空值

总所周知,url请求路径可以设置parameter,实际上通过request.getParameter(...)获取到的是字符串,在使用的过程中有可能需要设置空值的参数。

2022-12-14 21:58:04 555

原创 【无标题】

时间复杂度、最大子序列和问题

2022-10-14 18:47:31 268

原创 《数据结构与算法分析Java》引论

第一章 引论,包括三个级数的数学公式,java泛型的使用和函数对象

2022-10-14 15:45:50 236

原创 事务ACID中一致性(Consistency)的理解

一致性状态

2022-06-21 10:46:41 703

转载 java反射调用变长参数构造器来创建实例

在getDeclaredConstructor中定义构造方法的参数类型使用的是数组类型或变长类型,在newInstance进行实例创建时传递给构造方法的参数列表是一个数组,该数组需要被Object数据包裹,直接传会报错。报错如下改用Object包裹后传入.........

2022-06-18 19:47:19 121

空空如也

空空如也

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

TA关注的人

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