共享锁(S锁):又称为读锁,可以查看但无法修改和删除的一种数据锁。如果事务T对数据A加上共享锁后,则其他事务只能对A再加共享锁,不能加排它锁。获准共享锁的事务只能读数据,不能修改数据。 共享锁下其它用户可以并发读取,查询数据。但不能修改,增加,删除数据。资源共享. 排它锁(X锁):又称为写锁、独占锁 ...
分类:
其他好文 时间:
2020-02-03 18:48:25
阅读次数:
81
01 引擎选择 目前广泛使用的是MyISAM和InnoDB两种引擎: MyISAMMyISAM引擎是MySQL 5.1及之前版本的默认引擎,它的特点是: 不支持行锁,读取时对需要读到的所有表加锁,写入时则对表加排它锁 不支持事务 不支持外键 不支持崩溃后的安全恢复 在表有读取查询的同时,支持往表中插 ...
分类:
数据库 时间:
2020-02-02 13:42:55
阅读次数:
108
实验环境:mysql5.6 存储引擎:innoDB 我们在操作数据库的时候,可能会由于并发问题而引起的数据的不一致性(数据冲突) 乐观锁 乐观锁不是数据库自带的,需要我们自己去实现。乐观锁是指操作数据库时(更新操作),想法很乐观,认为这次的操作不会导致冲突,在操作数据时,并不进行任何其他的特殊处理( ...
分类:
数据库 时间:
2020-01-15 23:11:26
阅读次数:
101
原文:MySQL中的锁(表锁、行锁,共享锁,排它锁,间隙锁) 作者:唐大麦 锁是计算机协调多个进程或线程并发访问某一资源的机制。在数据库中,除传统的 计算资源(如CPU、RAM、I/O等)的争用以外,数据也是一种供许多用户共享的资源。如何保证数据并发访问的一致性、有效性是所有数据库必须解决的一 个问 ...
分类:
数据库 时间:
2020-01-11 15:01:37
阅读次数:
104
参考原文:https://my.oschina.net/bigdataer/blog/1976010 上一篇文章讲述了:数据库主从复制,那么新的问题数据库读写分离对事物是否有影响? 1. 名词 读未提交read-uncommited 读已提交read-commited 重复读repeatable-- ...
分类:
数据库 时间:
2019-12-30 00:30:49
阅读次数:
114
从JDK1.5开始,引入了并发包java.util.concurrent(J.U.C),并发容器里的同步容器AQS(AbstractQueuedSynchronizer)是J.U.C的核心,AQS底层使用双向列表,基于模版方法设计 1、AQS使用Node实现FIFO队列,可以用于构建锁或者其他同步装 ...
分类:
其他好文 时间:
2019-12-16 20:52:09
阅读次数:
105
写在前面 这篇文章是在网络上看到其他作者的优秀博文,自己消化理解之后所做的记录。文章基于 MySQL 中的 InnoDB 存储引擎。 原博文地址: "点我" 锁 锁知识概览 我们先看一张锁的概览图,方便后续的讲述: 我们的程序在一般情况下还是可以跑得好好的。因为这些锁数据库 隐式 帮我们加了;只在某 ...
分类:
数据库 时间:
2019-11-23 20:21:39
阅读次数:
76
前一段时间参加了一个国内知名公司的面试,被问及对数据库的了解,自感还不错,可谁知在隔离等级这种基本概念的点翻个船,也不是因为完全不懂,而是本来这里就比较晦涩,加之具体上次看这里的东西时候已经过了一年多,中间一直在做索引相关优化的工作,所以关于隔离等级的概念点的记忆很模糊,导致了面试时候的啪啪打脸,索 ...
分类:
数据库 时间:
2019-11-09 00:24:27
阅读次数:
117
for update是一种行级锁,又叫排它锁,一旦用户对某个行施加了行级加锁,则该用户可以查询也可以更新被加锁的数据行,其它用户只能查询但不能更新被加锁的数据行.如果其它用户想更新该表中的数据行,则也必须对该表施加行级锁.即使多个用户对一个表均使用了共享更新,但也不允许两个事务同时对一个表进行更新, ...
分类:
其他好文 时间:
2019-11-05 12:08:05
阅读次数:
177
并发控制 1. 读写锁 2. 锁粒度 读写锁 1. 共享锁 (读锁) 2. 排它锁 (写锁) 读锁是共享的,或者说是相互不阻塞的。多个客户在同一时刻可以同时读取同一个资源,而互不干扰。 写锁则是排他的,也就是说一个写锁会阻塞其他的写锁和读锁,这是出于安全策略的考虑,只有这样,才能确保在给定的时间里, ...
分类:
数据库 时间:
2019-11-04 13:09:04
阅读次数:
82