转 -- ORA-02068,ORA-03113 报错

原址如下:

http://blog.sina.com.cn/s/blog_60e418200100ijfp.html

 

ORA-02068,ORA-03113 报错

Solution The Error ORA-02068,ORA-03113
2010-01-05 09:45Symptoms:
alert日志经常报如下错误:
Error 2068 trapped in 2PC on transaction 74.40.87328. Cleaning up.
Error stack returned to user:
ORA-02068: following severe error from PRODWEB
ORA-03113: end-of-file on communication channel
且查询数据库表dba_2pc_neighbors,dba_2pc_pending无值显示

Cause:
由于大量使用dblink远程连接未正常释放所致,也可能是bug所致。

Solution:
一,最好不要大量使用dblink方式实时远程取数据,有大概如下几个缺点:
1,频繁对远程数据库创建连接,释放连接会有较大开销,特别是OLTP类数据库。
2,此类远程dblink连接session,如本地session不退出或手动释放,此类session是不会及时自动释放的。大量耗用远程数据库资源。
3,占用网络带宽
4,触发bug,此类bug很多
此类应用根绝实际需求可以用物化视图,触发器等方式替代.
注:切忌使用dblink嵌套dblink的访问方式,性能会非常糟糕,而且不稳定。

二,使用ALTER SESSION CLOSE DATABASE LINK dblink_name;语句来手动关闭远程dblink session.
在使用此语句前,切忌先执行commit;否则报错ORA-02080或者不能达到预期效果。

 

你可能感兴趣的:(ORACLE)