前言 最近突发新型肺炎,本来只有七天的春节假期也因为各种封锁延长到了正月十五,在家实在闲的蛋疼便重新研究了一下Mysql数据库的相关知识,特此总结梳理一下。本文主要围绕以下几点进行: 1、Mysql的索引与引擎 2、事务隔离级别 3、Mysql的九种锁 4、几点常用规范 一、Mysql的索引与引擎 ...
分类:
数据库 时间:
2020-01-31 23:12:56
阅读次数:
182
1、什么是事务: 事务是逻辑上的一组操作,要么都执行,要么都不执行。 例如:银行转账,A转账1000元给B,这个转账就涉及到两个操作:将A余额减去1000元,将B余额加上1000元。但是外一在转账的过程中银行的系统奔溃,导致A只减了,B没有加,这样就出错了。事务就是要保证这两个操作,要么都成功,要么 ...
分类:
其他好文 时间:
2020-01-26 20:56:16
阅读次数:
65
锁模块的常见问题 1、MyISAM和InnoDB关于锁方面的区别是什么? 2、数据库事务的四大特性? 3、事务隔离级别以及各级别下的并发访问问题? 4、InnoDB可重复读隔离级别下如何避免幻读? 5、RC、RR级别下的InnoDB的非阻塞读如何实现? 1、MyISAM和InnoDB关于锁方面的区别 ...
分类:
其他好文 时间:
2020-01-26 20:52:40
阅读次数:
84
事务隔离级别 | 隔离级别 | 脏读 | 不可重复读 | 幻读 | | : | : | : | : | | 读未提交 | 可以出现 | 可以出现 | 可以出现 | | 读提交 | 不允许出现 | 可以出现 | 可以出现 | | 可重复读 | 不允许出现 | 不允许出现 | 可以出现 | | 序列化 ...
分类:
数据库 时间:
2020-01-23 15:18:47
阅读次数:
98
索引定义索引类型索引注意事项事务隔离级别read uncommitted 未提交读read committed 提交读repeatable 重复读Serializable可串行化隔离界别查询数据库锁数据类型INTvarchar时间类型Java对应Mysql类型常用函数常用Sql存储引擎InnoDBM... ...
分类:
数据库 时间:
2020-01-21 23:44:24
阅读次数:
180
脏读 读取未提交数据 。脏读即事务A读取到事务B未提交的数据,如果此时事务B数据回滚,事务A仍然是使用旧的数据即是脏的数据。 |顺序|事务A|事务B| |: |: |: | |1||开始事务| |2|开始事务|| |3||查询余额2000元| |4||取出1000元剩余1000元| |5|查询余额剩 ...
分类:
数据库 时间:
2020-01-21 10:55:43
阅读次数:
138
1. 前言 InnoDB 通过 MVCC 和 NEXT-KEY Locks,解决了在可重复读的事务隔离级别下出现幻读的问题。MVCC 我先挖个坑,日后再细讲,这篇文章我们主要来谈谈那些可爱的锁。 2. 什么是幻读? 幻读是在可重复读的事务隔离级别下会出现的一种问题,简单来说,可重复读保证了当前事务不 ...
分类:
数据库 时间:
2020-01-20 19:14:54
阅读次数:
361
了解事务隔离级别之前先要了解数据库在高并发环境下会遇到的几个问题: 1. 脏读: 事务 A 读取了事务 B 更新的数据,然后 B 执行回滚操作,那么 A 读到的就是脏数据。 2. 不可重复读: 事务 A 多次读取同一个数据,事务 B 在事务 A 多次读取的过程中,对数据做了更新并提交,导致事务 A ...
分类:
数据库 时间:
2020-01-13 22:17:01
阅读次数:
126
本篇文章会介绍以下几个概念:事务,事务隔离级别,spring事务的传播模式。在介绍事务时会引出原子性的概念,在介绍事务隔离级别的时候会引出脏读和幻读的概念。 事务 什么是事务? 事务最开始是数据库中的概念,它把一系列的操作统一为一个整体,这一系列的操作要么同时成功,要么同时失败。一个事务基本的操作是 ...
分类:
其他好文 时间:
2020-01-12 20:16:07
阅读次数:
60
一、锁 1、锁的定义 锁即是一种用来协调多线程或进程并发使用同一共享资源的机制 2、锁的分类 从性能上分类:乐观锁和悲观锁 从数据库操作类型上分类:读锁和写锁 从操作粒度上分类:表锁和行锁 2.1 从性能上分类 2.1.1 乐观锁 乐观锁顾名思义就是操作的时候很乐观,认为操作不会产生并发问题(不会有 ...
分类:
数据库 时间:
2020-01-03 19:48:11
阅读次数:
158