摘要:
1 优化数据访问 通常可以往以下两个角度考虑 确认应用程序是否在检索大量超过需要数据。 确认mysql服务器层是否在分析大量超过需要的数据行 1.1 是否向服务器请求了不需要的数据 比较典型的 查询不需要的数据 多表关联时返回全部的索引列 总是取出全部列 重复查询相同数据 可以在第一次查询到数据时客 阅读全文
posted @ 2026-05-01 18:39
不会coding的喵酱
阅读(7)
评论(0)
推荐(0)
摘要:
1 MYISAM的前缀压缩 MYISAM能使用前缀压缩使得索引更小,从而让更多索引可以放到内存中,某些情况下能极大提升性能。 默认只压缩字符串,通过参数设置也可以对整数压缩 做法是: 先完全保存索引块的第一个值,然后将其他值和第一个值进行比较得到相同前缀的字节数和剩下不同后缀的部分,把这部分存储起来 阅读全文
posted @ 2026-05-01 18:31
不会coding的喵酱
阅读(6)
评论(0)
推荐(0)
摘要:
1 如何选择更合适的数据类型 更小的通常更好: 一般情况下,应该选择可以正确存储数据的最小数据类型,因为他们占用更少的磁盘,内存和CPU缓存,处理时候需要的CPU周期也更少。 但是要确保没有低估存值的范围 简单更好 比如整数比字符操作代价更低,整数更适合做比较操作,这就涉及修改数据时索引插入这些 I 阅读全文
posted @ 2026-05-01 18:27
不会coding的喵酱
阅读(11)
评论(0)
推荐(0)
摘要:
1 eposide 1: Mysql 架构与历史 1.1 逻辑架构 mysql的逻辑架构可以分成 连接层:主要处理连接处理,授权认证,安全等,类似线程连接池 服务层:包括 查询缓存,解析器,优化,以及所有的内置函数,所有跨存储引擎的功能都在这一层实现:存储过程,触发器,视图等等 存储引擎层:复制my 阅读全文
posted @ 2026-05-01 18:18
不会coding的喵酱
阅读(7)
评论(0)
推荐(0)
摘要:
1.如何提高insert的性能 && redo日志刷盘策略 合并多条insert为一条 多条insert合并后日志量减少,降低了日志刷盘的数据量和频率,从而提高效率,同时减少sql语句解析次数,网络传输io 修改bulk_insert_buffer_size,调大批量插入的缓存 手动使用事务 不使用 阅读全文
posted @ 2026-05-01 17:37
不会coding的喵酱
阅读(7)
评论(0)
推荐(0)
摘要:
1. Group by 的底层实现(松散/紧凑索引扫描) 如果有索引时 松散索引扫描:索引字段连续,有序时,且没有被范围查找截断(整个表做group by),这时候采用的方式叫做松散索引扫描,比如一组相同元素11223344,mysql直接跳着扫描索引,遇到不同值就分组,效率最高 紧凑索引扫描:当索 阅读全文
posted @ 2026-05-01 17:32
不会coding的喵酱
阅读(10)
评论(0)
推荐(0)
摘要:
1 事务的基本特性ACID 原子性 一个事务中的所有操作是一个整体,是不可再分割的。要么全部成功,要么全部失败 通过Undo log保证,撤销已经执行的事务 一致性 事务的数据状态只会从一个一致性状态转移到另一个一致性状态,通常是一个符合数据规则的状态转移到另一个数据规则的状态 例如转账系统: A给 阅读全文
posted @ 2026-05-01 17:30
不会coding的喵酱
阅读(5)
评论(0)
推荐(0)
摘要:
1. B树和B+树对比 B树:顺序排列,非叶子节点和叶子节点都存储数据,元素之间顺序排列。 B+树:元素也是顺序排列,每个节点都是一个页,页和页之间用双向链表连接(这也体现了B+树在范围查找时的优势),非叶子节点存储键值和数据页地址(不存储元素,所以b+树才会变得“矮胖”),页内的元素用单向链表相连 阅读全文
posted @ 2026-05-01 17:21
不会coding的喵酱
阅读(5)
评论(0)
推荐(0)

浙公网安备 33010602011771号