原文:MySQL笔记(9)-- 各种锁及实现

一 背景 MySQL有两种类型的锁:lock 锁 和latch 闩锁 : 类型 lock latch 对象 事务 线程 保护 数据库内容 内存数据结构 持续时间 整个事务 临界资源 模式 行锁 表锁 意向锁 读写锁 互斥量 死锁 通过等待图和超时机制进行死锁检测和处理 deadlock detection through waits for graph, timeout machanism 无死锁 ...

2020-04-01 18:16 0 2593 推荐指数:

查看详情

MySQL索引与笔记

一.索引 索引主要是为了提高查询速度,能够提高查询速度的原因是将无序的数据变成有序(相对) 索引分聚集索引,非聚集索引B+树索引,Hash索引 聚集索引:一般主键索引就是聚集索引,聚集索引的叶子 ...

Wed Oct 17 22:11:00 CST 2018 0 739
MySQL学习笔记(四)悲观与乐观

恼骚 最近在搞并发的问题,订单的异步通知和主动查询会存在并发的问题,用到了Mysql数据库的 for update 在TP5直接通过lock(true),用于数据库的机制 Db::name('pay_order')->where('order_no ...

Sun Sep 16 19:31:00 CST 2018 3 8661
mysql 乐观实现

一、为什么需要(并发控制)? 在多用户环境中,在同一时间可能会有多个用户更新相同的记录,这会产生冲突。这就是著名的并发性问题。 典型的冲突有: 1.丢失更新:一个事务的更新覆盖了其它事务的更新结果,就是所谓的更新丢失。例如:用户A把值从6改为2,用户B把值 ...

Wed Feb 22 18:20:00 CST 2017 0 14912
mysql悲观实现

https://www.cnblogs.com/laoyeye/p/8228467.html 参考原文链接, //0.开始事务 begin;/begin work;/start transac ...

Mon Jul 01 02:13:00 CST 2019 0 2896
MySQL学习笔记(五):MySQL表级和行级

一:概述 相对其他数据库而言,MySQL机制比较简单,其最显著的特点是不同的存储引擎支持不同的机制。比如,MyISAM和MEMORY存储引擎采用的是表级(table-level locking);InnoDB存储引擎既支持行级( row-level locking),也支持表级 ...

Wed May 04 23:34:00 CST 2016 1 19069
MySQL学习笔记十二:表解锁与加行

一、表解锁 二、加行 2.1、创建行条件 1)表中创建索引,SELECT ... WHERE 字段(必须是索引,否则行无效)。 注:InnoDB的行是针对索引加的,不是针对记录加的,并且该索引不能失效,否则都会从行升级为表。 2、必须要有事务,这样才是行 ...

Fri Sep 11 21:50:00 CST 2020 0 617
Mysql学习笔记-临键实验

前言 昨天同事跟我聊到一个问题:InnoDB里面间隙锁住的数据可以update么?我们经常都说间隙是InnoDB在RR隔离级别下防止幻读的一种处理手段。它可以防止数据在间隙范围中insert数据,但是对于update?很多资料都没有明显说明,今天咱们就通过几个实验来揭开间隙的神秘面纱 ...

Sat Mar 26 02:02:00 CST 2022 7 394
MySQL学习笔记十六:机制

1.数据库就是为了保证数据库数据的一致性在一个共享资源被并发访问时使得数据访问顺序化的机制。MySQL数据库的机制比较独特,支持不同的存储引擎使用不同的机制。 2.MySQL使用了三种类型的机制,分别为:表级,行级,页级,它们的特性如下所示。 表级实现逻辑较为简单,加锁速度快 ...

Tue Apr 28 02:14:00 CST 2015 4 1358
 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM