oracle資料庫冷備份的方法_oracle

來源:互聯網
上載者:User

冷備份是資料庫檔案的物理備份,通常在資料庫通過一個shutdown normal或shutdown immediate 命令正常關閉後進行。當資料庫關閉時,其使用的各個檔案都可以進行備份。這些檔案構成一個資料庫關閉時的一個完整映像。
冷備份通常要備份以下檔案:
所有資料檔案
所有控制檔案
所有聯機重做日誌
初始化參數檔案initsid.ora(可選)
先執行以下SQL語句查看所有需要備份的檔案:

複製代碼 代碼如下:

SVRMGR> select * from v$datafile;
SVRMGR> select * from v$controlfile;
SVRMGR> select * from v$logfile;
 

記錄下所有的這些檔案的路徑和檔案名稱,同時連同初始化參數檔案一起備份到disk或tape。
資料庫在shutdown後,如何離線備份?
離線備份直接把物理檔案拷貝到一個位置就可以了,如果要在備份的位置啟動資料庫,寫一個新的init檔案,修改control檔案的位置,再執行下代碼
複製代碼 代碼如下:

SQL> startup mount
ORACLE instance started.
Total System Global Area   57124108 bytes
Fixed Size                    70924 bytes
Variable Size              40198144 bytes
Database Buffers           16777216 bytes
Redo Buffers                  77824 bytes
Database mounted.
SQL> alter database open;
alter database open
*
ERROR at line 1:
ORA-01113: file 1 needs media recovery
ORA-01110: data file 1: 'F:ORACLEORADATALHGSYSTEM01.DBF'
 

startup restrict 不行,因為控制檔案中log,data檔案位置沒有修改,無法open資料庫,需要啟動到mount狀態,修改之後再open.
物理備份的內容不需要做恢複
離線備份的注意事項

完全離線備份,又名冷備份。冷備份的存在是為了保護現場,防止我們恢複失敗時可以從頭開始。
我們知道,資料檔案是oracle向os預留的磁碟空間,如果我們規劃資料庫時,申請了50g,一開始oracle
可能只用了100M,我們冷備時所需的有效資料就更少了,或許只有5M,但我們還是得備份50g。
這便是冷備的缺點。

 進行冷備時可能出現備份不全或備份了垃圾資料的狀況。所以,我們務必以資料庫看到的為準。
通常,冷備的主要對象是datafile,controlfile和redo log file。我們可以藉助幾個視圖來瞧瞧
他們匿於何處。

於資料檔案:

複製代碼 代碼如下:

[sql]
SQL> select file_name from dba_data_files; 
    www.jb51.net 
FILE_NAME 
------------------------------------------------------------------------------------------------------------------------------------------------------ 
/u01/app/oracle/oradata/ORCL/datafile/o1_mf_users_8050fkdh_.dbf 
/u01/app/oracle/oradata/ORCL/datafile/o1_mf_sysaux_8050fk3w_.dbf 
/u01/app/oracle/oradata/ORCL/datafile/o1_mf_undotbs1_8050fkc6_.dbf 
/u01/app/oracle/oradata/ORCL/datafile/o1_mf_system_8050fk2z_.dbf 
/u01/app/oracle/oradata/ORCL/datafile/o1_mf_example_8050jhm7_.dbf 
  於控制檔案:
[sql]
SQL> select name from v$controlfile; 
NAME 
------------------------------------------------------------------------------------------------------------------------------------------------------ 
/u01/app/oracle/oradata/ORCL/controlfile/o1_mf_8050hgfp_.ctl 
/u01/app/oracle/flash_recovery_area/ORCL/controlfile/o1_mf_8050hgqh_.ctl 

  於記錄檔:
[html]
  SQL> select member from v$logfile; 

MEMBER 
------------------------------------------------------------------------------------------------------------------------------------------------------ 
/u01/app/oracle/oradata/ORCL/onlinelog/o1_mf_3_8050hq4s_.log 
/u01/app/oracle/flash_recovery_area/ORCL/onlinelog/o1_mf_3_8050hs2h_.log 
/u01/app/oracle/oradata/ORCL/onlinelog/o1_mf_2_8050hm84_.log 
/u01/app/oracle/flash_recovery_area/ORCL/onlinelog/o1_mf_2_8050ho5o_.log 
/u01/app/oracle/oradata/ORCL/onlinelog/o1_mf_1_8050hhn1_.log 
/u01/app/oracle/flash_recovery_area/ORCL/onlinelog/o1_mf_1_8050hkdv_.log 

 為了縮短備份時間和節省磁碟空間,通常,我們可以做如下微調:
 1)查看當前被oracle 啟用的undo,這個undo將作為冷備的一員。
複製代碼 代碼如下:

[html]
  SQL> show parameter undo 
    www.jb51.net 
NAME                                 TYPE        VALUE 
------------------------------------ ----------- ------------------------------ 
undo_management                      string      AUTO 
undo_retention                       integer     900 
undo_tablespace                      string      UNDOTBS1 
 

2)對於temp臨時檔案,我們可以不必備份,因為,oracle在開機時,不會檢查臨時檔案。
3)對於控制檔案,存在多路鏡像,我們可以只備份其中之一。
 完成了上面的幾點友情提醒後,我們就可以開始把執行個體給關了,開始作冷備。
[sql]
shutdown immediate

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.