ITPub博客

首页 > Linux操作系统 > Linux操作系统 > goldengate 触发器导致oracle 表空间不能online

goldengate 触发器导致oracle 表空间不能online

原创 Linux操作系统 作者:yantaicuiwei 时间:2011-07-20 14:48:08 0 删除 编辑

OS:linux

oracle version:11.2.0.1

由于磁盘空间问题,将一个表空间offline ,在将表空间online 的时候,报错如下,

alter tablespace tbs_name online
*
ERROR at line 1:
ORA-00604: error occurred at recursive SQL level 1
ORA-00376: file 179 cannot be read at this time
ORA-01110: data file 179:
'/opt/oracle/oradata/ora/tbs_data_03.dbf'
ORA-06512: at line 957
ORA-00376: file 179 cannot be read at this time
ORA-01110: data file 179:
'/opt/oracle/oradata/ora/tbs_data_03.dbf'

查看'/opt/oracle/oradata/ora/tbs_data_03.dbf' 文件,也存在

ll /opt/oracle/oradata/ora/tbs_data_03.dbf

-rw-r----- 1 oracle dba 26843553792 Jul 20 10:25 tbs_data_03.dbf'

SQL> recover datafile 179;
ORA-00283: recovery session canceled due to errors
ORA-00264: no recovery required

确认文件不需要恢复。

没有找到任何思路。去trace 目录下,看看有没有线索

在该目录下,发现一个异常的文件ggs_ddl_trace.log,打开发现如下内容:

SESS 16893430-2011-07-20 11:28:06 : DDL : Cleaning up DDL sequence []
SESS 16893430-2011-07-20 11:28:06 : DDL : Cleaned up [0] rows from DDL table
SESS 16893431-2011-07-20 11:28:06 : DDL : setTracing: :ORA-00376: file 179 cannot be read at this time
ORA-01110: data file 179: /opt/oracle/oradata/ora/tbs_data_03.dbf''
SESS 16893431-2011-07-20 11:28:06 : DDL : Trigger sys.GGS_DDL_TRIGGER_BEFORE :Error processing DDL operation [], error ORA-00376: file 179 cannot be read at this time
ORA-01110: data file 179: '/opt/oracle/oradata/ora/tbs_data_03.dbf'', error stack: ORA-06512: at "GGDATA.DDLREPLICATION", line 1057
ORA-06512: at line 92

很明显sys.GGS_DDL_TRIGGER_BEFORE 这个trigger 导致了这个问题。

alter trigger sys.GGS_DDL_TRIGGER_BEFORE  disable;

alter tablespace tbs_name online;

成功。

数据库的日志目录下,有很多隐含的信息,对我们处理问题有很大的帮助!

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

上一篇: ADDM概述
请登录后发表评论 登录
全部评论

注册时间:2010-04-15

  • 博文量
    64
  • 访问量
    235479