上一页 1 ··· 4 5 6 7 8 9 10 下一页
  2016年2月3日
摘要: 因为不同锁之间的兼容性关系,在有些时刻一个事务中的锁需要等待另一个事务中的锁释放它占有的资源,这就是阻塞。阻塞不是一件坏事,是为了保证事务可以并发并且正常的运行 在InnoDB存储引擎中,参数innodb_lock_wait_timeout用来控制等待的时间(默认50秒),innodb_rollba 阅读全文
posted @ 2016-02-03 10:42 懒睡的猫熊 阅读(3597) 评论(0) 推荐(0) 编辑
  2016年2月2日
摘要: 1、脏读 脏页只是在缓冲池中已经修改的页但是没有刷新到磁盘中,即数据库实例内存中的页和磁盘中的页事不一致的,当然在刷新到磁盘之前,日志都已经被写入到了重做日志文件中,而所谓的脏数据是指事务对缓冲池中行记录的修改,但并没有被提交 对于脏页的读取,是非常正常的。脏页是因为数据库实例内存和磁盘异步造成的, 阅读全文
posted @ 2016-02-02 14:15 懒睡的猫熊 阅读(302) 评论(0) 推荐(0) 编辑
  2016年2月1日
摘要: 行锁的3中算法 Record Lock:单个行记录上的锁 Gap Lock:间隙锁,锁定一个范围,但不包含记录本身 Next-key Lock:Gap Lock+Record Lock锁定一个范围,并且锁定记录本身 Record Lock总是会去锁住索引记录,如果InnoDB存储引擎表在建立的时候没 阅读全文
posted @ 2016-02-01 17:25 懒睡的猫熊 阅读(1292) 评论(0) 推荐(0) 编辑
摘要: 在InnoDB存储引擎中,对于每个含有自增长值的表都有一个自增长计数器(auto-increment counter)当对含有自增长的计数器的表进行插入操作时,这个计数器会被初始化,执行如下的语句可以得到计数器的值 >SELECT MAX(auto_inc_col) FROM t FOR UPDAT 阅读全文
posted @ 2016-02-01 14:27 懒睡的猫熊 阅读(1227) 评论(0) 推荐(0) 编辑
摘要: 一致性非锁定读(consistent nonlocking read)是指InnoDB存储引擎通过多版本控制(multi versionning)的方式来读取当前执行时间数据库中行的数据,如果读取的行正在执行DELETE或UPDATE操作,这是读取操作不会因此等待行上锁的释放。相反的,InnoDB会 阅读全文
posted @ 2016-02-01 11:28 懒睡的猫熊 阅读(3485) 评论(3) 推荐(2) 编辑
摘要: InnoDB存储引擎实现了一下两种标准的行级锁: 共享锁S LOCK 允许事务读一行数据 排他锁 X LOCK 允许事务删除或更新一行数据 如果是一个事务T1斤获得了行r的共享锁,那么另外一个事务T2可以立即获得行r的共享锁,因为读取并没有改变行r的数据,称这种情况为锁兼容Lock Compatib 阅读全文
posted @ 2016-02-01 00:18 懒睡的猫熊 阅读(9477) 评论(2) 推荐(2) 编辑
  2016年1月31日
摘要: 这里要区分锁中容易令人混淆的概念lock与latch。在数据库中,lock与latch都可以成为锁,但两者有截然不同的含义 latch 一般称为闩锁(轻量级的锁) 因为其要求锁定的时间非常短,若迟勋时间长,则应用性能非常差,在InnoDB存储引擎中,latch有可以分为mutex(互斥锁)和rwlo 阅读全文
posted @ 2016-01-31 23:09 懒睡的猫熊 阅读(5959) 评论(0) 推荐(0) 编辑
  2016年1月29日
摘要: InnoDB存储引擎从1.2.x开始支持全文索引技术,其采用full inverted index的方式。在InnoDB存储引擎中,将(DocumentID,Postition)视为一个ilist。因此在全文检索的表中,有两个列,一个是word字段,一个是ilist字段。并且在word字段上有设索引 阅读全文
posted @ 2016-01-29 16:01 懒睡的猫熊 阅读(8287) 评论(2) 推荐(0) 编辑
  2016年1月26日
摘要: 自适应哈希索引采用之前讨论的哈希表的方式实现,不同的是,这仅是数据库自身创建并使用的,DBA本身并不能对其进行干预。自适应哈希索引近哈希函数映射到一个哈希表中,因此对于字典类型的查找非常快速,如SELECT * FROM TABLE WHERE index_col='xxx'但是对于范围查找就无能为... 阅读全文
posted @ 2016-01-26 22:37 懒睡的猫熊 阅读(6437) 评论(0) 推荐(1) 编辑
摘要: InnoDB存储引擎使用哈希算法来对字典进行查找,其冲突机制采用链表方式,哈希函数采用除法散列方式。对于缓冲池页的哈希表来说,在缓冲池中的Page页都有一个chain指针。它指向相同哈希函数值的页的。而对于除法散列,m的取值略大于2倍的缓冲池页数量的质数。例如:当前参数innodb_buffer_p... 阅读全文
posted @ 2016-01-26 22:26 懒睡的猫熊 阅读(773) 评论(0) 推荐(1) 编辑
上一页 1 ··· 4 5 6 7 8 9 10 下一页