Wenn Datenbank-Kontrolldateien verloren oder beschädigt sind, können Sie sie wiederherstellen, indem Sie eine Wiederherstellung auf Dateiebene ausführen. Nachdem die Wiederherstellung auf Dateiebene erfolgreich gewesen ist, müssen Sie die Kontrolldateien manuell wiederherstellen.
Gehen Sie wie folgt vor:
SQL>shutdown abort
SQL>startup nomount
SQL> show parameter control_files; NAME TYPE VALUE ------------------------------------ ----------- ------------------------------ control_files string /opt/oracle/oradata/lynx/control01.ctl, /opt/oracle/flash_recovery_area/lynx/control02.ctl
Beispiel: Geben "control01.ctl " ein, und suchen Sie sie.
$sqlplus / as sysdba SQL>alter database mount;
SQL> RECOVER DATABASE USING BACKUP CONTROLFILE
Hinweis: Wenn das erforderliche archivierte Protokoll fehlt, dann bedeutet dies, dass sich ein notwendiger Redo-Datensatz in den Online-Redo-Protokollen befindet. Dies tritt auf, weil sich unarchivierte Änderungen in den Online-Protokollen befinden, als die Instanz fehlgeschlagen ist. Sie können den vollständigen Pfad einer Online-Redo-Protokolldatei angeben, und drücken Sie die Eingabetaste (möglicherweise müssen Sie dies ein paar Mal probieren, bis Sie das richtige Protokoll finden).
Beispiel:
SQL> RECOVER DATABASE USING BACKUP CONTROLFILE
ORA-00279: change 1035184 generated at 05/27/2014 18:12:49 needed for thread 1
ORA-00289: suggestion :
/opt/oracle/flash_recovery_area/LYNX/archivelog/2014_05_27/o1_mf_1_6_%u_.arc
ORA-00280: change 1035184 for thread 1 is in sequence #6
Specify log: {<RET>=suggested | filename | AUTO | CANCEL}
/opt/oracle/oradata/lynx/redo03.log
Log applied.
Media recovery complete.
SQL>alter database open resetlogs;
Die Kontrolldateien sind erfolgreich wiederhergestellt.
|
Copyright © 2015 Arcserve.
Alle Rechte vorbehalten.
|
|