MySQL:MySQL体系架构
1其乐融融 发布于 2023/06/23 03:20:32
存储引擎负责MySQL中数据的存储与提取,与底层系统文件进行交互。MySQL存储引擎是插件式的,服务器中的查询执行引擎通过接口与存储引擎进行通信,接口屏蔽了不同存储引擎之间的差异 。现在有很多种存储引擎,各有各的特点,最常见的是MyISAM和InnoDB。
阅读()评论(0)赞 ()
其乐融融 发布于 2023/06/23 03:20:32
存储引擎负责MySQL中数据的存储与提取,与底层系统文件进行交互。MySQL存储引擎是插件式的,服务器中的查询执行引擎通过接口与存储引擎进行通信,接口屏蔽了不同存储引擎之间的差异 。现在有很多种存储引擎,各有各的特点,最常见的是MyISAM和InnoDB。
阅读()评论(0)赞 ()
其乐融融 发布于 2023/06/23 03:20:30
mysql-bin.000003 是首次配置的,如果master节点重启了,这个文件会递增变为mysql-bin.000004,这时我们的从节点会自动连上这mysql-bin.000004。
阅读()评论(0)赞 ()
其乐融融 发布于 2023/06/23 03:20:27
MySQL 备份通常分为两种类型:逻辑备份和物理备份。这两种备份方法各有优缺点,适用于不同的场景。
阅读()评论(0)赞 ()
其乐融融 发布于 2023/06/23 03:20:21
Databus 通过挖掘数据库日志的方式,将数据库变更实时、可靠的从数据库拉取出来,业务可以通过定制化 client 实时获取变更并进行其他业务逻辑。
阅读()评论(0)赞 ()
其乐融融 发布于 2023/06/23 03:20:17
函数是指一段可以直接被另一段程序调用的程序或代码。 也就意味着,这一段程序或代码在MySQL中已经给我们提供了,我们要做的就是在合适的业务场景调用对应的函数完成对应的业务需求即可。 那么,函数到底在哪儿使用呢?
阅读()评论(0)赞 ()
其乐融融 发布于 2023/06/23 03:20:10
实际上手动删除的 SQL 这么奇怪就是因为表没有主键,不然正常手动的删除 SQL 上 where 条件肯定是 id =xxx。
阅读()评论(0)赞 ()
其乐融融 发布于 2023/06/23 03:20:06
从存储引擎读取一条记录之后,对 Or 连接的 N 个 Where 条件(N >= 2)调用 Item->val_bool(),只要其中一个返回值等于True,记录就匹配 Or 连接的 N 个 Where 条件。
阅读()评论(0)赞 ()
其乐融融 发布于 2023/06/22 03:20:57
3. B+Tree的每个叶子节点增加了一个指向相邻叶子节点的指针,它的最后一个数据会指向下一个叶子节点的第一个数据,形成了一个有序链表的结构。
阅读()评论(0)赞 ()
其乐融融 发布于 2023/06/22 03:20:54
今天我们就一起来看看,Lock_Time 包含哪些锁等待时间、以及是怎么计算得到的?
阅读()评论(0)赞 ()
其乐融融 发布于 2023/06/22 03:20:51
启动一个订阅程序去订阅数据库的binlog,获得需要操作的数据。在应用程序中,另起一段程序,获得这个订阅程序传来的信息,进行删除缓存操作。
阅读()评论(0)赞 ()
其乐融融 发布于 2023/06/22 03:20:48
Pacemaker是一个开源的高可用性集群资源管理和故障转移工具,可以实现在集群节点之间自动管理资源(如虚拟IP、文件系统、数据库等),并在节点或资源故障时进行自动迁移,从而确保整个系统的高可用性和连续性。
阅读()评论(0)赞 ()
其乐融融 发布于 2023/06/22 03:20:43
首先主要是讲了聚簇索引和非聚簇索引,随后讲了MySQL对于一些常见查询的优化,比如覆盖索引,索引下推,都是为了减少回表次数,从而减少带来的性能消耗,再后面就提到MySQL是如何选择索引的,最后介绍了索引失效的场景和索引建立的原则。
阅读()评论(0)赞 ()
其乐融融 发布于 2023/06/22 03:20:33
在 MySQL8 之前,默认会按照 group by 的字段进行排序,此时加上 order by null 就是告诉 MySQL,不用帮我排序了,直接返回结果就行了,因为如果不加 order by null,则可能会进行 filesort 排序,降低查询效率。
阅读()评论(0)赞 ()
其乐融融 发布于 2023/06/22 03:20:30
创建一个MySQL备份脚本mysql_backup.bat,并在Windows任务计划程序中设置自动执行。
阅读()评论(0)赞 ()
其乐融融 发布于 2023/06/22 03:20:25
我们定位到原来是由于大事务+blob字段大致binlog非常大,最终我们采用了修改业务代码,将blob字段单独拆到一张表中解决。所以,在设计开发过程中,要尽量避免大事务,同时在数据库建模的时候特别考虑将blob字段独立成表。
阅读()评论(0)赞 ()
其乐融融 发布于 2023/06/22 03:20:22
从MySQL 5.7开始,支持设置为离线模式(offline_mode),再有维护操作需求就不用这么麻烦了。只需在线动态修改,可立即生效,非常的简单粗暴。
阅读()评论(0)赞 ()
其乐融融 发布于 2023/06/22 03:20:17
这篇文章很基础,也非常适用,大家可以直接下载技术派项目,里面都有代码和测试用例,代码仓库详见:https://github.com/itwanger/paicoding
阅读()评论(0)赞 ()
其乐融融 发布于 2023/06/21 03:20:55
环境变量里面有很多选项,这里我们只用到Path 这个参数。为什么在初始化的开始要添加环境变量呢?在黑框(即CMD) 中输入一个可执行程序的名字,Windows会先在环境变量中的Path所指的路径中寻找一遍,如果找到了就直接执行,没找到就在当前工作目录找,如果还没找到,就报错。
阅读()评论(0)赞 ()
其乐融融 发布于 2023/06/21 03:20:52
id、sales_date、sales_amount。id为自增长主键,sales_date为销售日期,sales_amount为销售额。插入了15条模拟数据,涵盖了2023年1月至6月的销售数据
阅读()评论(0)赞 ()
其乐融融 发布于 2023/06/21 03:20:49
联合索引就是数据表中的多个字段,共同组成一个索引。由于 InnoDB 中索引的数据结构是一个 B+Tree,当是一个联合索引的时候,排序的时候会首先按照联合索引的第一个字段排序,如果第一个字段的值相同,则按照第二个字段排序,如果第二个字段的值也相同,则按照第三个字段排序,以此类推。
阅读()评论(0)赞 ()
其乐融融 发布于 2023/06/21 03:20:45
由于B+Tree非叶子节点不存储数据(data),因此所有的数据都要查询至叶子节点,而叶子节点的高度都是相同的,因此所有数据的查询速度都是一样的。
阅读()评论(0)赞 ()
其乐融融 发布于 2023/06/21 03:20:42
每当 Innodb_buffer_pool_resize_status_code 状态码变化一次,则 progress 的进度百分比会被重置为0,重新开始。当整个buffer pool都resize完成后,最终显示100。接下来,我们找个正在跑sysbench压测中的实例,对其在线调整buffer pool看看这几个状态变量分别是怎样的。压测期间,在另一个窗口跑下面的命令观察。
阅读()评论(0)赞 ()
其乐融融 发布于 2023/06/21 03:20:34
索引本质上是一种排好序的数据结构,了解了MySQL索引的底层数据结构及存储原理,可以帮助我们更好地进行SQL优化。其实数据库索引调优是一项技术活,不能仅仅靠理论,因为实际情况千变万化,而且MySQL本身存在很复杂的机制,如查询优化策略和各种引擎的实现差异等都会使情况变得更加复杂。
阅读()评论(0)赞 ()
其乐融融 发布于 2023/06/21 03:20:30
索引合并看着似乎提升了 MySQL 搜索的性能,然而,一般出现索引合并,大概率都是因为索引创建的不合理,我们需要重新审视自己的索引。
阅读()评论(0)赞 ()
其乐融融 发布于 2023/06/21 03:20:23
聚簇索引并不是一种单独的索引类型,而是一种数据存储方式。它表示索引结构和数据一起存放的索引。非聚集索引是索引结构和数据分开存放的索引。
阅读()评论(0)赞 ()