MySQL
文章平均质量分 95
MySQL体系结构、增删改查命令详解、MySQL的索引原理、MySQL的MVCC和锁机制以及缓存策略详解
Lion Long
一个热爱分享高性能服务器后台开发知识的博主,目标是通过理论与代码实践的结合,让世界上看似难以掌握的技术变得易于理解与掌握。技能涵盖了多个领域,包括C/C++、Linux、Nginx、MySQL、Redis、fastdfs、kafka、Docker、TCP/IP、协程、DPDK等。
展开
-
解锁MySQL性能瓶颈!超实用的10种优化方法大揭秘
本文涵盖了索引设计、SQL查询优化、缓存配置、并发控制等多个方面。读者可以通过阅读该文章,了解如何有效地解决MySQL性能问题,并提升系统的响应速度和稳定性。以上仅为MySQL性能监控和调优的一些常用方法,实际应用中还需要结合具体场景和实际需求来选择和优化相应的策略。建议在进行性能优化前,先对数据库系统进行全面的评估和分析,并考虑合适的监控工具和方法。原创 2023-07-13 23:51:43 · 11599 阅读 · 0 评论 -
SQL 查询优化:为何 SELECT * 会拖慢你的数据库速度
在数据库查询中,SELECT * 语句虽然方便快捷,但却可能带来严重的性能问题。由于它会检索所有列和行数据,导致系统资源的浪费和查询效率的下降。此外,过多的数据传输也会增加网络负担,进一步影响系统性能。本文将探讨 SELECT * 带来的具体问题,并提供优化查询效率的方法。通过选择显式字段和合理使用索引,您可以显著提升数据库的性能和响应速度。原创 2023-07-01 23:45:37 · 6460 阅读 · 5 评论 -
MySQL版本从5.7跃迁至8.0:原因、功能与升级策略
MySQL 8.0对于数据管理带来了很多改变,使得MySQL成为一个更强大、更灵活和更易于使用的数据库管理系统。MySQL 8.0提供了更好的JSON支持,包括更快的JSON函数和表达式,以及新的JSON数据类型和索引。MySQL 8.0引入了窗口函数,这些函数可以用来计算分析函数的结果并根据指定的排序规则进行分组。MySQL 8.0提供了更好的空间数据支持,包括新的空间数据类型和函数,例如ST_Distance_Sphere函数,它可以计算两个点之间的球面距离。原创 2023-06-23 11:50:47 · 1154 阅读 · 5 评论 -
一文理解MySQL的For Update行级锁
For update是MySQL中用于实现行锁的一种语法,其主要作用是在SELECT查询语句中加上FOR UPDATE子句,以保证查询结果集中的每一行都被锁定,避免其他事务对这些行进行修改。在执行For update语句时,MySQL会首先获取表级共享锁,然后再根据WHERE条件锁定符合条件的行。锁定的范围包括了WHERE条件筛选出来的所有行,即使有些行并不满足WHERE条件。原创 2023-06-22 12:15:02 · 5754 阅读 · 8 评论 -
SQL高级查询详解:从基础到内外联表查询全面解析
本文全面深入地介绍了SQL(结构化查询语言)的高级查询技术,从基础查询到更复杂的查询操作,一步步引导读者掌握SQL查询的精髓。首先,文章通过创建和使用SQL表进行实例操作,为读者构建了一个清晰的SQL查询环境。之后,文章详细阐述了基础查询、条件查询、范围查询、判空查询、模糊查询、分页查询、排序查询、聚合查询以及分组查询等常用高级查询技术,同时借助实际代码示例进行详细演示,使理论知识与实践操作紧密结合。此外,文章还深入探讨了联表查询,包括内联、左联、右联和全联,并通过图像展示不同联表方式的概念。原创 2023-06-17 00:01:23 · 1630 阅读 · 1 评论 -
数据库设计的三范式与反范式:优化数据结构,提升数据库性能的秘籍
三范式设计详解。范式可以避免数据冗余,减少数据库的空间,减小维护数据完整性的麻烦。但是采用数据库范式化设计,可能导致数据库业务涉及的表变多,并且造成更多的联表查询,将导致整个系统的性能降低。因此处于性能考虑,可能需要进行反范式设计。原创 2022-10-26 15:55:51 · 1058 阅读 · 0 评论 -
数据库操作指南:轻松掌握CRUD和高级查询技巧,轻松实现数据操作
CRUD数据库增删改查操作。高级数据库查询,分组聚合。联表查询。原创 2022-10-27 16:07:27 · 5265 阅读 · 0 评论 -
MySQL事务原理之MVCC和锁机制
MVCC原理(read view、聚集索引的隐藏列、快照读、当前读)。redolog和undolog的作用。锁 机制(锁类型、锁算法、锁兼容),包括关于锁的讨论。并发死锁:相反加锁顺序死锁,锁冲突死锁以及如何查看死锁。避免死锁的方式原创 2022-11-02 15:36:38 · 1849 阅读 · 0 评论 -
MySQL体系结构解密:深入探索数据库内部工作原理的奥秘
了解SQL的命令术语DML、DDL、DCL、DQL、TCL。数据库专业术语:数据库、数据表、主键、外键、复合键、行、列、索引。MySQL体系架构由 连接池、系统管理和工具组件、SQL接口、分析器、优化器、缓冲组件、插件式存储引擎、物理文件 几个部分组成。原创 2022-10-26 14:48:37 · 5921 阅读 · 4 评论 -
MySQL索引原理之索引与约束
一定要确定一个主键索引的原因是 主键索引对应的是聚集索引B+树,所有的数据要存储在主键对应的B+树中。原创 2022-10-30 13:38:32 · 690 阅读 · 0 评论 -
MySQL之视图和触发器
视图( view )是一种虚拟存在的表,是一个逻辑表,本身并不包含数据。其内容由查询定义。一般,视图只做查询,不做更删改。触发器(trigger)是 MySQL 提供给程序员和数据分析员来保证数据完整性的一种方法。权限管理:创建用户,授权,对视图授权,刷新权限。远程连接方法。原创 2022-10-28 11:19:07 · 1273 阅读 · 0 评论 -
MySQL索引原理剖析
索引存储、innodb架构B+树和buffer pool、最左匹配原则、索引下推、索引覆盖、索引失效、索引原则。覆盖所有是一种数据查询方式。MySQL通过自适应hash索引快速判断某个页是否在缓存中(buffer pool)。MySQL的索引实现使用B+树而不是使用其他树的原因是 降低磁盘IO以及方便范围查询。原创 2022-10-30 13:56:21 · 842 阅读 · 0 评论 -
深入探索SQL优化:利用慢查询日志和explain提升数据库效率
数据库性能取决于数据库级别的多个因素,例如表、查询和配置设置。这些软件构造会导致硬件级别的 CPU 和 I/O 操作,您必须将其最小化并尽可能高效。典型用户的目标是从其现有软件和硬件配置中获得最佳数据库性能。高级用户寻找机会改进MySQL软件本身,或开发自己的存储引擎和硬件设备来扩展MySQL生态系统。(1)在数据库级别进行优。(2)在硬件级别进行优化。(3)平衡便携性和性能。当出现SQL比较慢时,需要进行如下步骤进行优化:(1)找到SQL语句。原创 2022-10-31 11:24:40 · 544 阅读 · 0 评论 -
MySQL缓存策略详解
MySQL缓存方案目的分析:缓存层的作用,缓存层选择,场景分析。提升MySQL访问性能的方式:MySQL主从复制,读写分离,连接池,异步连接。redis作为主数据库的常用方法。缓存方案:缓存和MySQL一致性状态分析,制定读写策略。同步方案:canal,go-mysql-transfer。缓存方案的故障问题及解决:缓存穿透,缓存击穿,缓存雪崩。缓存方案的弊端是不能处理多语句的事务。原创 2022-11-03 15:06:45 · 6251 阅读 · 3 评论 -
MySQL事务大揭秘:事务概述和隔离级别解析
事务的特征、生命周期、执行过程。MySQL事务的ACID特性。事务的隔离级别以及不同隔离级别并发异常(脏读、不可重复读、幻读以及它们的区别)。原创 2022-11-01 14:31:33 · 5258 阅读 · 8 评论