MySQL必修课:海量数据存储与优化
文章平均质量分 93
MySQL海量数据存储与优化,是一篇让你眼前一亮的专栏!如果你想在海量数据存储上成为专家,那么这篇文章绝对是你不可错过的!我们将教你如何在MySQL数据库中存储大量数据,并提供优化技巧,让你的数据库运行得更快、更稳定。这篇文章不仅仅是一篇学术性的论文,更是一篇富有实战经验的指南,让你轻松掌握海量数据
Java-You
发现更优秀的自己,我们不是程序员,我们是一名优秀的软件设计师!
展开
-
《MySQL必修课:瞬间搞定大厂高频MySQL面试题,轻松拿下心仪职位!》
索引是用来优化查询速度的一种数据结构,可以用来加快分组和排序的速度以及表之间的连接,但是建立索引需要占用物理空间,对应增删改后的索引数据需要进行动态维护,在大数据量情况下,效率会很低。视图是一个虚拟表,是动态生成的,它只存放视图的定义,不存放数据。因此可以提高复杂sql语句的复用性和数据的安全性。视图的建立和删除不影响基本表对视图内容的更新直接影响基本表当视图来自多个基本表时,不允许添加和删除数据。原创 2023-05-21 10:45:27 · 12231 阅读 · 3 评论 -
《MySQL必修课:想要成为数据库架构大师?掌握这些集群技能让你轻松hold住!》
在MySQL故障切换过程中,MHA能做到在30秒之内自动完成数据库的故障切换操作,并且在进行故障切换的过程中,MHA能在最大程度上保证数据的一致性,以达到真正意义上的高可用。可以发现MySQL 5.7二进制日志较之原来的二进制日志内容多了last_committed和sequence_number,last_committed表示事务提交的时候,上次事务提交的编号,如果事务具有相同的last_committed,表示这些事务都在一组内,可以进行并行的回放。而分片策略是指分片的规则,常用规则有以下几种。原创 2023-05-21 10:39:10 · 12051 阅读 · 0 评论 -
《MySQL必修课:掌握事务和锁的魔法!助你实战无敌!》
每一个写事务,都会修改BufferPool,从而产生相应的Redo/Undo日志,在Buffer Pool 中的页被刷到磁盘之前,这些日志信息都会先写入到日志文件中,如果 Buffer Pool 中的脏页没有刷成功,此时数据库挂了,那在数据库再次启动之后,可以通过 Redo 日志将其恢复出来,以保证脏页写的数据不会丢失。引入锁之后就可以支持并发处理事务,如果事务之间涉及到相同的数据项时,会使用排他锁,或叫互斥锁,先进入的事务独占数据项以后,其他事务被阻塞,等待前面的事务释放锁。对于并发率要求低的可以选择悲观锁。原创 2023-05-21 10:27:54 · 11787 阅读 · 0 评论 -
《MySQL必修课:狙击海量数据!教你如何进行索引分析与SQL查询优化!》
辅助索引的叶子节点存储的是主键值和索引字段值,通过辅助索引无法直接定位行记录,通常情况下,需要扫码两遍索引树。我们在使用索引时,不要只关注是否起作用,应该关心索引是否减少了查询扫描的数据行数,如果扫描行数减少了,效率才会得到提升。复合索引使用时遵循最左前缀原则,最左前缀顾名思义,就是最左优先,即查询中使用到最左边的列,那么查询就会使用到索引,如果从索引的第二列开始查找,索引将失效。虽然使用了索引,但是还是从主键索引的最左边的叶节点开始向右扫描整个索引树,进行了全表扫描,此时索引就失去了意义。原创 2023-05-20 15:18:45 · 13687 阅读 · 1 评论 -
《MySQL必修课:索引大决战!你不得不知道的各种索引类型和实现原理!》
复合索引可以代替多个单一索引,相比多个单一索引复合索引所需的开销更小。索引同时有两个概念叫做窄索引和宽索引,窄索引是指索引列为1-2列的索引,宽索引也就是索引列超过2列的索引,设计索引的一个重要原则就是能用窄索引不用宽索引,因为窄索引往往比组合索引更有效。与"普通索引"类似,不同的就是:索引字段的值必须唯一,但允许有空值。聚簇索引和非聚簇索引:B+Tree的叶子节点存放主键索引值和行记录就属于聚簇索引;主键索引和辅助索引:B+Tree的叶子节点存放的是主键字段值就属于主键索引;原创 2023-05-20 15:14:11 · 13630 阅读 · 1 评论 -
《MySQL必修课:存储引擎大揭秘!InnoDB和MyISAM究竟谁更强?》
Undo:意为撤销或取消,以撤销操作为目的,返回指定某个状态的操作。Undo Log:数据库事务开始之前,会将要修改的记录存放到 Undo 日志里,当事务回滚时或者数据库崩溃时,可以利用 Undo 日志,撤销未提交事务对数据库产生的影响。Undo Log产生和销毁:Undo Log在事务开始前产生;事务在提交时,并不会立刻删除undo log,innodb会将该事务对应的undo log放入到删除列表中,后面会通过后台线程purge thread进行回收处理。原创 2023-05-20 15:09:09 · 13686 阅读 · 1 评论 -
《MySQL必修课:海量数据黑科技!深入理解MySQL体系架构与运行机制》
查询执行引擎负责执行 SQL 语句,此时查询执行引擎会根据 SQL 语句中表的存储引擎类型,以及对应的API接口与底层存储引擎缓存或者物理文件的交互,得到查询结果并返回给客户端。句,此时查询执行引擎会根据 SQL 语句中表的存储引擎类型,以及对应的API接口与底层存储引擎缓存或者物理文件的交互,得到查询结果并返回给客户端。查询缓存(Cache&Buffer),这是MySQL的一个可优化查询的地方,如果开启了查询缓存且在查询缓存过程中查询到完全相同的SQL语句,则将查询结果直接返回给客户端;原创 2023-05-20 15:04:58 · 13759 阅读 · 1 评论