首页 > 数据库 >再次思考一下Mysql的ACID

再次思考一下Mysql的ACID

时间:2023-04-12 15:35:10浏览次数:34  
标签:事务 隔离 并发 read 访问 思考 Mysql ACID

ACID是事务的特性:一致性、原子性、隔离性、持久性。(记不住的话,一原隔持-依然搁置)

事务本身来讲,是具有强隔离性的。即一个事务想访问另外一个事务正在访问的数据,需要排队。这种强隔离性,导致并发情况下的访问性能受限。但是有的时候,隔离性弱一点,可以带来的并发访问性能的提升,这个正是MVCC的思想:牺牲部分隔离性,换取更高并发访问性能。

但是,牺牲隔离性,所带来的并发访问的问题,必须是要被接受的。

弱隔离性——>强隔离性,有四个等级:(read uncommited) (read commited) (repeated read) (serializeable) 

(read uncommited) 最弱隔离性,完全不做控制,会出现各种情况(脏读、不可重复读、幻读)

(read commited)

(repeated read)

(serializeable)  最强隔离性,等同于完全加锁

 

标签:事务,隔离,并发,read,访问,思考,Mysql,ACID
From: https://www.cnblogs.com/hx943685213/p/17309944.html

相关文章

  • mysql——date_format(),str_to_date()函数
    date_format():类似python中的strftime: 将给定格式的日期时间对象转换为字符串。日期时间对象=>字符串,控制输出格式selectdate_format(datetime的字段,‘%Y-%m-%d’)括号中前面是你要格式化的字段,后面是具体要格式化成什么样式。 str_to_date():类似python中的strptime:将字......
  • MySQL安装与配置
    一,安装MySQL(绿色解压版)打开下载链接,选择版本5.7.24下载自己电脑对应的位数MySQL::DownloadMySQLCommunityServer(ArchivedVersions)---MySQL::下载MySQLCommunityServer(存档版本) 二,解压MySQL下载的文件到D盘 三,环境变量打开资源管理器右击此电脑点击......
  • MySQL 中的 distinct 和 group by 哪个效率更高?
     1、distinct用法 语法:SELECTDISTINCTcolumnsFROMtable_nameWHEREwhere_conditions;举例:   多列去重:distinct多列的去重,则是根据指定的去重的列信息来进行,即只有所有指定的列信息都相同,才会被认为是重复的信息。    2、groupby用法  语法:SE......
  • mysql连接数查看
    12showvariableslike '%max_connection%';查看最大连接数set globalmax_connections=1000;       重新设置最大连接数1234567891011mysql>showstatuslike  'Threads%';+-------------------+-------+|Variable_name  ......
  • 使用MySql8.0+项目无法连接数据库问题
    MySql连接字符串:jdbc:mysql://localhost:3306/ssmbuild?useSSL=true&useUnicode=true&characterEncoding=utf8&serverTimezone=Asia/Shanghai注意这里的useSSL为true:表示使用安全连接经过查阅网络博客发现将useSSL修改为false可以正常连接具体原因之后更新......
  • mysql插入数据如果存在则忽略
    经常有一种场景,某类数据只能在一张表中存在一条,我们会创建唯一索引进行约束,但是如果重复插入就报错了,所以开发上一版都会先查一次然后再insert。mysql有个简单的写法,基于已经创建的索引,如果存在的话,那么就忽略这条记录的插入。不废话了,上代码吧。createtableuserabc(username......
  • 五、基于PVC+StatefulSet实现的MySQL主从架构
    案例(部署mysql)本节使用StatefulSet控制器部署一个MySQL集群,然后进行宕机测试,观察集群是否可以正常恢复使用并且不丢失数据。实现的集群有如下特征:是一个主从复制的MySQL集群1个主节点,多个从节点从节点能够水平扩展所有的写操作,只能在主节点上执行......
  • 力扣1113(MySQL)-报告的记录(简单)
    题目:动作表:Actions 此表没有主键,所以可能会有重复的行。action字段是ENUM类型的,包含:('view','like','reaction','comment','report','share')extra字段是可选的信息(可能为null),其中的信息例如有:1.报告理由(areasonforreport)2.反应类型(atypeo......
  • nodejs连接mysql数据库
      https://www.cnblogs.com/hechunfeng/p/17308654.html这个是安装数据库   1.我们先建一个表和插入一下字段,这些都是自己弄的    2.安装npminstallmysqlconst{createPool}=require('mysql');constpool=createPool({host:"localhost",......
  • 记一次kvm虚机mysql数据库磁盘扩容操作步骤及其问题小坑
    背景:业务量持续增加,原来规划的1T磁盘空间不足以支撑业务发展存储使用,需要对数据库磁盘进行扩容。目前物理机有新增了2块3.5Tssd的数据盘用于数据库虚机磁盘扩容使用。需要安排时间对其进行操作扩容。操作思路:1、完成磁盘raid1操作,将新磁盘挂载到物理机上并添加到kvm的存储空间......