合集-数据库
摘要:在 MySQL 中,共享锁(S 锁) 和 排他锁(X 锁) 是两种主要的锁机制,用于处理事务的并发控制。它们的作用和行为如下: 1. 共享锁 (S 锁) 定义: 共享锁允许事务对某一行数据进行读取,但禁止其他事务修改该行数据。 多个事务可以同时对一行数据加共享锁。 使用场景: 通常用于只读操作,确保
阅读全文
摘要:乐观锁和悲观锁是两种常见的并发控制机制,主要用于解决并发操作中的数据一致性问题。它们的应用场景和实现方式各有特点: 1. 乐观锁 定义: 乐观锁基于乐观的并发控制思想,假设事务间的冲突概率较低,因此不对资源加锁。 在更新数据时,通过某种机制(如版本号或时间戳)来检测是否发生了冲突,如果检测到冲突,事
阅读全文
摘要:死锁是指两个或多个事务在竞争资源时形成的一种循环等待,导致它们都无法继续执行的情况。发生死锁的原因通常与资源的加锁顺序和并发操作有关。以下是死锁的详细分析: 1. 死锁的必要条件 根据死锁的四个必要条件(Coffman 条件),只要全部满足,就可能发生死锁: 条件 说明 互斥(Mutual Excl
阅读全文
摘要:MySQL 的 事务(Transaction) 是一组操作的集合,这些操作作为一个单一的单元执行,要么全部成功,要么全部失败。事务在保证数据一致性和完整性方面发挥着重要作用,尤其在并发环境下确保数据的安全性和准确性。 事务的四大特性:ACID 原子性(Atomicity): 事务中的操作要么全部执行
阅读全文
摘要:在 MySQL 中,索引是用于加速数据库查询操作的结构,它通过提供一个高效的查找路径来使得查询更加高效。数据库索引是基于某些字段或组合字段创建的数据结构,可以帮助 MySQL 更快地找到数据,减少扫描的行数。 MySQL 索引的类型 主键索引(Primary Key Index) 定义:主键索引是唯
阅读全文
摘要:最近有一个功能要是音频转文字以及翻译,该任务不仅耗时还消耗硬件,在硬件能够支持的情况下可以启动多台电脑一起处理任务加快速度,启动多个程序会出现处理同一个任务的问题,也就是并发的问题,趁机了解了一下mysql的FOR UPDATE SKIP LOCKED 在 MySQL 中,FOR UPDATE SK
阅读全文