
MySQL
文章平均质量分 97
MySQL 数据结构,如何优化以及底层默认支撑给我们的优化点,一些常用的工具介绍使用
vnjohn
vnjohn,博主名字的简写,是一名专注于后端领域的程序猿,借用歌名“自己”里的歌词来时刻提醒自己要不断学习,不断思而前行:“第一要保持希望在每天清晨太阳升起,第二切记不要与自身的平凡为敌,第三与自己所处的现在促膝长谈”
展开
-
Redis GEO 类型与 API 结合,地理位置优化的绝佳实践
该篇博文,主要先是进行「地理位置」生产性能问题的全流程演化,从 MySQL -> +索引 -> 不 + 索引,使用了案例 SQL 进行执行计划的分析,从而得出了 MySQL 在特殊场景下不适用于做地理位置的筛选工作「因为它本身基于磁盘的,在大数据量情况下,不能肆意打压瓶颈」;随即采用了 Redis GEO 类型来优化了地理位置的筛选工作,结合 RedisTemplate、Redisson 客户端 API 实战函数进行讲解,从零到一教你如何运用程序结合 Redis GEO 数据类型完成地理位置的优化工程原创 2023-09-22 09:46:33 · 5896 阅读 · 61 评论 -
解析 MySQL 锁机制:共享锁、排它锁、间隙锁、意向锁等,保障数据安全与高并发的秘密武器
该篇博文讲解了 MySQL 中各种会发生的锁,包括显式、隐式的锁,共享锁、排它锁、意向锁、自增锁、间隙锁,说明了解决并发事务的问题的两种方案,以及通过间隙锁如何解决可重复读隔离级别下出现幻读的问题,阐述了 InnoDB 存储引擎行锁模式及加锁方法,最后,通过实际的小案例演示了死锁的发生以及如何通过 MySQL 自带的命令查看死锁解决的一个过程。原创 2023-06-14 13:29:59 · 4729 阅读 · 4 评论 -
MySQL 日志体系解析:保障数据一致性与恢复的三位英雄:Redo Log、Undo Log、Bin Log
该篇博文从浅入深的讲解了 MySQL 中三大日志 > Redo Log、Undo Log、Bin Log 三大日志体系,Redo Log、Undo Log 是 InnoDB 存储引擎内的日志,Bin Log 是 MySQL Server 层面的日志,接着仔细说明了它们各自的作用,包括了写入的执行过程、写入的方式,实战方面,演示了如何使用 Bin Log 恢复误删的数据,最后,分析了为什么要采用两阶段提交方式来完成 Redo Log、Bin Log 记录以及数据更新!原创 2023-06-13 23:54:33 · 3382 阅读 · 5 评论 -
深度解析 MySQL 事务、隔离级别和 MVCC 机制:构建高效并发的数据交响乐
该篇博文,简而言之说明了 MySQL 中事务四大特性,详细阐述了由于四种隔离级别下各自会产生什么样的问题,从实战方面进行演示了 MySQL 基于事务上的一些基本操作,最重要的是讲述了 InnoDB 引擎下的 MVCC 机制,有提及它的版本链、ReadView 以及其下一些比较重要的概念,最后,重点说明了 READ COMMITTED 读已提交、REPEATABLE READ 可重复读,这两种隔离级别会是如何解决一些并发问题以及会在什么样的场景下发生一些异常问题。希望您能够喜欢,能帮助到你是我最大的快乐!原创 2023-06-11 21:20:18 · 2651 阅读 · 0 评论 -
MySQL 数据访问与查询优化:提升性能的实战策略和解耦优化技巧
该篇博文简要分析了为什么会查询慢?以不同角度的优化方式提高数据访问的效率,简单地分析 MySQL 语法解析器、查询优化器处理的过程,以理论+实战结合方式加深印象,提高辨识度;最主要的大数据量查询优化、海量数据优化处理,这些场景都是博主在实际工作中处理过的,实战是校验真理的唯一标准,解耦设计、异步、缓存、适当反范式化设计等,都是一些日常中会使用的技术场景,后面会有文章主要讲述 MySQL 锁、MVCC、分区等概念|实战原创 2023-05-30 19:16:00 · 2435 阅读 · 6 评论 -
MySQL 数据结构优化与索引细节解析:打造高效数据库的优化秘笈
该篇博文从零到一讲解了数据库索引使用到的数据结构以及它与存储引擎之前的关联关系,为什么要使用 B+ Trees 而不使用 B Trees?数据库表文件的存储方式:聚簇、非聚簇;说到了索引的类型以及这方面是如何去进行优化的,最重要的是,优化细节这个章节,不仅仅如何告知优化、生产如何调优、调优的细节如何处理、如何避免生产慢 SQL;最后,通过索引监控命令得知了系统使用 SQL 情况!希望你能够喜欢!后续的`大数据量查询优化、海量数据解耦优化处理`敬请期待~原创 2023-05-18 16:00:37 · 2633 阅读 · 14 评论 -
构建优化之城:MySQL 数据建模、数据类型优化与索引常识全面解析
该篇博文,先着重讲了数据库设计方面的优化 > 存储引擎、合理使用范式以及反范式、表结构适当拆分避免过于臃肿、字符集选择,最重要的是在数据表中数据类型优化部分,应用了一些 MySQL 语法糖🍬,数据类型的选择、数据类型长度的可控性,最后,先简单介绍了索引优化部分的一些名词以及索引分类,下篇博文会继续来整体介绍如何使用索引进行优化、索引的数据结构是怎样的,大数据量查询优化、海量数据解耦优化处理 部分在一定程序上也依赖于索引,当然最大程度上还是要基于业务程序代码来控制的原创 2023-05-16 01:11:51 · 2711 阅读 · 5 评论 -
MySQL 内置的监控工具介绍及使用篇
主要是用来监控我们的数据库,执行在一个比较低的级别里面,Performance Schema 开启还是有必要的,虽然开启之后会消耗一部分系统资源,但是损失一点系统资源后面可以更快的定位到问题.MySQL 使用作为后端人员是必须牢牢掌握的一门技术,而调优的路上是作为后端晋升的必经之路,所以,先了解 MySQL 本身拥有的监控工具也是必备的,当你后面涉及到数据库调优的东西时,就可以从这些工具上入手了!!原创 2023-01-31 14:41:51 · 5707 阅读 · 0 评论