
MySQL
文章平均质量分 87
数据库
澡澡洗澡澡
菜鸡一枚
展开
-
一文彻底搞懂 Redis 缓存与数据库一致性
一般的业务场景都是读多写少的,当客户端的请求太多,对数据库的压力越来越大,引入缓存来降低数据库的压力是必然选择,目前业内主流的选择基本是使用 Redis 作为数据库的缓存。但是引入缓存以后,对我们系统的设计带来了很大的挑战,其中缓存和数据库的数据一致性问题就是一个非常棘手的问题。原创 2024-04-10 16:33:32 · 4205 阅读 · 0 评论 -
一文彻底搞懂Elasticsearch
Elasticsearch是一个开源的分布式搜索和分析引擎,基于Apache Lucene构建,提供了全文搜索、结构化搜索、分析等功能。它主要用于实时搜索、日志和事件数据分析、全文搜索等场景。原创 2024-04-09 21:15:23 · 1448 阅读 · 0 评论 -
一文彻底搞懂MySQL中事务的五种分类
事务是指作为单个逻辑工作单元执行的一系列操作,这些操作要么全部成功完成,要么全部失败回滚,从而保证数据库操作一致性和完整性的重要机制,它确保了数据库在并发环境下的正确性和可靠性。原创 2024-03-27 18:53:52 · 2558 阅读 · 0 评论 -
一文彻底搞懂MySQL索引
MySQL索引是一种数据结构,用于提高数据库查询效率。它可以快速定位到表中符合特定条件的数据行,从而加快查询速度。索引通常是根据表中的一个或多个字段创建的,它们存储了对应字段值的排序方式和位置信息,使得数据库系统可以更快地定位到所需的数据行。原创 2024-03-24 16:26:07 · 975 阅读 · 0 评论 -
一文彻底搞懂分库分表
分库:从单个数据库拆分成多个数据库的过程,将数据散落在多个数据库中。分表:从单张表拆分成多张表的过程,将数据散落在多张表内。原创 2024-03-19 16:15:50 · 1424 阅读 · 0 评论 -
一文彻底搞懂MySQL建表规范
文章目录1. 表设计规范2. 索引规范3. SQL语句规范4. 散表规范1. 表设计规范库名、表名、字段名使用小写字母,使用“_”分割,不超过12个字符。使用InnoDB存储引擎。存储精确浮点数使用DECIMAL替代FLOAT和DOUBLE。使用UNSIGNED存储非负数值,使用INT UNSIGNED存储IPv4。整形定义中不添加长度,例如使用INT而不是INT(4)。使用短数据类型,例如取值范围为0-80时,使用TINYINT UNSIGNED。不建议使用ENUM类型,使用TINYI原创 2024-03-11 17:22:29 · 1389 阅读 · 0 评论 -
一文彻底搞懂MyISAM和InnoDB区别
MySQL 5.5版本之前,MyISAM引擎是MySQL的默认存储引擎,拥有全文索引、压缩和空间函数等特性,但其不支持事务和行级锁定,最致命的缺陷是崩溃后无法安全恢复数据。然而,自MySQL 5.5版本起,InnoDB成为MySQL的默认存储引擎,其强大的事务支持、行级锁定以及崩溃恢复功能成为用户的首选。原创 2024-03-10 18:22:59 · 405 阅读 · 0 评论 -
一文彻底搞懂SQL优化
SQL(Structured Query Language)优化是指对 SQL 查询语句进行调整和改进,以提高数据库查询性能和效率的过程。以下是一些常见的 SQL 优化技巧原创 2024-02-24 21:19:55 · 583 阅读 · 0 评论 -
一文帮你彻底搞懂MVCC
MVCC,即Multi-Version Concurrency Control (多版本并发控制)。它是一种并发控制的方法,用于在多线程或多进程环境下,保证数据的一致性和可见性。通俗的讲,数据库中同时存在多个版本的数据,并不是整个数据库的多个版本,而是某一条记录的多个版本同时存在,在某个事务对其进行操作的时候,需要查看这一条记录的隐藏列事务版本id,比对事务id并根据事物隔离级别去判断读取哪个版本的数据。数据库隔离级别读已提交、可重复读。原创 2024-01-27 09:30:02 · 1642 阅读 · 0 评论