Oracle数据库数据恢复、性能优化

找回密码
注册
搜索
热搜: 活动 交友 discuz
发新帖

30

积分

0

好友

1

主题
1#
发表于 2011-11-30 15:03:42 | 查看: 7259| 回复: 4
今天删除最大分区报错,第一次遇到
alter table PERFSTAT.M_EQUIPMENT_SUMMARY_DB drop partition M_EQUIPMENT_SUM_DB_MAXVALUE

ORA-00604: error occurred at recursive SQL level 1
ORA-00942: table or view does not exist


此分区确实存在
SQL> select b.owner,b.object_name,b.subobject_name,b.status from dba_objects b where object_name='M_EQUIPMENT_SUMMARY_DB' and subobject_name='M_EQUIPMENT_SUM_DB_MAXVALUE';

OWNER                          OBJECT_NAME                                                                      SUBOBJECT_NAME                 STATUS
------------------------------ -------------------------------------------------------------------------------- ------------------------------ -------
PERFSTAT                       M_EQUIPMENT_SUMMARY_DB                                                           M_EQUIPMENT_SUM_DB_MAXVALUE    VALID


trace 一下操作,发现有报错
The following statement encountered a error during parse:
delete from "PERFSTAT"."MLOG$_M_EQUIPMENT_SUMMARY_"
Error encountered: ORA-00942

请大家帮忙解答,谢谢

trace.rar

6.85 KB, 下载次数: 1735

2#
发表于 2011-11-30 16:33:35
MLOG$_M_EQUIPMENT_SUMMARY_ 存在吗?

用dbms_metadata.get_ddl 获取一下该对象的DDL

回复 只看该作者 道具 举报

3#
发表于 2011-11-30 16:42:11

回复 1# 的帖子

Action Plan:
尝试给予 执行drop partition DDL的用户 DBA 权限 或

grant all on "PERFSTAT"."MLOG$_M_EQUIPMENT_SUMMARY_"  to &USERNAME.

再次尝试drop partition 操作

回复 只看该作者 道具 举报

4#
发表于 2011-11-30 17:25:12
已经解决

这个表在回收站中找到有,奇怪,这为什么会影响到我删除分区呢?
SQL> select * from dba_recyclebin a where a.original_name='MLOG$_M_EQUIPMENT_SUMMARY_';

OWNER                          OBJECT_NAME                    ORIGINAL_NAME                    OPERATION TYPE                      TS_NAME                        CREATETIME          DROPTIME               DROPSCN PARTITION_NAME                   CAN_UNDROP CAN_PURGE    RELATED BASE_OBJECT PURGE_OBJECT      SPACE
------------------------------ ------------------------------ -------------------------------- --------- ------------------------- ------------------------------ ------------------- ------------------- ---------- -------------------------------- ---------- --------- ---------- ----------- ------------ ----------
PERFSTAT                       BIN$pSrORxC4mEPgQKjAAd5Wrw==$0 MLOG$_M_EQUIPMENT_SUMMARY_       DROP      TABLE                     MONITOR_WORK                   2010-04-02:15:42:56 2011-06-08:10:09:56 1226707141                                  YES        YES            36981       36981        36981      41984

我实在回收站 了找到了对象


成功了,
SQL> flashback table PERFSTAT.MLOG$_M_EQUIPMENT_SUMMARY_ to before drop;

Done
alter table PERFSTAT.M_EQUIPMENT_SUMMARY_DB drop partition M_EQUIPMENT_SUM_DB_MAXVALUE;
Table altered

但是还是奇怪,为什么我删除分区,会关联到表.MLOG$_M_EQUIPMENT_SUMMARY_

回复 只看该作者 道具 举报

5#
发表于 2011-11-30 18:48:56
如果MLOG$_M_EQUIPMENT_SUMMARY_不存在回收站,会出什么情况?

回复 只看该作者 道具 举报

您需要登录后才可以回帖 登录 | 注册

QQ|手机版|Archiver|Oracle数据库数据恢复、性能优化

GMT+8, 2024-11-15 01:43 , Processed in 0.057957 second(s), 24 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部
TEL/電話+86 13764045638
Email service@parnassusdata.com
QQ 47079569