oracle11g ACTIVE DATAGURAD ROWID 无效
ORA-01410 无效ROWID 昨天备库上的应用报该异常。经检查备库的某个表的索引不可用。
select count (*) from table 走的是关键字索引。 而主库就OK 。
难道备库在恢复过程中 造成ROWID的改变。 导致备库的索引不一致?
数据库版本是 Connected to Oracle Database 11g Enterprise Edition Release 11.2.0.1.0
会不会是某个BUG
Bug 8740993
Abstract: ORA-1410 OCCURRED ON ADG STANDBY DATABASE DURING TABLE SCAN.
This bug applies to standby databases and occurs when the standby is re-applying DDL for table drops/truncates/shrinks. The buffer cache is not being updated for the new object numbers.
Fixed in 12.1, 11.2.0.2
索引会不会呢?
在另外个网站也找到相应的问题
数据库11G,做Active DG读写分离.周五系统上线开发在一张表drop indexes之后insert在create index在备库select count(*) from报 invalid ROWID.从新在主库alter index index_name rebuild online问题解决.原因还在查找
刘大的文章 http://www.askmaclean.com/archives/ora-1410.html 说他的是BUFFER 无效ID
而我这个系统好久没做过重建索引的事情。案发前几天,记得做过了删除一个用户名字叫"CCPS”
案发时候的用户叫'CCPS1“ 难道我drop CCPS用户影响的?
备库数据保护参数
SQL> show parameter db_ultra_safe;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
db_ultra_safe string OFF
SQL> show parameter db_lost_write_protect;
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
db_lost_write_protect string NONE
SQL> show parameter db_block_check
NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
db_block_checking string FALSE
db_block_checksum string TYPICAL
1、你flush buffer cache 在 standby上能workaround这个问题吗?
2、请上传alert.log和相关1410的TRACE Maclean Liu(刘相兵 发表于 2014-7-28 17:20 static/image/common/back.gif
1、你flush buffer cache 在 standby上能workaround这个问题吗?
2、请上传alert.log和相关1410的TRACE ...
1 这个当时是重建主库的索引,备库就自动地好了。 没有对备库flush buffer cache.
2 当时查看了主备的alert.log 没有发现1410错误。是JAVA应用前台报出来的。后来自己在PL/SQL里使了下也报1410,当ALERT.LOG 还是没有。
通过VI :/ORA- :/.trc :/1410 等关键字都没查到。 Maclean Liu(刘相兵 发表于 2014-7-28 17:20 static/image/common/back.gif
1、你flush buffer cache 在 standby上能workaround这个问题吗?
2、请上传alert.log和相关1410的TRACE ...
在主库和备库都设置 三个参数 可以解决此类问题吧?
ALTER SYSTEM set DB_BLOCK_CHECKSUM=full scope=both;
ALTER SYSTEM set DB_BLOCK_CHECKING=full scope=both;
ALTER SYSTEM set DB_LOST_WRITE_PROTECT=TYPICAL scope=both;
今天又报了无效ROWID 是备库的表和内存的不匹配。虽然FLASH BUFFER可以解决。
同样警报里没有错误 LOCK TABLE "CCPS_MAXMIND_OUTPUTS" IN SHARE MODE NOWAIT 发现主库有锁表的行为。 这会不会造成备库无效ROWID的原因? Bug 8740993
Abstract: ORA-1410 OCCURRED ON ADG STANDBY DATABASE DURING TABLE SCAN.
This bug applies to standby databases and occurs when the standby is re-applying DDL for table drops/truncates/shrinks. The buffer cache is not being updated for the new object numbers.
Fixed in 12.1, 11.2.0.2
匹配的只有这个BUG, 可最近没有做DROPS TRUNCATES SHRINKS。
只是事发前几天有做过DROP USERS
DROP USERS CCPS
发生故障的是CCPS1的索引和表,内存的对象跟文件的对象ID不匹配! 我的备库是建立在虚拟机上的。主库也是。 他们跑了好多年了!
页:
[1]