zoukankan      html  css  js  c++  java
  • SQL Server锁定【2015.12.17】

    锁定的体系分类

      1.表级锁

        保证数据在逻辑上的一致性。

        包含:行级锁、分页锁、表、数据分页、LOB分页以及索引叶子级锁。

      2.闩

        保证数据在物理上的一致性,系统采用,比锁少耗资源,对用户不可见。

    锁的分类

      锁定包括共享锁、排他锁、更新锁以及意向锁,再加上这些锁类型的一些变种

      1.共享锁

        当数据被读取的时候,事务自动获取共享锁,完毕之后立即释放。

        多个事务可以在同一数据上持有共享锁。

      2.排他锁

        当数据被插入、更新或者删除操作,事务自动获取数据上的排他锁,直至事务结束才释放。

      3.更新锁

        当事务执行对数据A修改操作但首先需要搜索表时,更新锁就会被获取。

      4.意向锁

        意向锁可以拥有意向共享锁、意向排他锁、意向更新锁等等,实际起标识作用。

      5.转换锁

        当锁由一个模式转化为另外一种模式的时候造成,感觉没特别的含义和作用。

      6.键范围锁

        为在可串行化隔离级别中锁定一定范围的数据而设置的锁。

        键范围锁的对象是键,所以表必须要有索引的存在。如果没有锁引,可串行化隔离就会申请一个表级锁。

      7.自旋锁

        自旋锁用于实现互斥,但不会锁住数据。(感觉用的不多,不了解)

    锁的粒度

      1.常用粒度:数据行、分页、表、索引键

      注:聚集索引的叶子级点实际就是数据行,这种情况是有键锁来进行锁定的。

      2.其他的粒度:扩展、数据库锁

      3.应用程序级锁:对应用程序设置锁,语法sp_getapplock [资源名],[锁的模式],[所有者],[超时设置],[用户/角色]

  • 相关阅读:
    动手动脑11.19
    随机产生四则运算,导入导出文件
    JAVA常用的异常处理情况
    动手动脑11.12
    动手动脑11.1
    动手动脑10.21
    动手动脑10.14
    Cygwin install apt-cyg
    php获取request_uri
    linux下sed批量替换文件内容
  • 原文地址:https://www.cnblogs.com/dongdong1979/p/5053498.html
Copyright © 2011-2022 走看看