ORA-01578: Oracle data block corrupted (file #, block #) (Oracle-Datenblock beschädigt)
OracleWas bedeutet das?
Ein Datenblock in der angegebenen Datendatei ist beschädigt; Oracle meldet, dass der Block die Konsistenzprüfung (Checksumme) nicht bestanden hat. Es handelt sich um eine physische Korruption.
Ursache
Platten-/Hardwarefehler, Fehler in der Storage-Schicht, Probleme mit Betriebssystem oder Controller, teilweise geschriebene Blöcke nach einem Stromausfall oder ein beschädigtes Backup/Restore.
Lösung
Bestätige die Korruption und ihr Ausmaß: RMAN> VALIDATE DATABASE / VALIDATE CHECK LOGICAL DATAFILE n; führe außerdem DBVERIFY (dbv) aus und prüfe v$database_block_corruption. Ist ein Backup vorhanden, stelle auf Blockebene wieder her: RMAN> RECOVER DATAFILE n BLOCK m; oder für alle gelisteten Blöcke RMAN> RECOVER CORRUPTION LIST; (der ältere Befehl BLOCKRECOVER ist seit 11g veraltet). Handelt es sich um einen Indexblock, baue den Index neu auf. Prüfe immer den Zustand von Hardware/Platten; die Grundursache liegt meist im Storage.
Weitere Einträge zu dieser Datenbank
- ORA-01000Maximum open cursors exceeded (maximale Anzahl offener Cursor überschritten)
- ORA-00018Maximum number of sessions exceeded (maximale Anzahl von Sessions überschritten)
- ORA-28000The account is locked (das Konto ist gesperrt)
- ORA-01722Invalid number (ungültige Zahl)
- ORA-02049Timeout: distributed transaction waiting for lock (Timeout: verteilte Transaktion wartet auf Sperre)
- enq: TX - row lock contentionWait: Session durch Zeilensperre einer anderen Transaktion blockiert
- log file syncWait: Session wartet beim Commit, bis LGWR Redo auf Disk schreibt