MySql
文章平均质量分 66
九八年的尾巴
一个愿意分享和倾听的年轻人
展开
-
MySQL索引B+树数据结构原理以及分类了解只需这一篇(绝非标题党)
索引!可谓是重中之重。面试可谓是必问内容,当然了,平时开发对于SQL的优化也是很重要的而当实践SQL优化不能盲目的操作,理论是支撑实践的基础索引的意义索引的本质就是一种排好序的数据结构。这个肯定都明白,自然而言就联想到字典中的目录在详细讲解下面的索引数据前补充一句:通过不断缩小想要获取数据的范围来筛选出最终想要的结果,同时把随机的事件变成顺序事件,也就是说,有了这种索引机制,总是用同一种方式来锁定数据索引分类1.普通索引 index:加速查找2.唯一索引 主键索引:primary ke原创 2021-03-05 21:45:55 · 6560 阅读 · 9 评论 -
传统关系型数据库事务以及MVCC讲解
事务一句话概括:要么全部执行、要么全部不执行举例:用户下单,你可能还需要记录一些用户信息,但这个过程可能失败了,如果用户成功下单,你就没有这条信息了,这肯定就不行了,此时事务就起到作用了,发生回滚,用户下单失败作为一个单元的一组有序的数据库操作。如果组中的所有操作都成功,则认为事务成功,即使只有一个操作失败,事务也不成功。如果所有操作完成,事务则提交,其修改将作用其它数据库进程。如果一个操作失败,则事务将回滚,该事务所有操作的影响都将取消事务就是被绑定在一起作为一个逻辑工作单元的 SQL 语句分组原创 2021-02-17 21:41:53 · 257 阅读 · 0 评论 -
分析MySQL执行过程
Mysql传统关系型数据库概念关系型数据库的⼀个常⻅⽤法是存储⻓期的报告数据,并将这些报告数据⽤作固定时间范围 内的聚合数据。收集聚合数据的常⻅做法是:先将各个⾏插⼊到⼀个报告表⾥⾯, 之后再通 过扫描这些⾏来收集聚合数据, 并更新聚合表中⺒有的那些⾏。图解刨析MySQL的执行过程1.客户端/服务器发送TCP通信协议2.SQL查询判断是否有缓存(多次查询相同结果Mysql也具有缓存)如果有缓存直接返回结果不走3.4.5步3.缓存不存在解析SQL,通过解析器得到解析树,再进行预处理再得到新的解析树原创 2021-02-06 18:28:49 · 118 阅读 · 0 评论 -
掌握数据库实战的四大公式
MySql表设计实战遵守的公式字段长度 能使用int就不要使用varchar、char,能用varchar(16)就不要使用varchar(256) 长度够就好,正好就好 (虽然varchar16和varchar256存储hello所占空格键一样,但后者在排序时会消耗更多内存,因为order by col采用fixed_length计算col长度,memory引擎也一样)字段选择 固定长度的类型最好使用char,能使用tinyint就不要使用int (char和varchar类型在存原创 2021-01-31 21:39:46 · 676 阅读 · 0 评论