mysql锁机制join使用.pptVIP

  • 1
  • 0
  • 约6.34千字
  • 约 41页
  • 2016-09-10 发布于湖北
  • 举报
特点:锁对象的颗粒最大,流程简单,对系统造成的负面影响小 弊端:出现锁资源争抢的概率高 特点:不太常见,锁定颗粒度介于上面两种之间 弊端:会发生死锁 为什么MyISAM表引擎不可以支持事物? 表级锁定 写锁定 读锁定 Current read-lock queue (lock-read) Pending read-lock queue (lock-read_wait) Current write-lock queue (lock-write) Pending write-lock queue (lock-write_wait) 4个队列 · select 是否被写锁定 N Pendingwrite-lockqueue有没有更高优先级的写锁等待 Y 进入队列Pendingread-lockqueue中等待资源的释放 获取读锁 N Y Update Insert delete Currentwrite-lockqueue是否已经有锁定相同资源的信息存在 Pendingwrite-lockqueue Currentread-lockqueue Currentwrite-lockqueue Pendingwrite-lockqueue Y Y Y N N N MySQL内部实现中却有多达11种锁定类型,由 系统中一个枚举量(thr_lock_type)定义,各 值描述如下: 表级锁明细.xls 由于MyISAM存储引擎使用的锁定机制完全是由MySQL提供的表级锁定实现,所以下面我们将以MyISAM存储引擎作为示例存储引擎,来实例演示表级锁定的一些基本特性。由于,为了让示例更加直观,我将使用显示给表加锁来演示:RITE_ALLOW_READ 类型的写锁定 RITE_ALLOW_READ.xls INNODB引擎死锁解决方案: 检测到死锁 检测较小的事物 回滚 事务机制 INNODB引擎锁机制案例流程 innodblockshow.xls 尽可能让所有的数据检索都通过索引来完成,从而避免Innodb因为无法通过索引键加锁而升级为表级锁定; 合理设计索引,让Innodb在索引键上面加锁的时候尽可能准确,尽可能的缩小锁定范围,避免造成不必要的锁定而影响其他Query的执行; 尽可能减少基于范围的数据检索过滤条件,避免因为间隙锁带来的负面影响而锁定了不该锁定的记录; 尽量控制事务的大小,减少锁定的资源量和锁定时间长度; 在业务环境允许的情况下,尽量使用较低级别的事务隔离,以减少MySQL因为实现事务隔离级别所带来的附加成本; show status like table%; Table_locks_immediate 产生表级锁定的次数 Table_locks_waited 出现表级锁定争用而发生等待的次数 Show status like innodb_row_lock%; Innodb_row_lock_current_waits 当前正在等待锁定的数量 Innodb_row_lock_time 从系统启动到现在锁定总时间长度; Innodb_row_lock_time_avg 每次等待所花平均时间 Innodb_row_lock_time_max 从系统启动到现在等待最常的一次所花的时间; Innodb_row_lock_waits 系统启动后到现在总共等待的次数 1.Sql优化 如何使用join优化sql查询 2.行列转换 3.锁的概念 参考网站:/ggjucheng/archive/2012/11/14/2770445.html mysql架构优化 性能提升 维护成本 MySQL的表级锁定主要分为两种类型,一种是读锁定,另一种是写锁定。在MySQL中,主要通过四个队列来维护这两种锁定:两个存放当前正在锁定中的读和写锁定信息,另外两个存放等待中的读写锁定信息,如下: * * 1. 除了READ_HIGH_PRIORITY的读锁定之外,Pendingwrite-lockqueue中的WRITE写锁定能够阻塞所有其他的读锁定; 2. READ_HIGH_PRIORITY读锁定的请求能够阻塞所有Pendingwrite-lockqueue中的写锁定; 3. 除了WRITE写锁定之外,Pendingwrite-lockqueue中的其他任何写锁定都比读锁定的优先级低。 写锁定出现在Currentwrite-lockqueue之后,会阻塞除了以下情况下的所有其他锁定的请求: 1. 在某些存储引擎的允许下,可以允许一个WRITE_CONCURRENT_INSERT写锁定请求 2. 写锁定为WRITE_ALLOW_WRITE的时候,允许除了WRITE_ONLY

文档评论(0)

1亿VIP精品文档

相关文档