ITPub博客

首页 > Linux操作系统 > Linux操作系统 > 2pc_pending处理方法

2pc_pending处理方法

原创 Linux操作系统 作者:quanli0818 时间:2012-11-27 14:56:07 0 删除 编辑
 (3) dba_2pc_pending 에서 현재 pending 되어 있는 tnx이 존재하는지 확인
SQL>selectGLOBAL_TRAN_ID,STATE, TRAN_COMMENT, ADVICE from dba_2pc_pending ;
* STATE 는 commit, rollback, collecting 등의 경우 일수 있음 (정상 : "no rows selected")
(4) dba_2pc_neighbors 에서 "LOCAL_TRAN_ID"를 찾아낸다.
SQL>select * from dba_2pc_neighbors ;
(5) rollback force command로 pending 된txn을 rollback 시킨다.
SQL>rollback force 'LOCAL_TRAN_ID';
예) rollback force '7.77.49694'; 
만일 위 command를 실행하여 ORA-02058 error가 발생하면 procedure를 실행.
 
(6) 다음과 같이 stored procedure를 실행하여 pending tnx을 kill 시킨다.
SQL>executesys.dbms_transaction.purge_lost_db_entry ('LOCAL_TRAN_ID')
예) execute sys.dbms_transaction.purge_lost_db_entry ('7.77.49694')

(7) dba_2pc_pending으로 정상여부 확인. 
  execute sys.dbms_transaction.purge_lost_db_entry ('LOCAL_TRAN_ID') 이 명령어로 해당 in_doubt_transaction을 삭제해주시면 됩니다.

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/22606628/viewspace-750065/,如需转载,请注明出处,否则将追究法律责任。

上一篇: 047
下一篇: Windows 2012 注册
请登录后发表评论 登录
全部评论

注册时间:2010-01-25

  • 博文量
    26
  • 访问量
    124588