![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据库
文章平均质量分 93
数据库
goodluckwj
努力就会有回报
展开
-
MVCC下的RR和RC级别的区别和实现
最近在学习MVCC,在学习过程中,很疑惑RC(读已提交)和RR(可重复度)级别都用到了MVCC来进行不加锁的读,但是为什么RR级别可以解决幻读,对于RC级别不行? MVCC即多版本并发控制,能够保证多个读请求之间不会进行阻塞,根据事物隔离级别和事物id来确定当前事物能够查询到的数据的版本。对于每行记录来说,可能会存在多个版本,而这些版本会使用使用链表进行关联起来,从而控制一个事务能够查询到的数据的版本。 首先需要明白事务的隔离级别和MVCC有密切的关系,你能深入事务的隔离级...原创 2021-01-27 23:06:57 · 15536 阅读 · 7 评论 -
MySql中where和having的区别
首先我们要清楚一点,可以在不使用group by后面使用having,也可在from 表名 之后使用,就像 select * from emp having empno>1,这样写是没有错的,这一点要清楚。 1、where 后不能跟聚合函数,因为where执行顺序大于聚合函数。 2、where 子句的作用是在对查询结果进行分组前,将不符合where条件的行去掉,即...原创 2018-09-15 19:33:03 · 8752 阅读 · 1 评论 -
MySQL体系学习(索引、MVCC、锁)
推荐几篇博客,关于MySql的加锁和MVCC的理解 Mysql加锁过程和MVCC的理解: https://blog.csdn.net/u013215018/article/details/71404891 MVCC(Multi-Version Concurrent Control,多版本并发控制)简介 ...原创 2020-10-15 20:24:21 · 714 阅读 · 0 评论 -
MySql查询语句
对于一个查询语句一般有:select *from (表)where (条件)group by (分组)having (对分组进行条件筛选)order by (排序)limit (取出的行数)下面针对这些部分分别进行说明:1.对于select: 常用的有DISTINCT,即去除重复的数据,select中还可以使用聚合函数:count(),sum(),avg()...原创 2018-09-10 23:41:50 · 189 阅读 · 0 评论 -
数据库在分布式系统中使用的解决方案
想用数据库“读写分离” 请先明白“读写分离”解决什么问题 https://baijiahao.baidu.com/s?id=1614304400276051465&wfr=spider&for=pc如何实现高容量大并发数据库服务 | 数据库分布式架构设计 ? https://blog.csdn.net/lecter_13/article/deta...原创 2019-09-20 16:56:54 · 354 阅读 · 0 评论 -
磁盘I/O那些事
背景计算机硬件性能在过去十年间的发展普遍遵循摩尔定律,通用计算机的CPU主频早已超过3GHz,内存也进入了普及DDR4的时代。然而传统硬盘虽然在存储容量上增长迅速,但是在读写性能上并无明显提升,同时SSD硬盘价格高昂,不能在短时间内完全替代传统硬盘。传统磁盘的I/O读写速度成为了计算机系统性能提高的瓶颈,制约了计算机整体性能的发展。硬盘性能的制约因素是什么?如何根据磁盘I/O特性来进行系统...转载 2019-10-10 16:41:38 · 426 阅读 · 0 评论