Corrupción en BD

Estuve revisando tus respuestas y creo (y espero) que tu me puedes colaborar.
Mi base de datos empezó a generar error de bloques corruptos, el problema es que esos bloques son del usuario sys, más exactamente en el diccionario de la base de datos IDL_UB1$. La base de datos no ha colapsado aun pero ya presenta problemas con algunos usuarios. Si tienes algún procedimiento que me puedas indicar te lo agradecería.

1 Respuesta

Respuesta
1
Te recomiendo que compiles los Scripts : Catproc.sql y Catalog.sql bajo el usuario SYS con una conexión svrmgrl. Los scripts están en el directorio rdbms de tu oracle home.
¿Cuándo los compiles, prueba que todo funciona bien... de no ser así, vuelve a ponerte en contacto conmigo y veremos cual puede ser la posible solución, ok?
Suerte y al toro!.
Hola Pedro, trate de correr los scripts pero como lo que el trata de hacer es crear vistas de los objetos de esa tabla no los pudo sacar.
Yo tengo una B.D. de prueba que tiene la misma estructura de mi B.D. de producción la data si no esta sincronizada. ¿Yo podría borrar la tabla IDL_UB1$ de la de producción e insertar los datos a partir de un export de la misma tabla de la BD de prueba?
¿Cómo sabes exactamente que son corrupciones de datos?, ¿En qué te basas?, ¿Qué errores está sacando para que sospeches que estás ante una corrupción de datos?.
De haber errores, envíamelos e intentaré dilucidar el origen de los problemas.
Hola Pedro, te envío uno de los trace que genera el oracle:
Dump File /oracle/product/7.3.4/rdbms/log/ora_30482_satplus.trc
Oracle7 Server Release 7.3.4.4.0 - Production
With the distributed and Spatial Data options
PL/SQL Release 2.3.4.4.0 - Production
ORACLE_HOME = /oracle/product/7.3.4
System name: AIX
Node name: main
Release: 2
Version: 4
Machine: 00040238A400
Instance name: PRODUCCION
Redo thread mounted by this instance: 1
Oracle process number: 40
Unix process pid: 30482, image:
*** 2002.11.06.14.26.16.000
*** SESSION ID:(44.353) 2002.11.06.14.26.16.000
***
Corrupt block dba: 0x01000aaf file=1. blocknum=2735. found during buffer read
on disk type:2. ver:1. dba: 0x02000aaf inc:0x01300006 seq:0x0000002b incseq:0x00
06002b
Reread of block=1000aaf file=1. blocknum=2735. found same corupted data.
- Adicional, ejecute el dbv SEGMENT_NAME
-------------------------------------------------------------------------------
SEGMENT_TYPE OWNER TABLESPACE_NAME
----------------- ------------------------------ ------------------------------
IDL_UB1$
TABLE SYS SYSTEM
DBVERIFY - Verification complete
Total Pages Examined : 18462
Total Pages Processed (Data) : 0
Total Pages Failing (Data) : 0
Total Pages Processed (Index): 0
Total Pages Failing (Index): 0
Total Pages Empty : 1291
Total Pages Marked Corrupt : 17171
Total Pages Influx : 0
Y me genero lo siguiente:
En principio pinta mal, porque ha sucedido en el tablespace de system. Veo que la instancia es en producción... la verdad es que yo que tu no me jugaba, intentando averiguar si podemos obviar el bloque o bloques que estén corruptos; me decanto porque te pongas en contacto con Oracle, por medio de metalink, y les reportes el error. Existen herramientas para saber si hay bloques corruptos, pero en nuestro caso como lo sabemos de buena tinta, pues nada. Te recomiendo encarecidamente que se lo reportes a Oracle en: http://metalink.oracle.com. Explicales lo que ha ocurrido, si la base de datos arranca o no arranca, etc...
Te pedirán que les envíes los ficheros de traza, el alert, y un poco lo que puede haber causado este error...
En fin creo que no puedo ayudarte más... sin estar sobre el terreno también es un poco complejo, porque estosd problemas de corrupciones hay que investigarlos... sin un rumbo fijo en principio y dejarse llevar por lo que averigüemos en el sistem... pero mejor con los expertos de oracle... lo único es que a lo mejor te ponen alguna pega por ser oracle 7... de todos modos, deberías pensar en pasar los últimos parches que hay disponibles para esa versión... si es que no los tienes todos pasados que creo que si..
Espero tengas suerte!.
Un saludo
Pedro
P.D: Verifica de todos modos que todos los paquetes y procedimientos del system estén compilados.
Un problema que puede causar un error así podría incluso ser un error en el disco físico.
Muchas gracias por tu interés, voy a regresar a una copia esperando que en la fecha de la copia no etuviese corrupto el bloque, de lo contrario procederé a reconstruir la B.D.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas