Oracle如何實(shí)現(xiàn)冷備份及其恢復(fù)

這篇文章主要為大家展示了“Oracle如何實(shí)現(xiàn)冷備份及其恢復(fù)”,內(nèi)容簡(jiǎn)而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領(lǐng)大家一起研究并學(xué)習(xí)一下“Oracle如何實(shí)現(xiàn)冷備份及其恢復(fù)”這篇文章吧。

創(chuàng)新互聯(lián)專注于新吳網(wǎng)站建設(shè)服務(wù)及定制,我們擁有豐富的企業(yè)做網(wǎng)站經(jīng)驗(yàn)。 熱誠(chéng)為您提供新吳營(yíng)銷型網(wǎng)站建設(shè),新吳網(wǎng)站制作、新吳網(wǎng)頁設(shè)計(jì)、新吳網(wǎng)站官網(wǎng)定制、小程序開發(fā)服務(wù),打造新吳網(wǎng)絡(luò)公司原創(chuàng)品牌,更為您提供新吳網(wǎng)站排名全網(wǎng)營(yíng)銷落地服務(wù)。

一、冷備份的概念

冷備份是指在數(shù)據(jù)庫(kù)關(guān)閉狀態(tài)下所做的物理拷貝,也稱脫機(jī)備份。

適合于非歸檔模式下的備份,而且也只能采用這種方式備份。

二、需要備份的文件

    必須備份的文件:

數(shù)據(jù)文件和控制文件

可以備份的文件:

重做日志文件、臨時(shí)文件、二進(jìn)制參數(shù)文件(spfile)、口令文件

三、冷備份的步驟

1. 找到所需要的備份文件

2. 正常關(guān)閉數(shù)據(jù)庫(kù)

3. 備份文件到指定的備份路徑下

4. 重新啟動(dòng)數(shù)據(jù)庫(kù)

四、冷腳本的寫法

4.1查看文件位置及狀態(tài)

--查看實(shí)例和數(shù)據(jù)庫(kù)的相關(guān)信息   

SQL>select instance_name,version,status,archiver,database_status from v$instance;

INSTANCE_NAME     VERSION       STATUS    ARCHIVE DATABASE_STATUS

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

dbsrv1         11.2.0.1.0       OPEN     STOPPED ACTIVE

SQL>select dbid,name,log_mode from v$database;

      DBID NAME      LOG_MODE

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

 294555525DBSRV1    NOARCHIVELOG

--查看數(shù)據(jù)文件及狀態(tài)信息

SQL> col file_name  for a50

SQL> col tablespace_name for a15

SQL>selectfile_name,tablespace_name,status,online_status from dba_data_files;

FILE_NAME                                   TABLESPACE_NAME STATUS    ONLINE_

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

/opt/oracle/app/oradata/dbsrv1/users01.dbf      USERS         AVAILABLE   ONLINE

/opt/oracle/app/oradata/dbsrv1/undotbs01.dbf     UNDOTBS1       AVAILABLE   ONLINE

/opt/oracle/app/oradata/dbsrv1/sysaux01.dbf         SYSAUX        AVAILABLE   ONLINE

/opt/oracle/app/oradata/dbsrv1/system01.dbf         SYSTEM        AVAILABLE   SYSTEM

/opt/oracle/app/oradata/costctl/COSTCTL_TBS.dbf      COSTCTL_TBS   AVAILABLE    ONLINE

/opt/oracle/app/oradata/dbsrv1/DEV_DATA.DBF          DEV_DATA      AVAILABLE   ONLINE

/opt/oracle/app/oradata/pdms/PDMS_DATA.dbf           PDMS_DATA      AVAILABLE  ONLINE

Oracle如何實(shí)現(xiàn)冷備份及其恢復(fù)

查看數(shù)據(jù)文件

Oracle如何實(shí)現(xiàn)冷備份及其恢復(fù)

SQL> col name for a50

SQL>selectfile#, name, status from v$datafile;

     FILE# NAME                                       STATUS

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

     1/opt/oracle/app/oradata/dbsrv1/system01.dbf          SYSTEM

     2/opt/oracle/app/oradata/dbsrv1/sysaux01.dbf          ONLINE

     3/opt/oracle/app/oradata/dbsrv1/undotbs01.dbf       ONLINE

     4/opt/oracle/app/oradata/dbsrv1/users01.dbf          ONLINE

     5/opt/oracle/app/oradata/costctl/COSTCTL_TBS.dbf    ONLINE

     6/opt/oracle/app/oradata/dbsrv1/DEV_DATA.DBF          ONLINE

     7/opt/oracle/app/oradata/pdms/PDMS_DATA.dbf          ONLINE

Oracle如何實(shí)現(xiàn)冷備份及其恢復(fù)

--查看臨時(shí)文件

Oracle如何實(shí)現(xiàn)冷備份及其恢復(fù)

SQL> col name for a60

SQL>select name from v$tempfile;

NAME

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

/opt/oracle/app/oradata/dbsrv1/temp01.dbf

/opt/oracle/app/oradata/costctl/COSTCTL_TBS_temp.dbf

/opt/oracle/app/oradata/pdms/PDMS_DATA_TEMP.dbf

Oracle如何實(shí)現(xiàn)冷備份及其恢復(fù)

--查看日志文件

Oracle如何實(shí)現(xiàn)冷備份及其恢復(fù)

SQL>select member from v$logfile;

MEMBER

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

/opt/oracle/app/oradata/dbsrv1/redo03.log

/opt/oracle/app/oradata/dbsrv1/redo02.log

/opt/oracle/app/oradata/dbsrv1/redo01.log

Oracle如何實(shí)現(xiàn)冷備份及其恢復(fù)

--查看控制文件

SQL>select name from v$controlfile;

NAME

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

/opt/oracle/app/oradata/dbsrv1/control01.ctl

/opt/oracle/app/flash_recovery_area/dbsrv1/control02.ctl

--查看參數(shù)文件

SQL> show parameter pfile

NAME                     TYPE        VALUE

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

spfile                     string    /opt/oracle/app/oracle/product/11.2.0/dbhome_1/dbs/spfiledbsrv1.ora

4.2進(jìn)行備份

方案一、

 --創(chuàng)建備份目錄

SQL> ho mkdir -p /u03/backup/coolbak

 --使用連接符生成復(fù)制文件命令

SQL>select'ho cp'||name||'/u03/backup/coolbak'from v$controlfile;

'HOCP'||NAME||'/U03/BACKUP/COOLBAK'

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

ho cp/opt/oracle/app/oradata/dbsrv1/control01.ctl/u03/backup/coolbak

ho cp/opt/oracle/app/flash_recovery_area/dbsrv1/control02.ctl/u03/backup/coolbak

 SQL>save/tmp/tmpbak.sql;   --將上面的輸入保存為tmpbak.sql

    Created file/tmp/tmpbak.sql

編輯coolbak.sql

注意修改密碼文件的位置和pfile的名字

Oracle如何實(shí)現(xiàn)冷備份及其恢復(fù)

    set feedback off

    set heading off

    set verify off

    set trimspool off

    set pagesize 0

    set linesize 200

    define dir ='/u03/backup/coolbak'

    define script ='/u03/backup/coolbak.txt'

    define passwd ='/u01/app/oracle/product/11.2.0/db_1/dbs/orapworcl'

    spool &script

    select'ho cp -pv '|| name ||' &dir'from v$controlfile

    unionall

    select'ho cp -pv '|| name ||' &dir'from v$datafile

    unionall

    select'ho cp -pv '|| member ||' &dir'  from v$logfile

    unionall

    select'ho cp -pv '|| name ||' &dir'from v$tempfile

    /

    create pfile ='&dir/initorcl.ora'from spfile;

    ho cp -pv   &passwd  &dir

    spool off

    shutdown immediate

    ho mkdir -pv /u03/backup/coolbak

    ho rm -rf /u03/backup/coolbak/*

    start &script

    startup

Oracle如何實(shí)現(xiàn)冷備份及其恢復(fù)

 --執(zhí)行coolbak.sql

    SQL> @/tmp/coolbak.sql;

 --執(zhí)行過程及數(shù)據(jù)庫(kù)啟動(dòng)略

  --啟動(dòng)后查看備份的文件

需要注意的是這種方式不利于恢復(fù),得去尋找恢復(fù)的目錄最好在cool后建立與數(shù)據(jù)庫(kù)相同的目錄。

 冷恢復(fù)的步驟

脫機(jī)恢復(fù)到原來位置的步驟:

1. 如果數(shù)據(jù)庫(kù)沒有關(guān)閉,需關(guān)閉數(shù)據(jù)庫(kù)

2. 將所有的備份數(shù)據(jù)文件和備份控制文件復(fù)制到數(shù)據(jù)庫(kù)原來的位置

3. 也可以將其它所有的備份文件復(fù)制到數(shù)據(jù)庫(kù)原來的位置(該操作不是必須的)

4. 重啟數(shù)據(jù)庫(kù)

恢復(fù)成功后,數(shù)據(jù)庫(kù)即恢復(fù)到上一次的備份,恢復(fù)所需要的時(shí)間就是復(fù)制文件所需要的時(shí)間。

脫機(jī)恢復(fù)到非原來位置的步驟:

有時(shí)候儲(chǔ)存數(shù)據(jù)文件的磁盤壞了,可能需要改變數(shù)據(jù)文件的恢復(fù)位置

1. 將備份文件恢復(fù)到正常的磁盤上

2. 將數(shù)據(jù)庫(kù)加載為mount狀態(tài)(startup mount)

3. alter database rename file 'u01/xxx.DBF'  to 'u02/xxx.DBF'    (u01磁盤損壞)

4. alter database open

以上是“Oracle如何實(shí)現(xiàn)冷備份及其恢復(fù)”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!

本文名稱:Oracle如何實(shí)現(xiàn)冷備份及其恢復(fù)
網(wǎng)站URL:http://bm7419.com/article12/igdpdc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)頁設(shè)計(jì)公司手機(jī)網(wǎng)站建設(shè)、網(wǎng)站營(yíng)銷ChatGPT、品牌網(wǎng)站制作、網(wǎng)站內(nèi)鏈

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)

成都seo排名網(wǎng)站優(yōu)化