Troubleshooting Oracle ORA-1410 & ORA-01499 & ORA-08103 block corrupted

ORA-1499 is produced by statement “ANALIZE TABLE|CLUSTER VALIDATE STRUCTURE CASCADE” to report an inconsistency between a table or a cluster and its index where an index,ORA-8103 is caused by an invalid block type. The block header has an invalid block type or the block type inside the block is not expected

DBV not always correct, as in an extreme case the use of raw device

RAW DEVICE可以在增加数据文件时不指定文件大小,可用空间这样通常是RAW Device的实际大小, 但是文件头上不会写入可用块数,表空间块大小会写入, 这种情况下DBV工具无法从文件头正确的获取blocks数,所以产生错误的扫描块数结果。在不指定大小的情况下,如果RAW Device曾经文件头上有记录之前的blocks,RAW device在新加入数据库时也不会擦写该位置,这样后期在使用DBV时的结果就不正确。

How to restore database only have previous datafile and archive log Rman backupset?(只有数据文件和归档日志备份集的恢复)

元旦期间帮一朋友恢复了套数据库, 情景是这样的,25号0时有做RMAN 0级备份含datafile和当时的archivelog,25号白天删除了一个非常重要的表空间, 现在需要恢复那个表空间,是一套单实例的11.1.0.6 的WINDOWS平台的数据库, 接手时只有上面的6个备份集文件(只有DATAFILE AND ARCHIVELOG)和软件,和当前的control file

Recovery Loss Of Datafile For Which No Backup Is Available(恢复没有备份的数据文件)

来模拟一种刚建的表空间,还没来的及备份,数据文件被删除,但archive log 都在时的恢复。 sys@ANBOB>create tablespace tbs_rm datafile ‘/oradata/anbob/tbs_rm01.dbf’ size 10m; Tablespace created. sys@ANBOB>conn anbob Enter password: Connected. anbob@ANBOB>create table test_rm tablespace tbs_rm as select rownum id from dual connect by levelselect * from test_rm; ID ——————– 1 … 9 10 破坏数据文件,使用mv [oracle@db231 ~]$ mv /oradata/anbob/tbs_rm01.dbf /oradata/anbob/tbs_rm01_dbf sys@ANBOB>alter system flush buffer_cache; System altered. anbob@ANBOB>select * from … Read more

Script: RMAN backup shell on linux

# make direcory for backset file and scripts file,in my case /backup/db_bak cd   /backup/db_bak mkdir  scripts logs rman #  the following is contents of  rman_backup_sh vi  /backup/db_bak/scripts/rman_backup_sh #!/bin/bash # author: anbob.com # desc: rman backup database level 0 # contact: weejar@gmail.com export ORACLE_HOME=/oracle/product/11.2.0/db_1 export ORACLE_SID=pora40 RMAN_LOG_FILE=/backup/db_bak/logs/rman_database_backup.`date +%y%m%d%H%M`.out # —————————————————————– # Initialize the log file. # … Read more

一次expdp/impdp迁移案例

因一次硬件原因导致了服务器异常停机,防止蝴蝶效应及时进行了数据迁移,一周发现了这个决定正确的。 申请了2小时的停机时间。因数据不大且表空间开始使用不规范决定用expdp数据泵方式迁移。 在新设备 1, raid10+安装OS 2,安装oracle 10.2.0.1(single instance)+ 3,升级oracle 10.2.0.5 4,建库, 5, 调整INSTANCE参数,调整temp tbs、redo file size、undo tbs大小 6,创建app schema、创建data\index tablespace 用时1小时左右 stop web app+挂通知 stop listener sys@TOPBOX>select object_type,count(*) cnt from dba_objects where owner=’TOPBOX’ GROUP BY OBJECT_TYPE; OBJECT_TYPE CNT ——————- ——————– SEQUENCE 802 PROCEDURE 25 DATABASE LINK 2 LOB 3 TRIGGER 3 MATERIALIZED VIEW 2 TABLE … Read more