Oracle Linux故障恢复步骤需根据故障类型选择,以下是常见场景的恢复方法及对应步骤:
适用场景:数据库实例异常关闭(如非正常关机)。
步骤:
sqlplus / as sysdba
STARTUP;
适用场景:物理文件损坏或丢失。
步骤:
rman target /
RUN {
RESTORE DATABASE;
RECOVER DATABASE;
ALTER DATABASE OPEN;
}
(参考)rman target /
RUN {
RESTORE TABLESPACE tablespace_name;
RECOVER TABLESPACE tablespace_name;
ALTER DATABASE DATAFILE '/path/to/datafile.dbf' ONLINE;
}
(参考)适用场景:误操作导致数据丢失或事务错误。
步骤:
FLASHBACK DATABASE TO TIMESTAMP TO_TIMESTAMP('YYYY-MM-DD HH24:MI:SS');
ALTER DATABASE OPEN;
(参考)FLASHBACK TABLE table_name TO TIMESTAMP TO_TIMESTAMP('YYYY-MM-DD HH24:MI:SS');
(参考)适用场景:重做日志文件(redo log)损坏或丢失。
步骤:
ALTER SYSTEM SET "_allow_resetlogs_corruption"=TRUE SCOPE=SPFILE;
SHUTDOWN IMMEDIATE;
STARTUP MOUNT;
ALTER DATABASE OPEN RESETLOGS;
rman target /
RESTORE ARCHIVELOG ALL;
RECOVER DATABASE;
(参考)参考来源: