• 系统表空间数据文件损坏


    系统表空间损坏,启动实例会提示已下错误:数据库只能启动到mount状态。

    SQL> startup

    ORACLE instance started.

    Total System Global Area 1048059904 bytes

    Fixed Size                  2235000 bytes

    Variable Size             608175496 bytes

    Database Buffers          432013312 bytes

    Redo Buffers                5636096 bytes

    Database mounted.

    ORA-01157: cannot identify/lock data file 1 - see DBWR trace file

    ORA-01110: data file 1: '/u01/app/oracle/oradata/orcl/system01.dbf'

    警告日志提示文件头损坏:

    ALTER DATABASE OPEN

    Errors in file /u01/app/oracle/diag/rdbms/orcl/orcl/trace/orcl_dbw0_3715.trc:

    ORA-01157: cannot identify/lock data file 1 - see DBWR trace file

    ORA-01110: data file 1: '/u01/app/oracle/oradata/orcl/system01.dbf'

    ORA-27048: skgfifi: file header information is invalid

    这里利用数据库之前做好的全备份恢复system01.dbf文件:

    回复步骤:

    A、      启动实例到mount状态,恢复系统表空间数据文件必须在数据库mount状态下进行。

    SQL> startup mount

    B、       在RMAN中,执行restore命令还原损坏的系统表空间文件。

    RMAN> restore datafile 1;

    Starting restore at 02-DEC-12

    using target database control file instead of recovery catalog

    allocated channel: ORA_DISK_1

    channel ORA_DISK_1: SID=20 device type=DISK

    channel ORA_DISK_1: starting datafile backup set restore

    channel ORA_DISK_1: specifying datafile(s) to restore from backup set

    channel ORA_DISK_1: restoring datafile 00001 to /u01/app/oracle/oradata/orcl/system01.dbf

    channel ORA_DISK_1: reading from backup piece /u01/app/oracle/backup/full_ORCL_20121201_6_1.bak

    channel ORA_DISK_1: piece handle=/u01/app/oracle/backup/full_ORCL_20121201_6_1.bak tag=TAG20121201T193434

    channel ORA_DISK_1: restored backup piece 1

    channel ORA_DISK_1: restore complete, elapsed time: 00:00:35

    Finished restore at 02-DEC-12

    C、       在RMAN中,执行recover datafile 1 利用归档和在线日志恢复数据文件。

    RMAN> recover datafile 1;

    Starting recover at 02-DEC-12

    using channel ORA_DISK_1

    starting media recovery

    media recovery complete, elapsed time: 00:00:02

    Finished recover at 02-DEC-12

    D、      打开数据库,恢复完成。

    RMAN> alter database open;

    database opened

    如果数据库在运行过程中发现系统表空间数据文件损坏,要先关闭

    实例(shutdown abort),再启动到mount状态下恢复,恢复方法相同。

     

  • 相关阅读:
    Linux系统中常用操作命令
    CentOS 7 巨大变动之 systemd 取代 SysV的Init
    不可不知的安卓屏幕知识
    Gradle-jar-aar
    【Android】开源项目汇总
    Android中关于系统Dialog无法全屏的问题(dialog样式)
    Android LockScreen (锁屏弹窗)
    linux 权限设置
    android 多语言(在APP里面内切换语言)
    host更新
  • 原文地址:https://www.cnblogs.com/liang545621/p/9406052.html
Copyright © 2020-2023  润新知