錯誤內容: ORA-01591: 此一鎖定目前是由有問題的分散式交易 7.8.85772 所持有
1、对于ORA-1591,一般来说是由于分布式事务失败引起的。强制提交或者回退分布式事务就可以解决问题
2、有些时候分布式事务自动的回退会失败,这样就会导致1591相关的表被锁住
3、这个时候分为两种情况,首先通过
SELECT KTUXEUSN,
KTUXESLT,
KTUXESQN, /* Transaction ID */
KTUXESTA Status,
KTUXECFL Flags
FROM x$ktuxe
WHERE ktuxesta != 'INACTIVE'
AND ktuxeusn = 7;
确认事务的状态,如果显示是:
KTUXEUSN KTUXESLT KTUXESQN STATUS FLAGS
---------- ---------- ---------- ---------------- ------------------------
7 8 85772 PREPARED SCO|COL|REV|DEAD
说明事务需要回退或者提交。
此时如果DBA_2PC_PENDING中有该记录,但是状态不是PREPARED,那么就
UPDATE PENDING_TRANS$ SET STATE='prepared',
STATUS ='P'
where local_tran_id='7.8.85772';
commit;
否则:
alter system disable distributed recovery;
insert into pending_trans$ (
LOCAL_TRAN_ID,
GLOBAL_TRAN_FMT,
GLOBAL_ORACLE_ID,
STATE,
STATUS,
SESSION_VECTOR,
RECO_VECTOR,
TYPE#,
FAIL_TIME,
RECO_TIME)
values( '7.8.85772',
306206,
'XXXXXXX.12345.1.2.3',
'prepared','P',
hextoraw( '00000001' ),
hextoraw( '00000000' ),
0, sysdate, sysdate );
insert into pending_sessions$
values( '7.8.85772',
1, hextoraw('05004F003A1500000104'),
'C', 0, 30258592, '',
146
);
commit;
插入相关记录。
然后进行ROLLBACK FORCE 'TX-ID'或者COMMIT FORCE 'TX-ID'
ROLLBACK FORCE '7.8.85772';
如果ROLLBACK 不成功,可以尝试COMMIT
參考:
http://www.oraclefans.cn/forum/showblog.jsp?rootid=7153&op=allcomm
http://blog.oraclefans.cn/baishan1/entry/dba%E6%97%A5%E8%AE%B0_%E7%AC%AC%E4%B8%80%E9%83%A8_%E8%A1%A5
分享到:
相关推荐
### Oracle 错误 ORA-00132 和 ORA-00214 解析及处理 #### 一、错误概述 在Oracle数据库管理过程中,遇到ORA-00132和ORA-00214这类错误时,往往意味着数据库配置或启动过程中出现了问题。下面将对这两个错误进行...
在使用Oracle Data Pump工具IMPDP(Import Data Pump)进行数据导入的过程中,可能会遇到ORA-39002和ORA-39070等错误。本文将针对这些错误的排查方法进行详细介绍,帮助用户理解问题的原因及解决策略。 ### 错误...
### 离线误删空间文件导致的ORA-01033及ORA-01145问题的解决办法 #### 概述 在Oracle数据库管理过程中,偶尔会遇到因误操作导致的数据文件出现问题的情况,例如误删除数据文件或者数据文件损坏等。这些问题可能会...
这篇文章主要讲述了在Oracle 11g R2客户端尝试连接Oracle 19c服务端时,遇到了两个特定的错误:ORA-28040和ORA-01017,以及如何解决这些问题。 ORA-28040错误是因为客户端和数据库服务器在版本兼容性上存在不匹配。...
### Oracle ORA-12518 故障处理 #### 概述 在Oracle数据库管理过程中,遇到ORA-12518错误是较为常见的问题之一。此错误通常发生在客户端试图连接到数据库服务器的过程中,当监听器无法将客户端连接顺利地移交给...
ora-00604 错误 解决 方法 ora-00604 错误 解决 方法 ora-00604 错误 解决 方法 ora-00604 错误 解决 方法 ora-00604 错误 解决 方法ora-00604 错误 解决 方法
Oracle数据库发生ORA-04031错误原因浅析及处理 Oracle数据库是甲骨文公司提供的一种分布式数据库管理系统,以分布式数据库为核心的软件产品。它具有完整的数据管理功能,作为一个关系数据库,它是一个非常实用的...
### Oracle12cRAC数据库出现ora-12520, ora-12516问题解析 #### 一、问题概述 在使用Oracle12cRAC(Real Application Clusters)数据库的过程中,可能会遇到客户端连接时出现ora-12520或ora-12516错误的问题。这两...
### 如何处理错误ORA-29275:部分多字节字符 #### 问题背景与描述 在Oracle数据库操作过程中,用户可能会遇到一个特定的错误提示——ORA-29275:部分多字节字符。这一错误通常出现在执行查询`SELECT * FROM V$...
oracle网络配置(listener_ora-sqlnet_ora-tnsnames_ora).mht
在创建Oracle数据库连接时遇到的错误ORA-01017和ORA-02063涉及到用户认证问题以及Oracle数据库版本之间的差异处理。ORA-01017错误表示用户名或密码无效,登录被拒绝,而ORA-02063则通常表示在Oracle数据库之间进行...
摘要:本文主要解决ORACLE 8I数据库应用EXP工具时ORA-06553报错的问题,分析出现问题的原因,并提供了正确的解决方法和措施。 知识点1:Oracle 8I数据库EXP工具的应用 Oracle 8I数据库EXP工具是Oracle数据库提供...
ORA-00604: 递归SQL层1出现错误 ORA-03106: 致命的双工通信协议错误 ORA-02063: 紧接着line(源于dblink) 以及 ORA-04052: 在查找远程对象时出错 ORA-00604: 递归SQL层1出现错误 ORA-03120: 双工转换例行程序:整数...
ORA-01654处理表空间不足问题 Oracle 数据库中,表空间不足是非常常见的问题,主要体现在两个方面:一是原表空间大小不够,二是表空间自动扩展功能未开启。今天我们就来详细讨论如何解决ORA-01654处理表空间不足...
解决ora-04031共享内存问题解决ora-04031共享内存问题解决ora-04031共享内存问题解决ora-04031共享内存问题
然而,在日常运维过程中,我们可能会遇到各种错误,比如“ORA-00702”就是其中之一。这个错误通常在尝试重启Oracle数据库服务时出现,意味着数据库实例在启动过程中遇到了问题。本文将详细介绍如何在Windows和Linux...
### Oracle 10g启动后报ORA-16038错误的解决方法 #### 错误概述 在启动Oracle 10g数据库时遇到ORA-16038错误,该错误通常与归档日志操作有关。具体错误信息为: ``` ORA-16038: log 1 sequence #230 cannot be ...
### 断电与ORA-600问题集 #### 1. 前言 ...总结来说,处理ORA-600错误的关键在于准确地定位问题所在,并采取相应的措施进行修复。在这个过程中,充分利用Oracle提供的各种工具和技术文档是非常重要的。