DB2 SQL0911N

因为死锁或超时,所以当前事务已回滚。原因码为 原因码

说明

当前工作单元参与了未解决的对象争用,因此必须回滚。

原因码如下所示:

2

由于死锁而导致事务已回滚。

68

由于锁定超时而导致事务已回滚。

72

由于存在与事务中所涉及的 DB2 Data Links Manager 错误,所以事务已回滚。

73

由于 CONCURRENTDBCOORDACTIVITIES 阈值之类的排队阈值导致两个或更多活动进入死锁状态,所以事务已回滚。有关更多信息,请参阅 DB2 信息中心中的“CONCURRENTDBCOORDACTIVITIES 阈值”。

应用程序已回滚至上一次 COMMIT 操作。

用户响应

必须再次输入与工作单元相关的更改。

为了帮助避免死锁或锁定超时,对长时间运行的应用程序或有可能遇到死锁的应用程序频繁发出 COMMIT 操作(如果有可能)。

联合系统用户:联合服务器或数据源处可能会发生死锁。没有检测跨越数据源并潜在地跨越联合系统的死锁的机制。有可能标识使请求失败的数据源(请参阅 Problem Determination Guide 以确定哪一个数据源使 SQL 语句的处理失败)。

当处理 SQL 语句的某些组合时,通常会发生死锁或者预期会发生死锁。建议您设计应用程序来尽可能避免死锁。

有关防止发生死锁或锁定超时的更详细信息,请使用诸如“防止死锁”之类的短语和诸如“死锁”和“锁定超时”之类的术语在 DB2 信息中心(http://publib.boulder.ibm.com/infocenter/db2luw/v9)中进行搜索。

如果因为 CONCURRENTDBCOORDACTIVITIES 阈值之类的排队阈值而进入死锁状态,那么请增大排队阈值。

sqlcode:-911

sqlstate:40001

转载于:https://www.cnblogs.com/ambiguous/p/8432220.html

### DB2 错误 SQL5099N 解决方案 DB2 错误 SQL5099N 通常在尝试执行某个操作时,数据库检测到与表空间或容器相关的配置问题,尤其是在重定向还原或表空间管理过程中较为常见。该错误表明数据库无法访问或分配所需的表空间容器,从而导致操作失败。 #### 表空间容器路径配置错误 在执行重定向还原时,若未正确设置表空间容器的路径,数据库将无法找到或创建相应的容器文件,从而触发 SQL5099N 错误。应确保在还原过程中使用 `SET TABLESPACE CONTAINERS` 命令重新指定容器路径,并验证路径的可写性和可用空间: ```sql SET TABLESPACE CONTAINERS FOR 2 USING (FILE '/new/path/container1' 100000); ``` 此命令将表空间容器映射到新的路径,并分配适当的大小,有助于避免因容器路径错误导致的操作失败[^2]。 #### 表空间容器大小不足 若容器大小不足以容纳恢复的数据,也可能导致 SQL5099N 错误。特别是在使用 DMS(Database Managed Space)表空间时,若容器大小未设置为自动扩展,或当前容器已满且无法扩展,则数据库将无法继续操作。应检查容器的大小配置,并考虑扩展容器或启用自动扩展功能: ```sql ALTER TABLESPACE USERSPACE1 MANAGE BY SYSTEM USING ('/new/path/container2') EXTEND SIZE 10000; ``` 通过扩展容器或添加新容器,可以有效避免因空间不足导致的错误[^3]。 #### 文件系统权限与可用空间问题 在执行重定向还原或表空间操作前,必须确保目标路径具有数据库实例用户的读写权限,并且文件系统具有足够的可用空间。若权限不足或空间不足,数据库将无法创建或扩展容器,从而导致 SQL5099N 错误。 #### 表空间管理方式不匹配 若尝试将表空间从系统管理空间(SMS)更改为数据库管理空间(DMS),但未正确配置容器,也可能导致 SQL5099N 错误。应确保在更改表空间管理方式时,已定义正确的容器路径和大小,并在操作前进行充分的验证。 #### 重定向恢复流程问题 在执行重定向恢复时,应确保在 `RESTORE DATABASE` 命令后立即执行 `SET TABLESPACE CONTAINERS`,并在继续恢复前验证容器路径和权限是否正确配置。例如: ```bash db2 RESTORE DATABASE sample1 taken at 20180303061305 redirect db2 "SET TABLESPACE CONTAINERS FOR 2 USING (FILE '/new/path/container1' 100000)" db2 RESTORE DATABASE sample1 continue ``` 通过上述步骤,可以确保重定向恢复过程中容器配置正确,避免因容器问题导致的 SQL5099N 错误[^2]。 ---
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值