熱備份支持在數(shù)據(jù)庫不停機的情況下進行備份,冷備份是必須在數(shù)據(jù)庫shutdown以后使用操作系統(tǒng)的命令對表空間進行拷貝進行的備份。

創(chuàng)新互聯(lián)公司為企業(yè)提供:品牌網(wǎng)站設(shè)計、網(wǎng)絡(luò)營銷策劃、成都小程序開發(fā)、營銷型網(wǎng)站建設(shè)和網(wǎng)站運營托管,一站式網(wǎng)絡(luò)營銷整體服務(wù)。實現(xiàn)不斷獲取潛在客戶之核心目標(biāo),建立了企業(yè)專屬的“成都全網(wǎng)營銷”,就用不著再為了獲取潛在客戶而苦惱,相反,客戶會主動找您,生意就找上門來了!
熱備份適用于重要的數(shù)據(jù)庫,比如7x24不能中斷的生產(chǎn)系統(tǒng),同時可以保證數(shù)據(jù)庫在出現(xiàn)崩潰時結(jié)合歸檔日志可以恢復(fù)到任意一個時間點,不會造成數(shù)據(jù)丟失。
冷備份在數(shù)據(jù)庫出現(xiàn)問題是 只會恢復(fù)到備份時的那一時間點,備份完成到數(shù)據(jù)庫出現(xiàn)問題需要恢復(fù)時的這一時間段內(nèi)的所有新數(shù)據(jù)、修改記錄都無法恢復(fù)。
熱備份只能在歸檔模式下進行,冷備份不需要歸檔模式,歸檔模式會對系統(tǒng)性能尤其是磁盤I/O造成一定的影響,但是相對于歸檔的好處和安全性,相信大多數(shù)DBA都會選擇歸檔模式。
昨天碰到一客戶,數(shù)據(jù)庫使用的是WIN2008+RAC+ASM。由于EMC存儲問題,導(dǎo)致ASM實例出問題,讀不出數(shù)據(jù),進而導(dǎo)致RAC出問題。折騰了2個小時,終于將ASM實例啟動,將RAC轉(zhuǎn)換成單節(jié)點。可悲的是,ASM磁盤組讀取錯誤:select 表格出錯,exp、expdp出錯,rman拷貝出錯。趕到客戶現(xiàn)場,繼續(xù)折騰,終于修復(fù)錯誤。簡要步驟如下 1、同一主機下面建另一實例,用于運行DBMS_FILE_TRANSFER 2、在該實例上運行DBMS_FILE_TRANSFER,拷貝數(shù)據(jù)文件,控制文件,日志文件 引用 CREATE DIRECTORY source_dir AS '+DATADG/ORADATA'; CREATE DIRECTORY dest_dir AS '/tmp';BEGIN DBMS_FILE_TRANSFER.COPY_FILE( source_directory_object = 'source_dir', source_file_name = 'user01.dbf', destination_directory_object = 'dest_dir', destination_file_name = 'user01.dbf'); END; /二是使用ASM提供的ftp特性 1、同一主機下面建另一實例,用于傳輸ftp 2、用ftp傳輸相關(guān)文件附:DBMS_FILE_TRANSFER使用限制 # The user must have read privilege on the source directory object and write privilege on the destination directory object. # The procedure converts directory object names to uppercase unless they are surrounded by double quotes. # Files to be copied must be multiples of 512 bytes in size. # Files to be copied must be equal to or less than 2 terabytes in size. # File transfers are not transactional. # Files are copied as binary, so no character conversions are performed. # File copies can be monitored using the V$SESSION_LONGOPS view ++++++++++++++++++++++++++ 據(jù)一同事反映,Oracle 11g提供了ASM cp命令,允許在ASM磁盤組和操作系統(tǒng)文件之間互相拷貝。
Oracle的數(shù)據(jù)備份主要有冷備、熱備和數(shù)據(jù)導(dǎo)出。針對不同的數(shù)據(jù)安全要求,可以采用不同的備份方式,目前生產(chǎn)系統(tǒng)比較常用的是熱備份,安全性較高。
下面是種方式的優(yōu)缺點介紹:
冷備份是Oracle最簡單的一種備份;執(zhí)行冷備份前必須關(guān)閉數(shù)據(jù)庫;然后使用操作系統(tǒng)實用工具或者第三方工具備份所有相關(guān)的數(shù)據(jù)庫文件。
優(yōu)點:能簡單快速地備份。能簡單快速地恢復(fù)。執(zhí)行簡單。
缺點:必須關(guān)閉數(shù)據(jù)庫,只能恢復(fù)備份時的狀態(tài)。
熱備份是當(dāng)數(shù)據(jù)庫正在運行時進行數(shù)據(jù)備份的過程。執(zhí)行熱備份的前提是:數(shù)據(jù)庫運行在可歸檔日志模式。適用于24X7不間斷運行的關(guān)鍵應(yīng)用系統(tǒng)。
優(yōu)點:備份時數(shù)據(jù)庫可以是打開的。熱備份可以恢復(fù)到數(shù)據(jù)庫的某一時點。
缺點:執(zhí)行相對比較復(fù)雜。由于數(shù)據(jù)庫不間斷運行,熱備份可能造成CPU、I/O過載,應(yīng)在數(shù)據(jù)庫不太忙時進行。
冷備份和熱備份都備份物理數(shù)據(jù)庫文件,因而被稱為物理備份。而export備份的是數(shù)據(jù)庫對象,因此被稱為邏輯備份。
優(yōu)點:能執(zhí)行對象或者行恢復(fù)。備份和恢復(fù)速度更快。能夠跨操作系統(tǒng)平臺遷移數(shù)據(jù)庫。數(shù)據(jù)庫可一直運行。
缺點:只能恢復(fù)到導(dǎo)出時的狀態(tài)。export并不是冷備份和熱備份的替代工具。
冷、熱備份可保護介質(zhì)失效。export備份可保護用戶或應(yīng)用錯誤。
1. 復(fù)制舊的數(shù)據(jù)庫文件
(1) 用SQLPlus連接數(shù)據(jù)庫:sqlplus 用戶名/密碼 as sysdba
(2) 關(guān)閉DB :shutdown immediate;
(3) 復(fù)制文件到其他地方存儲實現(xiàn)備份
1)復(fù)制三個文件夾admin;oradata(datafile,?controlfile,redo【注:數(shù)據(jù)文件, 控制文件,redo】);flash_recovery_area三個文件夾。2)dbhome_1下的內(nèi)容database(PWDfile、pfile);dbs(spfile);NETWORK/ADMIN(listener.ora、tnsnames.ora)。
2. Oracle重新建庫恢復(fù)
(1)創(chuàng)建一個和原來一樣的數(shù)據(jù)庫。(安裝路徑和數(shù)據(jù)庫名必須和原來一致)
(2)停止數(shù)據(jù)庫shutdown immediate;
(3)復(fù)制安裝目錄下的admin、oradata、flash_recovery_area覆蓋,復(fù)制database(PWDfile、pfile) 覆蓋
(4)啟動數(shù)據(jù)庫?startup;
備注:
無歸檔模式:將備份文件拷貝回原來的目錄即可,然后啟動數(shù)據(jù)庫。
歸檔模式:
①將數(shù)據(jù)文件、控制文件拷貝回原來目錄
②SQLstartup mount;
SQLrecover database using backup controlfile;
③將相應(yīng)的歸檔日志和聯(lián)機日志拖到CMD命令窗口進行跑日志。
④SQLalter database open resetlogs;
3. 軟件重裝恢復(fù)
此時,操作系統(tǒng)重裝,如果做冷備恢復(fù),要保證相同操作系統(tǒng),相同的數(shù)據(jù)庫版本。形勢如同異機恢復(fù)。
A、不創(chuàng)建實例:(源機上的數(shù)據(jù)庫名字為orcl)
(1)?恢復(fù)oradata/orcl目錄
在目標(biāo)機上的oradata目錄下建立orcl文件夾,然后進行數(shù)據(jù)覆蓋。
包括數(shù)據(jù)文件、參數(shù)文件、控制文件、日志文件、pwd文件,放在與原系統(tǒng)相同的目錄。如果目錄有所改變,則需要另外建立控制文件,修改pfile。?(2) 恢復(fù)admin/orcl目錄在目標(biāo)機上的admin目錄下建立orcl文件夾,然后在orcl里面再建立adump、bdump、cdump、udump、dpdump、pfile六個文件夾
(3) 建立服務(wù)把源機的密碼文件拷貝到目標(biāo)機的database目錄下。使用oradim命令在cmd下oradim -new -sid orcl?表示建立一個服務(wù),sid為orcl(最好名字和源機備份的數(shù)據(jù)庫名字一致,就不需要重建密碼文件)。如果是在linux下,不需要此步。?(4) 重建創(chuàng)建參數(shù)文件、控制文件拷貝源機的pfile到目標(biāo)機的一個目錄下,修改pfile里面相關(guān)文件的路徑。然后通過SQLcreate spfile from pfile=‘文件路徑'來創(chuàng)建參數(shù)文件。重建控制文件命令:SQLalter database backup controlfile to trace;?然后會在udump文件夾下產(chǎn)生一個追蹤文件,打開文件找到如下一段,復(fù)制到文本中,修改相應(yīng)路徑然后保存為:createctl.sql文件(sql腳本文件),復(fù)制到目標(biāo)機上。注意:SQLalter database backup controlfile to trace as 'F:/DB_RECOVERY/CONTROL_FILE_TRACE.TXT';復(fù)制的原始導(dǎo)出txt中的,相應(yīng)代碼片段如下:?View Code
(5)? 數(shù)據(jù)庫設(shè)置SID和啟動服務(wù)
12345678 ? ?c:\set?ORACLE_SID=orclc:\sqlplus?"/as sysdba"?SQLcreate?spfile?from?pfile='c:\pfile.txt';SQL@c:\createctl.sql;SQLshutdown immediate;SQLstartup;SQLalter?database?open?resetlogs; ?
備注:
如果(4)、(5)不好用,可以用下面的方法修改這些路徑不一致的問題(反正筆者電腦上冷備份恢復(fù)時,上面的兩個步驟就不好用):
1)SQL下執(zhí)行如下語句,恢復(fù)控制文件
STARTUP NOMOUNT
CREATE CONTROLFILE REUSE DATABASE "ORCL" NORESETLOGS? ARCHIVELOG
MAXLOGFILES 16
MAXLOGMEMBERS 3
MAXDATAFILES 100
MAXINSTANCES 8
MAXLOGHISTORY 292
2)修改日志、DBF的路徑
修改oracle_home\oradata\orcl下及相關(guān)文件的路徑
(6) TNSNAMES設(shè)置在network\admin下的tnsnames.ora中添加如下片段
123456789 ? ?ORCL =(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521)))(CONNECT_DATA =(SERVICE_NAME = orcl))) ?
(7) 建立監(jiān)聽用net configuration為orcl實例新建監(jiān)聽?至此,冷備份恢復(fù)成功。即使你現(xiàn)在用oem打開數(shù)據(jù)庫時發(fā)現(xiàn)提示找不到sid ,但實際上你已經(jīng)成功了,此時只需要重啟一下的你的服務(wù)器就可以。
B、創(chuàng)建實例方式(實例SID與源機數(shù)據(jù)庫SID一致)
(1) 替換和覆蓋oradata\orcl目錄刪除目標(biāo)機的oradata\orcl底下的所有文件,把源機的所有data文件、redo文件拷貝到此目錄下
(2) 密碼文件覆蓋刪除目標(biāo)機的密碼文件,拷貝源機密碼文件到目標(biāo)機下。
(3) 控制文件恢復(fù)在源機上重建目標(biāo)機的控制文件:SQLalter database backup controlfile to trace;然后會在udump文件夾下產(chǎn)生一個追蹤文件,打開文件找到上面那段,復(fù)制到文本中,修改相應(yīng)路徑然后保存為:createctl.sql文件(sql腳本文件),復(fù)制到目標(biāo)機上。
復(fù)制代碼代碼如下:
12345 ? ?c:\sqlplus?"/as sysdba"SQL@c:\createctl.sql;SQLshutdown immediate;SQLstartup;SQLalter?database?open?resetlogs; ?
(4)? 在network\admin下的tnsnames.ora中添加如下片段
復(fù)制代碼代碼如下:
123456789 ? ?ORCL =(DESCRIPTION =(ADDRESS_LIST =(ADDRESS = (PROTOCOL = TCP)(HOST = 127.0.0.1)(PORT = 1521)))(CONNECT_DATA =(SERVICE_NAME = orcl))) ?
(5) 用net configuration為orcl實例新建監(jiān)聽
若是初學(xué)Linux的話建議看看《Linux就該這么學(xué)》這本書。
1、數(shù)據(jù)量不大的話,比如整體小于10G,你可以在主機訪問量小時或者shutdown時將oracle打包。例如:tar zcf /opt/u02.gz /u02,然后將u02.gz文件scp到備機。
2、如果數(shù)據(jù)量很大,你可以用rsync同步到備機
3、配置主備無密碼互訪
4、添加計劃任務(wù)
crontab -e
0 4 * * * /opt/rsync_ora.sh;
rsync_ora.sh內(nèi)容:
#!/bin/sh
rsync -av '-e ssh -p 22' /u02/oracle oracle@172.16.1.2:/u02
rsync -av '-e ssh -p 22' /data1/oracle oracle@172.16.1.2:/data1
網(wǎng)站標(biāo)題:oracle如何冷備,oracle11g冷備
當(dāng)前網(wǎng)址:http://chinadenli.net/article37/dsecjpj.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供移動網(wǎng)站建設(shè)、網(wǎng)站維護、網(wǎng)站營銷、靜態(tài)網(wǎng)站、網(wǎng)頁設(shè)計公司、做網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)