- 浏览: 4411729 次
- 性别:
- 来自: 厦门
文章分类
- 全部博客 (634)
- Oracle日常管理 (142)
- Oracle体系架构 (45)
- Oracle Tuning (52)
- Oracle故障诊断 (35)
- RAC/DG/OGG (64)
- Oracle11g New Features (48)
- DataWarehouse (15)
- SQL, PL/SQL (14)
- DB2日常管理 (9)
- Weblogic (11)
- Shell (19)
- AIX (12)
- Linux/Unix高可用性 (11)
- Linux/Unix日常管理 (66)
- Linux桌面应用 (37)
- Windows (2)
- 生活和工作 (13)
- 私人记事 (0)
- Python (9)
- CBO (15)
- Cognos (2)
- ORACLE 12c New Feature (2)
- PL/SQL (2)
- SQL (1)
- C++ (2)
- Hadoop大数据 (5)
- 机器学习 (3)
- 非技术 (1)
最新评论
-
di1984HIT:
xuexilee!!!
Oracle 11g R2 RAC高可用连接特性 – SCAN详解 -
aneyes123:
谢谢非常有用那
PL/SQL的存储过程和函数(原创) -
jcjcjc:
写的很详细
Oracle中Hint深入理解(原创) -
di1984HIT:
学习了,学习了
Linux NTP配置详解 (Network Time Protocol) -
avalonzst:
大写的赞..
AIX内存概述(原创)
昨天客户反映说在下午某时间段有几个事务失败了,让我查下当时数据库系统的负载是否正常,看了下CPU的历史负载,很正常,于是看了下日志发现有几个timeout错误和一个ORA-02050错误。
Tue Feb 15 20:44:05 2011
Error 1013 trapped in 2PC on transaction 199.40.297416. Cleaning up.
Tue Feb 15 20:44:56 2011
Error stack returned to user:
ORA-02050: transaction 199.40.297416 rolled back, some remote DBs may be in-doubt
ORA-01013: user requested cancel of current operation
这个是分布式事务处理出错的提示,根据提示可知,可能是由于远程的数据库处理失败,导致事务号为199.40.297416的事务失败而回滚。原因可能是网络,也可能是远程节点的连接超时或是人为kill等。
Oracle给出的解释是:
Error: ORA 2050
Text: transaction <num> rolled back, some remote DBs may be in-doubt
-------------------------------------------------------------------------------
Cause:There was a network failure or a remote failure during the two-phase commit.
Action:Notify the database administrator.
The remote databases will automatically resynchronize when the failure is repaired.
大致意思为:一种可能为网络失败,另外一种是事务在两个阶段commit时,远程节点操作不成功,这时,它会记在dba_2pc_pending中,reco进程后续会自动尝试去继续完成这个事务。但如果能确定这个节点段时间内不能完成,可能就需要人工处理这个pending transaction了。
查询数据字典dba_2pc_pending和dba_2pc_neighbors均无任何记录,说明事务已经自动被恢复了。
附录:
dba_2pc_pending describes distributed transactions awaiting recovery.
dba_2pc_neighbors describes incoming and outgoing connections for pending transactions.
在我这个例子中,由于事务已经被自动恢复,所以无需人工干预,如果没有自动恢复的话,可以通过如下语句处理:
强制提交或回滚:
SQL>commit force '199.40.297416';
或
SQL>rollback force '199.40.297416';
如果事务的状态为collecting,则不需要commit/rollback force,可这样处理,如下:
1、disable分布式恢复
SQL>alter system disable distributed recovery;
2、purge in-doubt transaction entry
SQL>exec dbms_transaction.purge_lost_db_entry('199.40.297416');
3、最后enable分布式恢复
SQL>alter system enable distributed recovery;
参考至:http://orax.blog.sohu.com/207245155.html
如有错误,欢迎指正
邮箱:czmcj@163.com
发表评论
-
AIX平台下磁盘的PVID对ASM磁盘的破坏
2014-03-19 20:53 2741这篇文章将通过两篇MOS文章来讨论AIX平台下为磁盘分配 ... -
Bug 9020054,ORA-8103 BEING HIT DURING GATHERING OF STATISTICS ON TABLE PARTITION
2013-12-01 09:22 1882Bug 9020054 : ORA-8103 ... -
oracle数据库hanganalyze(原创)
2013-06-23 14:11 8333为什么要使用hanganalyzeOracle 数据库“真 ... -
Oracle:并行操作为什么无法执行(老白)
2013-06-23 10:30 5740在一次系统割接的时候,我们碰到一个十分奇怪的现象。由于进行 ... -
补写的2小节DBA日记
2013-06-05 21:52 13906月8日 ITL等待引发的RAC性能问题 从这几天的情况 ... -
ORA-27054故障排除
2013-03-08 17:57 12963在数据备份过程中,由于目标是使用NFS文件系统,因此在导入 ... -
长时间latch free等待——记一次系统异常的诊断过程
2013-01-09 19:17 3737今天发现一个报表数据库中SQL运行异常,简单记录一下问题的诊断 ... -
ORA-15063: ASM discovered an insufficient number of disks for diskgroup(原创)
2012-11-25 16:59 13091ORA-15063: ASM discovered an in ... -
libpthread.so.0: cannot open shared object file解决方法(原创)
2012-11-24 17:33 17763在linux 5上装10G RAC时,常常会碰到“libpth ... -
ora-02020故障诊断详解(原创)
2012-07-16 12:54 3207ORA-2020错发生在一个分布式事务使用的dblink数超过 ... -
Oracle数据库CPU 100%故障诊断实例(原创)
2012-07-05 13:55 16920前言 这两天一只对外提供查询的数据库CPU使用率 ... -
DBA手记:System State转储分析之问题定位
2012-04-19 22:20 2110在 Oracle 数据库的运行过程中,可能会因为一些异常遇 ... -
ORA-00308: cannot open archived log(原创)
2012-03-23 09:36 16260笔者在为客户配置DG时发现主备库日志无法正常传输,经仔细检查后 ... -
ORA-00600: internal error code, arguments: [kcblasm_1], [103]原创
2012-03-23 09:36 3114故障报错 Mon Mar 19 11:30:03 GMT ... -
ORA-00600: internal error code, arguments: [kglhdda-bad-free](原创)
2012-03-22 09:16 2964故障报错如下 Thu Mar 15 09:51:29 G ... -
ORA-27300,ORA-27301,ORA-27302: failure occurred at: skgpalive1(原创)
2012-03-22 08:58 3350故障报错如下 Wed Mar 07 16:4 ... -
ora-07445错误相关内容
2012-03-01 17:14 1823本文档主要介绍ora-07445 错误相关内容,并给出了对这 ... -
记一次Oracle 生产库还原归档日志经历(原创)
2012-02-17 10:12 4384中午刚去吃饭,就接到同事电话说急着要恢复生产库上的归档日志。系 ... -
SMON: Parallel transaction recovery tried 引发的问题
2012-01-04 11:26 2400SMON: Parallel transaction rec ... -
ORA-00444,ORA-07446故障排查
2011-12-14 16:58 4651phenomenon startup ORA-00 ...
相关推荐
errorstack是Oracle提供的一种高级诊断工具,当特定的ORA错误发生时,它会记录导致错误的会话、语句以及各个进程的trace文件路径。这有助于我们快速定位到出问题的代码。errorstack有四个级别,级别越高,收集的信息...
在这段场景中,通过使用RMAN进行故障诊断,我们能够看到一系列故障的详细信息,包括优先级、状态、检测时间及摘要等。 #### 故障列表示例 ```plaintext List of Database Failures ========================= ...
- **选项 B**: DBMS_REPAIR 包可用于诊断和修复损坏,但在本例中可能不如直接使用 RMAN 快速有效。 - **选项 C**: TSPITR(表空间时间点恢复)不适合用于单一数据块的恢复。 - **选项 E**: RESTORE DATABASE 和 ...
首先,故障诊断是恢复的第一步。当用户报告计算机启动时出现错误,提示D盘错误,这可能由非法关机或硬盘问题引起。通过查看日志和检查硬件状态,确定问题可能是由于停电导致的多次非法关机,以及硬盘可能存在坏道。 ...
4. 打开 `tnsnames.ora` 文件并添加需要访问的数据库别名配置。 5. 使用PL/SQL Developer工具连接数据库。 #### 三、数据库的启动与关闭 对于Oracle ADG部署来说,启动和关闭数据库需要按照特定的顺序来进行。 **...
Oracle是全球广泛使用的大型...以上只是Oracle面试中可能涉及的部分知识点,实际面试可能会更深入,包括Oracle的最新版本特性、故障诊断、性能调优策略等。对于数据库相关的职位,深入理解和实践这些知识是至关重要的。
### 创建Oracle数据库(以Oracle10g为例) #### 引言 本文旨在详细介绍如何在Linux与Windows环境下搭建Oracle10g数据库。Oracle10g作为Oracle数据库产品线中的一个重要版本,提供了众多功能改进和性能优化,是企业...
Cluster Ready Services (CRS) 是 Oracle Grid Infrastructure 的一部分,它为集群环境中的 Oracle 数据库实例提供高可用性和故障转移功能。在 Oracle 11g R2 版本中,CRS 负责管理集群中的所有资源和服务,如数据库...
在本例中,从`orcl`数据库拷贝`init.ora`到`D:\oracle\product\10.1.0\admin\book\pfile`,并重命名为`initbook.ora`,然后编辑文件以设置新的数据库名(如`db_name=book`)和其他必要的参数。 3. **设置环境变量...