• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • MsSql
  • Mysql
  • oracle
  • MariaDB
  • DB2
  • SQLite
  • PostgreSQL
  • MongoDB
  • Redis
  • Access
  • 数据库其它
  • sybase
  • HBase
您的位置:首页 > 数据库 >sybase > 由浅至深讲述 Sybase 数据库死锁问题

由浅至深讲述 Sybase 数据库死锁问题

作者:匿名 字体:[增加 减小] 来源:互联网 时间:2017-06-28

匿名通过本文主要向大家介绍了sybase 死锁,sybase数据库教程,sybase数据库,sybase数据库恢复,sybase数据库下载等相关知识,希望本文的分享对您有所帮助
</div>

死锁的发生对系统的性能和吞吐量都有重要影响,经检测发现,管理信息系统的死锁主要是因为两个或多个线程(登录)抢占同一表数据资源。引起长时间抢占同一资源不是因为我们需要处理的事务太复杂,时间太长,而往往是因为我们在前端应用程序对数据库作操作时忘了提交。本文介绍一种处理解决这种死锁的方法。

Sybase封锁原理

数据共享与数据一致性是一对不可调和的矛盾,为了达到数据共享与数据一致,必须进行并发控制。并发控制的任务就是为了避免共享冲突而引起的数据不一致。Sybase sql server(WINDOWS平台上强大的数据库平台)并发控制的方法是加锁机制(LOCKING)。

锁的类型/可申请的锁

已有的锁 S U X

S ∨ ∨ ×

U ∨ × ×

X × × ×

Sybase sql server(WINDOWS平台上强大的数据库平台)有三种封锁类型:排它锁(exclusive lock,简称X锁);共享锁(share lock,简称S锁);更新锁(update lock,简称U锁)。这三种锁的相容矩阵表如下:

×:表示不兼容。∨:表示兼容。Sybase sql server(WINDOWS平台上强大的数据库平台)是自动决定加锁类型的。一般来说,读(SELECT)操作使用S锁,写(UPDATE,INSERT和delete)操作使用X锁。U锁是建立在页级上的,它在一个更新操作开始时获得,当要修改这些页时,U锁会升级为X锁。

锁的力度

sql server(WINDOWS平台上强大的数据库平台)有两级锁:页锁和表锁。通常页锁比表锁的限制更少(或更小)。页锁对本页的所有行进行锁定,而表锁则锁定整个表。为了减小用户间的数据争用和改进并发性,sql server(WINDOWS平台上强大的数据库平台)试图尽可能地使用页锁。

当sql server(WINDOWS平台上强大的数据库平台)决定一个语句将访问整个表或表的大多数页时,它用表锁来提供更有效的锁定。锁定策略直接受查询方案约束,如果update或delete语句没有可用的索引,它就执行表扫描或请求一个表锁定。如果update或delete语句使用了索引,它就通过请求页锁来开始,如果影响到大多数行,它就要请求表锁。一旦一个语句积累的页锁超过锁提升阈值,sql server(WINDOWS平台上强大的数据库平台)就设法给该对象分配一个表锁。如果成功了,页锁就不再必要了,因此被释放。表锁也在页层提供避免锁冲突的方法。对于有些命令sql server(WINDOWS平台上强大的数据库平台)自动使用表锁。

锁的状态

sql server(WINDOWS平台上强大的数据库平台)加锁有三种状态:

1)意向锁(intend)—是一种表级锁,它表示在一个数据页上获得一个S或X锁的意向。意向锁可以防止其他事务在该数据页的表上获得排它锁。

2)阻塞(blocking,简记blk)—它表明目前加锁进程的状态,带有blk后缀的锁说明该进程目前正阻塞另一个需要获得锁的进程,只有这一进程完成,其他进程才可以进行。

 2 3  下一页</div> </div> </div> </div> </div>
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • 由浅至深讲述Sybase数据库死锁问题
  • 由浅至深讲述 Sybase 数据库死锁问题
  • 由浅至深讲述 Sybase 数据库死锁问题

相关文章

  • 2017-06-28什么是游标
  • 2017-06-28美国洛杉矶时报
  • 2017-06-28Sybase master库日志管理
  • 2017-06-28SYBASE的事务
  • 2017-06-28在unixware7.1.1下安装sybase
  • 2017-06-28得克萨斯州劳动力委员会
  • 2017-06-28电脑电话语音信箱系统
  • 2017-06-28分析Sybase的数据空间占用为何如此之大
  • 2017-06-28Sybase临时数据库tempdb
  • 2017-06-28如何移植master设备

文章分类

  • MsSql
  • Mysql
  • oracle
  • MariaDB
  • DB2
  • SQLite
  • PostgreSQL
  • MongoDB
  • Redis
  • Access
  • 数据库其它
  • sybase
  • HBase

最近更新的内容

    • tempdb
    • 教你学会怎样升级到SQL Anywhere10(11)
    • sybase 珍藏系列之五(from shanhan)
    • Sybase编程中出现的错误及其解决办法
    • SYBASE在ALPHA上的安装
    • 如何删除坏的用户数据库?(以pubs2为例)
    • SYBASEASEFORLINUX安装及perl连接SYBASE
    • RedHat AS上Sybase ASE和Oracle的ASYNC IO差异与性能影响
    • 如何做 rebuild log
    • 什么是游标

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有