
mysql
Rainly2000
硕士在读,口头禅是 业精于勤荒于嬉,行成于思毁于随,人生有着无限的可能不要轻易给自己设限
展开
-
关系型数据库事务控制的三级封锁协议
1、一级封锁协议事务 T 要修改数据 A 时必须加 X 锁,直到 T 结束才释放锁。可以解决丢失修改问题,因为不能同时有两个事务对同一个数据进行修改,那么事务的修改就不会被覆盖。2、二级封锁协议在一级的基础上,要求读取数据 A 时必须加 S 锁,读取完马上释放 S 锁。可以解决读脏数据问题,因为如果一个事务在对数据 A 进行修改,根据 1 级封锁协议,会加 X 锁,那么就不能再加 S 锁了,也就是不会读入数据。3、三级封锁协议在二级封锁协议的基础上添加约束 直到事务结束之后才能释放S锁,因原创 2022-05-29 09:40:25 · 409 阅读 · 0 评论 -
浅谈关系型数据库并发一致性问题
在并发环境下事务的一致性很难保证,因此会出现很多的并发一致性问题。具体的如下所示:一、丢失修改问题丢失修改指一个事务的更新操作被另外一个事务的更新操作替换。一般在现实生活中常会遇到,例如:T1 和 T2 两个事务都对一个数据进行修改,T1 先修改并提交生效,T2 随后修改,T2 的修改覆盖了 T1 的修改。二、读脏数据读脏数据指在不同的事务下,当前事务可以读到另外事务未提交的数据。例如:T1 修改一个数据但未提交,T2 随后读取这个数据。如果 T1 撤销了这次修改,那么 T2 读取的数据是脏数据。原创 2022-05-29 09:33:53 · 181 阅读 · 0 评论 -
大话Mysql四:Mysql事务之MVCC多版本并发控制
一、Mysql mvcc 就是在一个事务开启之前对其数据进行快照备份,通过读取快照的方式来确保同一个事务前后读取到的数据是相同的,这就叫多版本的并发控制MVCC 多版本并发控制规则:1、一个事务能看到的数据版本:(1)、第一个查询之前已经提交的事务(2)、本事务的修改2、一个事务无法看到的版本:(1)、第一个查询之后创建的事务(事务ID相较于当前事务Id要大的事务)(2)、活跃(未提交)的事务的修改二、MVCC 原理Innodb引擎为每行记录都实现了两个隐藏字段: DB_TRX_ID 和原创 2022-02-24 16:15:55 · 495 阅读 · 0 评论 -
大话Mysql三:mysql 备份恢复之 物理备份与逻辑备份的区别比较
一、对于物理备份来说有以下特点:1、物理备份包含部分或者是全部的mysql数据库文件数据2、由于物理备份数据往往只是包含没有被转换的物理数据所以物理备份在做数据恢复的时候往往比逻辑备份恢复的更快。3、物理备份输出文件的大小比物理备份输出文件更加的轻巧,因此物理备份适合去备份那些重要的数据,要求能够在短时间内即可恢复的数据4、物理备份数据还包括日志文件等一系列的文件数据5、物理备份最好是在mysql服务器停止的前提下进行才是最好的,如果要在运行时进行物理数据备份那就应该做好加锁操作以免由于并发操作导原创 2022-02-23 13:48:59 · 1649 阅读 · 0 评论 -
大话MySql二:Mysql数据库性能优化
PS:随着业务的发展,数据量越来越大了。不能再像之前一样随意查询了,数据库优化势在必行。所以这里总结一下mysql数据库有哪些优化的方法一、数据库优化的大致分类1、数据库层面的优化2、硬件层面的优化数据库层面的优化:(1)、影响数据库查询速度的几大因素一是表结构的设计是否合理, 特别是表中的列是否设置了合适的数据类型,是否设置了合适的数据长度以及是否适配了实际的工作场景,例如需要经常更新的表往往有着较少的列,而需要经常分析大量数据的表则有着更多的列。所以一切还是以实际情况为主。(2)、建立的索原创 2021-12-26 15:52:07 · 113 阅读 · 0 评论 -
如何保证缓存与数据库的数据双写一致性?
如何保证缓存和数据库的双写一致性1、最经典的缓存+数据库读写的模式,就是 Cache Aside Pattern。(1)、读的时候,先读缓存,缓存没有的话,就读数据库,然后取出数据后放入缓存,同时返回响应(2)、更新的时候先更新数据库,再去删除缓存之所以是先删除缓存而不是去更新缓存就是为了避免大量的更新更新缓存操作所带来的资源消耗,并且大量被更新的数据不一定经常被使用到,也就是说缓存应该只是用到它的时候采取计算缓存,这样就可以避免大量的冷数据存储到缓存中去。缓存不一致问题的解决方案:1、最初级的原创 2021-12-21 22:50:25 · 699 阅读 · 0 评论 -
大话mysql一:mysql索引存储结构、使用
mysql索引揭秘介绍mysql的索引在innodb和myism中的存储结构以及索引在mysqlinnodb引擎中的使用、分析sql语句的执行原文链接:mysql索引原创 2020-11-22 18:04:39 · 116 阅读 · 0 评论