Oracle 檔案損壞及恢複的過程

來源:互聯網
上載者:User

一、基本情況

    OS:RHEL 3

    CPU:4個Intel(R) Xeon(TM) MP CPU 2.70GHz

    Mem:8G

    Swap:16G

    Disk:120G

    Oracle Database 10g Enterprise Edition Release 10.1.0.3.0

二、備份方式

    資料庫以archive模式運行,RMAN多級增量備份。策略如下:

    設定控制檔案自動備份。

    每三個月做一個資料庫的全備份(包括所有得資料庫和唯讀資料表空間),並備份歸檔日誌。

    每一個月做一次零級備份(不包含唯讀資料表空間),並備份歸檔日誌。

    每周做一次一級備份,並備份歸檔日誌。

    每天做一次二級備份,並備份歸檔日誌。

 

三、 恢複案例

    所有恢複的前提:已經做過資料庫全備份(包括歸檔日誌),控制檔案和spfile自動備份。

1. 損壞一個資料檔案

    (1)故障類比

        刪除資料檔案:rm /u02/oradata/dbnms/users01.dbf

        關閉資料庫:shutdown immediate;

        ORA-01116: error in opening database file 4

        ORA-01110: data file 4: '/u02/oradata/dbnms/users01.dbf'

        ORA-27041: unable to open file

        Linux Error: 2: No such file or directory

        Additional information: 3

        強行關閉:sutdown abort;

        啟動資料庫:startup;

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

        ORA-01110: data file 4: '/u02/oradata/dbnms/users01.dbf'

    (2)恢複步驟

        rman target sys@dbnms catalog rmanuser@cata

        run{

            allocate channel c1 type disk;

            restore datafile 4;

            recover datafile 4;

            sql 'alter database datafile 4 online';

            sql 'alter database open';

            release channel c1;

            }

        sqlplus sys as sysdba

        select instance_name,status from v$instance;

        INSTANCE_NAME STATUS

        ---------------- ------------

        dbnms OPEN

恢複成功

如果:資料空間沒有備份,又要強行啟動資料庫

Sql> shutdown immediate;

Sql>startup mount;

Sql>alter database datafile '/oradata/test.dbf'' offline drop;

Sql>alter database open;

2. 損壞全部資料檔案

    (1)故障類比

        刪除資料檔案:rm /u02/oradata/dbnms/*.dbf

        強行關閉:sutdown abort;

        啟動資料庫:startup;

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

        ORA-01110: data file 1: '/u02/oradata/dbnms/system01.dbf'

    (2)恢複步驟

        rman target sys@dbnms catalog rmanuser@cata

        run{

            allocate channel c1 type disk;

            restore database;

            recover database;

            sql 'alter database open';

            release channel c1;

            }

        sqlplus sys as sysdba

        select instance_name,status from v$instance;

        INSTANCE_NAME STATUS

        ---------------- ------------

        dbnms OPEN

        恢複臨時檔案:

        alter database tempfile '/u02/oradata/dbnms/temp01.dbf' drop;

        alter tablespace temp add tempfile '/u02/oradata/dbnms/temp01.dbf' size 50M autoextend on next 5M maxsize unlimited;

恢複成功

3. 損壞非當前聯機日誌成員

    (1)故障類比

         刪除記錄檔:rm /u02/oradata/dbnms/redo01.log

        關閉資料庫:shutdown immediate;

        啟動資料庫:startup;

        select * from v$logfile;--可以考慮從v$log視圖中去尋找

        GROUP# STATUS TYPE MEMBER IS_

        ---------- ------- ------- ------------------------------ ---

        3 ONLINE /u02/oradata/dbnms/redo03.log NO

        2 STALE ONLINE /u02/oradata/dbnms/redo02.log NO

        1 INVALID ONLINE /u02/oradata/dbnms/redo01.log NO

        1 STALE ONLINE /u02/oradata/dbnms/redo11.log NO

        1 STALE ONLINE /u02/oradata/dbnms/redo21.log NO

        2 STALE ONLINE /u02/oradata/dbnms/redo12.log NO

        3 ONLINE /u02/oradata/dbnms/redo13.log NO

        2 STALE ONLINE /u02/oradata/dbnms/redo22.log NO

        3 ONLINE /u02/oradata/dbnms/redo23.log NO

        4 ONLINE /u02/oradata/dbnms/redo31.log NO

        4 ONLINE /u02/oradata/dbnms/redo32.log NO

        GROUP# STATUS TYPE MEMBER IS_

        ---------- ------- ------- ------------------------------ ---

        4 ONLINE /u02/oradata/dbnms/redo33.log NO

    (2)恢複步驟

        alter database drop logfile member '/u02/oradata/dbnms/redo01.log';

        alter database add logfile member '/u02/oradata/dbnms/redo01.log' to group 1;

恢複成功

  • 1
  • 2
  • 3
  • 下一頁

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.