
MySQL
文章平均质量分 96
&u204
这个作者很懒,什么都没留下…
展开
-
缓存双写一致性
binlog日志可以记录数据库所有执行的DDL 和 DML 等数据库更新事件的语句,但是不包含没有修改任何数据的语句(如数据查询语句select、| ROW模式 除了记录sql语句之外,还会记录每个字段的变化情况,能够清楚的记录每行数据的变化历史,但会占用较多的空间。A线程先成功删除了redis里面的数据,然后去更新mysql,此时mysql正在更新中,还没有结束。在业务程序运行的时候,统计下线程读数据和写缓存的操作时间,自行评估自己的项目的读数据业务逻辑的耗时,原创 2024-08-06 23:33:20 · 999 阅读 · 0 评论 -
[MySQL]事务02
MVCC (Multiversion Concurrency Control),多版本并发控制。顾名思义,MVCC 是通过数据行的多个版本管理来实现数据库的并发控制。这项技术使得在InnoDB的事务隔离级别下执行一致性读操作有了保证。换言之,就是为了查询一些正在被另一个事务更新的行,并且可以看到它们被更新之前的值,这样在做查询的时候就不用等待另一个事务释放锁。Readview就是事务在使用MVCC机制进行快照读操作时产生的读视图。当事务启动时,会生成数据库系统当前的一个快照。原创 2024-04-24 00:35:51 · 953 阅读 · 0 评论 -
[MySQL]范式和事务01
*事务:**一组逻辑操作单元,使数据从一种状态变换到另一种状态。**事务处理的原则:**保证所有事务都作为一个工作单元来执行,即使出现了故障,都不能改变这种执行方式。当在一个事务中执行多个操作时,要么所有的事务都被提交(commit),那么这些修改就永久地保存下来;要么数据库管理系统将放弃所作的所有修改,整个事务回滚(rollback)到最初状态。事务需要保证原子性,也就是事务中的操作要么全部完成,要么什么也不做。事务执行过程中可能遇到各种错误,比如服务器本身的错误操作系统错误,甚至是突然断电。原创 2024-04-23 23:24:56 · 1018 阅读 · 0 评论 -
[MySQL]索引03
就是索引列+主键包含SELECT到FROM之间查询的列。原创 2024-04-23 12:31:39 · 769 阅读 · 0 评论 -
[MySQL]MySQL的逻辑架构
中的,而所谓的表空间只不过是InnoDB对文件系统上一个或几个实际文件的抽象,也就是说我们的数据说到底还是存储在磁盘上的。在InnoDB存储引擎中,有一部分数据会放到内存中,缓冲池占了这部分内存的大部分,它用来存储各种数据缓存,其中包括了数据页,索引页,插入缓冲,锁信息,自适应Hash和数据字典信息等.这个原则是一个重要的原则.毕竟缓冲池大小是有限的,比如磁盘有200G,内存只有16G,缓冲池大小只有1G,我们无法把所有的数据加载到缓冲池里面,所以就。不同的存储引擎具有的功能不同,这样。原创 2024-04-23 00:10:11 · 1297 阅读 · 0 评论 -
[MySQL]索引02
MySQL 中的 Memory 存储引擎支持 Hash 存储,如果我们需要用到查询的临时表时,就可以选择 Memory 存储引擎,把某个字段设置为 Hash 索引,比如字符串类型的字段,进行 Hash 计算之后长度可以缩短到几个字节。当字段的重复度低,而且经常需要进行。Hash 索引存在着很多限制,相比之下在数据库中 B+ 树索引的使用面会更广,不过也有一-些场景采用 Hash 索引效率更高,比如在键值型(Key-Value)数据库中,即使多个存储引擎支持同一种类型的索引,但是他们的实现原理也是不同的。原创 2024-04-23 00:09:59 · 701 阅读 · 0 评论 -
[MySQL]存储引擎和索引01
默认事务型引擎对内存要求较 高。原创 2024-04-23 00:09:39 · 857 阅读 · 0 评论