其乐融融的IT技术小站

标签:mysql

SQL Server

相同执行计划,为何有执行快慢的差别

2

其乐融融 发布于 2023/06/22 03:10:11

今天遇到一个很神奇的现象,在数据库中,相同的执行计划,执行SQL所需要的时间相差很大,执行快的SQL瞬间出结果,执行慢的SQL要几十秒才出结果,一度让我怀疑是数据库抽风了,后面才发现是见识不足,又进入了知识空白区。

阅读()评论(0)赞 ()

MySQL

怎样初始化MySQL?MySQL环境变量配置教程

9

其乐融融 发布于 2023/06/21 03:20:55

环境变量里面有很多选项,这里我们只用到Path 这个参数。为什么在初始化的开始要添加环境变量呢?在黑框(即CMD) 中输入一个可执行程序的名字,Windows会先在环境变量中的Path所指的路径中寻找一遍,如果找到了就直接执行,没找到就在当前工作目录找,如果还没找到,就报错。

阅读()评论(0)赞 ()

MySQL

MySQL原理介绍,你学会了吗?

5

其乐融融 发布于 2023/06/21 03:20:45

由于B+Tree非叶子节点不存储数据(data),因此所有的数据都要查询至叶子节点,而叶子节点的高度都是相同的,因此所有数据的查询速度都是一样的。

阅读()评论(0)赞 ()

MySQL

MySQL 8.0中InnoDB Buffer Pool Size进度更透明

0

其乐融融 发布于 2023/06/21 03:20:42

每当 Innodb_buffer_pool_resize_status_code 状态码变化一次,则 progress 的进度百分比会被重置为0,重新开始。当整个buffer pool都resize完成后,最终显示100。接下来,我们找个正在跑sysbench压测中的实例,对其在线调整buffer pool看看这几个状态变量分别是怎样的。压测期间,在另一个窗口跑下面的命令观察。

阅读()评论(0)赞 ()

MySQL

深入理解MySQL索引底层数据结构

15

其乐融融 发布于 2023/06/21 03:20:34

索引本质上是一种排好序的数据结构,了解了MySQL索引的底层数据结构及存储原理,可以帮助我们更好地进行SQL优化。其实数据库索引调优是一项技术活,不能仅仅靠理论,因为实际情况千变万化,而且MySQL本身存在很复杂的机制,如查询优化策略和各种引擎的实现差异等都会使情况变得更加复杂。

阅读()评论(0)赞 ()

MySQL

MySQL索引15连问,扛住!

10

其乐融融 发布于 2023/06/21 03:20:23

聚簇索引并不是一种单独的索引类型,而是一种数据存储方式。它表示索引结构和数据一起存放的索引。非聚集索引是索引结构和数据分开存放的索引。

阅读()评论(0)赞 ()

MySQL

再聊 MySQL 聚簇索引

1

其乐融融 发布于 2023/06/21 03:20:20

聚簇索引英文是 Clustered Index,有时候小伙伴们可能也会看到有人将之称为聚集索引等,与之相对的是非聚簇索引或者二级索引。

阅读()评论(0)赞 ()

MySQL

记一次 MySQL 主从同步异常的排查记录,百转千回!

15

其乐融融 发布于 2023/06/20 03:20:54

relay log 损坏了,导致从库的 SQL 线程解析 relay log 时出现异常。从库恢复方式是通过手动设置当时出错的 GTID 的下一个值,让从库不从主库同步这个 GTID,最后从库就能正常同步这个 GTID 之后的 binlog 了,后续 SQL 线程也能正常解析 relay log 了。

阅读()评论(0)赞 ()

MySQL

MySQL索引数据结构入门

4

其乐融融 发布于 2023/06/20 03:20:46

Hash 索引在 MySQL 中主要是 Memory 和 NDB 引擎支持,InnoDB 索引本身是 不支持的,但是 InnoDB 索引有一个特性叫做自适应哈希索引,自适应三个字意味着整个过程是全自动的,不需要开发者配置。

阅读()评论(0)赞 ()

MySQL

MySQL的连接层如何处理认证?

2

其乐融融 发布于 2023/06/20 03:20:32

MySQL 的连接层主要是由客户端和服务器之间的通信协议组成,用于在客户端和服务器之间传递数据和命令。在 MySQL 的连接层中,包含了认证协议和安全协议两种协议,主要用于处理连接的认证和数据的加密和解密。

阅读()评论(0)赞 ()

MySQL

我们一起聊聊 MySQL8.0 优化器

5

其乐融融 发布于 2023/06/20 03:20:19

当我们将查询提交给MySQL执行时,大多数的查询都不像 select * from single_table;那样简单,从单个表读取所有数据就行了,不需要用到高级的检索方式来返回数据。大多数查询都比较复杂,有些更复杂并且完全按照编写的方式执行查询绝不是获得结果的最有效方式。

阅读()评论(0)赞 ()