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

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

999

积分

1

好友

942

主题
1#
发表于 2013-12-6 21:14:05 | 查看: 4861| 回复: 10
【Oracle数据恢复】ORA-01410一例

Alert Log报ORA-01410异常

问题描述
Alert Log报ORA-01410异常
相关trace文件内容如下:
*** SESSION ID:(1045.59915) 2011-07-22 23:39:14.101
ORA-01410: invalid ROWID
*** 2011-07-22 23:39:14.101
GATHER_STATS_JOB: GATHER_TABLE_STATS('"asc1"','"TAB"','""', ...)
ORA-01410: invalid ROWID
*** 2011-07-23 06:00:00.507
*** CLIENT ID:() 2011-07-23 06:00:00.507
GATHER_STATS_JOB: Stopped by Scheduler.

问题分析

常见的引起Oracle报ORA-01410的几种可能:
1 正在访问的表或者分区发生truncate操作
2 正在访问的分区发生exchange操作
3 表或者相关索引存在脏数据


--需要诊断是否相关的表和索引是否存在数据异常
请进行以下操作:

1 执行以下语句,观察是否报错
select /*+ full(a) */ count(*)
from asc1.TAB a
;

2 校验表和相关索引数据是否存在异常
--如果需要分析的对象是分区表,需要在准备执行ANALYZE操作的用户(比如system)下,创建表INVALID_ROWS,这个是一次性操作,以后校验不用再执行
@?\rdbms\admin\utlvalid.sql
--验证相关的表和索引(非分区表)
ANALYZE TABLE asc1.TAB VALIDATE STRUCTURE CASCADE ONLINE;
--验证相关的表和索引(分区表)
ANALYZE TABLE asc1.TAB VALIDATE STRUCTURE CASCADE ONLINE INTO INVALID_ROWS;

下载专业ORACLE数据库恢复工具PRM-DUL  For Oracle http://www.parnassusdata.com/

如果自己搞不定可以找诗檀软件专业ORACLE数据库修复团队成员帮您恢复!

诗檀软件专业数据库修复团队

服务热线 : 13764045638  QQ: 47079569     邮箱:service@parnassusdata.com
2#
发表于 2014-7-24 16:45:17
我遇到一个问题与您说的相拟,但不知道是哪张表出了问题:
OS:AIX 5.3
oracle:10.2.0.4
RAC
在alert中信息如下:
Wed Jul 23 02:42:54 2014
GATHER_STATS_JOB encountered errors.  Check the trace file.
Wed Jul 23 02:42:54 2014
Errors in file /oracle/product/database/10.2.0.4/db_1/admin/dw/bdump/dw2_j001_1654834.trc:
ORA-01410: invalid ROWID

trc文件中的信息如下:
*** 2014-07-22 22:44:46.682
*** ACTION NAME:(GATHER_STATS_JOB) 2014-07-22 22:44:46.671
*** MODULE NAME:(DBMS_SCHEDULER) 2014-07-22 22:44:46.671
*** SERVICE NAME:(SYS$USERS) 2014-07-22 22:44:46.671
*** SESSION ID:(1352.22057) 2014-07-22 22:44:46.671

我用SESSION ID:(1352.22057) 从V$ACTIVE_SESSION_HISTORY也没有找到。
请指教!

回复 只看该作者 道具 举报

3#
发表于 2014-7-24 17:24:06
把 /oracle/product/database/10.2.0.4/db_1/admin/dw/bdump/dw2_j001_1654834.trc 压缩打包上传

回复 只看该作者 道具 举报

4#
发表于 2014-7-25 10:36:28
已上传,请查看

dw2_j001_1654834.trc.gz

1.94 MB, 下载次数: 946

回复 只看该作者 道具 举报

5#
发表于 2014-7-27 14:22:36
zyclove201305 发表于 2014-7-25 10:36
已上传,请查看

解压显示文件已损坏!

回复 只看该作者 道具 举报

6#
发表于 2014-7-29 10:04:21
文件已重新上传,烦请查看

dw2_j001_1654834.rar

907.96 KB, 下载次数: 926

回复 只看该作者 道具 举报

7#
发表于 2014-7-29 16:07:34
GATHER_STATS_JOB: GATHER_TABLE_STATS('"NXTADW"','"T_DW_HXPT_SUBSCRIBE_STAT"','""', ...)
ORA-01410: invalid ROWID
*** 2014-07-23 02:52:08.100
GATHER_STATS_JOB: GATHER_TABLE_STATS('"NXTADW"','"T_DW_CDB_STATISTICS_BS_ZS"','""', ...)
ORA-08103: object no longer exists
*** 2014-07-23 06:04:13.471
*** CLIENT ID:() 2014-07-23 06:04:13.471
GATHER_STATS_JOB: Stopped by Scheduler.


8103 还有1410+10.2.0.4

可能存在较严重的 写丢失lost write,或者bug触发的可能

回复 只看该作者 道具 举报

8#
发表于 2014-7-29 16:08:25
请参考着2篇文档:

诊断ORA-08103错误
http://www.askmaclean.com/archives/resolve-ora-08103-error.html

【数据恢复】详解ORA-1410错误
http://www.askmaclean.com/archives/ora-1410.html

回复 只看该作者 道具 举报

9#
发表于 2014-7-29 16:12:09
NXTADW.T_DW_HXPT_SUBSCRIBE_STAT 表存在ORA-1410
NXTADW.T_DW_CDB_STATISTICS_BS_ZS 存在ORA-8103

回复 只看该作者 道具 举报

10#
发表于 2014-7-30 11:45:39
我也遇到该问题 版本是11.2.0.1 备用库。 上周是索引,今天是表无效ROWID。alter.log没有出现ORA-01410

LOCK TABLE "CCPS_MAXMIND_OUTPUTS" IN SHARE MODE  NOWAIT  发现语句有锁表的行为。 这会不会造成备库无效ROWID的原因?

回复 只看该作者 道具 举报

11#
发表于 2014-7-30 14:15:24
LOCK TABLE "CCPS_MAXMIND_OUTPUTS" IN SHARE MODE  NOWAIT

LOCK TABLE IN SHARE MODE造成的是 内存里的TM锁 甚至不会到 数据块级别,所以不会的

回复 只看该作者 道具 举报

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

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

GMT+8, 2024-5-17 15:11 , Processed in 0.055974 second(s), 23 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

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