IT貓撲網(wǎng):您身邊最放心的安全下載站! 最新更新|軟件分類|軟件專題|手機(jī)版|論壇轉(zhuǎn)貼|軟件發(fā)布

您當(dāng)前所在位置: 首頁數(shù)據(jù)庫(kù)Oracle → ORACLE 數(shù)據(jù)庫(kù)備份技術(shù)

ORACLE 數(shù)據(jù)庫(kù)備份技術(shù)

時(shí)間:2015-06-28 00:00:00 來源:IT貓撲網(wǎng) 作者:網(wǎng)管聯(lián)盟 我要評(píng)論(0)

---- 1 引言

---- ORACLE數(shù)據(jù)庫(kù)是一種大型關(guān)系型的數(shù)據(jù)庫(kù),可以存貯達(dá)到存貯TB的數(shù)據(jù),那么如何保證這些數(shù)據(jù)的安全尤其至關(guān)重要,我們從1991年開始使用ORACLE數(shù)據(jù)庫(kù),通過這些年的使用,我們制定了一整套的ORACLE數(shù)據(jù)庫(kù)的備份制度。現(xiàn)在把我們的備份制度介紹給大家,供大家參考。

---- 2 根據(jù)實(shí)際需要決定數(shù)據(jù)庫(kù)的運(yùn)行方式

---- ORACLE數(shù)據(jù)庫(kù)有兩種運(yùn)行方式:一是歸檔方式(ARCHIVELOG),歸檔方式的目的是當(dāng)數(shù)據(jù)庫(kù)發(fā)生故障時(shí)最大限度恢復(fù)所有已提交的事物;二是不歸檔方式(NOARCHIVELOG),恢復(fù)數(shù)據(jù)庫(kù)到最近的回收點(diǎn)。我們根據(jù)數(shù)據(jù)庫(kù)的高可用性和用戶可承受丟失的工作量的多少,把我們正式運(yùn)行的數(shù)據(jù)庫(kù)采用為歸檔方式;那些正在開發(fā)和調(diào)試的數(shù)據(jù)庫(kù)采用不歸檔方式。

---- 3 如何改變數(shù)據(jù)庫(kù)的運(yùn)行方式

---- 3.1在創(chuàng)建數(shù)據(jù)庫(kù)時(shí)設(shè)置數(shù)據(jù)庫(kù)的運(yùn)行的方式

---- 在創(chuàng)建數(shù)據(jù)庫(kù)時(shí),作為創(chuàng)建數(shù)據(jù)庫(kù)的一部分,就決定了數(shù)據(jù)庫(kù)初始的存檔方式。一般情況下為NOARCHIVELOG方式。當(dāng)數(shù)據(jù)庫(kù)創(chuàng)建好以后,根據(jù)我們的需要把需要運(yùn)行在歸檔方式的數(shù)據(jù)庫(kù)改成ARCHIVELOG方式。

---- 3.2改變不歸檔方式為為歸檔方式

關(guān)閉數(shù)據(jù)庫(kù),備份已有的數(shù)據(jù)

改變數(shù)據(jù)庫(kù)的運(yùn)行方式是對(duì)數(shù)據(jù)庫(kù)的重要改動(dòng),所以要對(duì)數(shù)據(jù)庫(kù)做備份,對(duì)可能出現(xiàn)的問題作出保護(hù)。

啟動(dòng)Instance ,Mount數(shù)據(jù)庫(kù)但不打開數(shù)據(jù)庫(kù),來改變歸檔方式

sqldba lmode=y(svrmgrl)

sqldba>connect internal

sqldba>startup mount

sqldba>alter database archivelog;

?使能自動(dòng)存檔

在初始化文件init*.ora(一般放ORACLE根目錄的下層目錄dbs下)加參數(shù):

log_archive_start=true

指定存檔的重做登錄文件名和存放的位置

同樣是在初始化文件init*.ora中加入下面的參數(shù):

log_archive_format=%S.arc

log_archive_dest=/arch12/arch (arch12 是日志文件存放的目錄)

關(guān)閉數(shù)據(jù)庫(kù),重新啟動(dòng)數(shù)據(jù)庫(kù),歸檔方式轉(zhuǎn)換完成。

---- 4 回收制度

---- 4.1根據(jù)數(shù)據(jù)庫(kù)的運(yùn)行方式和可承受丟失的工作量來決定數(shù)據(jù)庫(kù)的回收制度對(duì)于不歸檔方式,我們用的是ORACLE數(shù)據(jù)庫(kù)的邏輯備份Export ,回收的制度是:一個(gè)月作一次全備份(x01.dmp),一周作一次累積備份(c*.dmp),一天一次增量備份(I*.dmp),具體的是星期一到星期五作增量備份,星期六做累積備份或全備份,每次做完備份后自動(dòng)傳到其它的機(jī)器上存儲(chǔ)。這些備份都是自動(dòng)執(zhí)行的,后面給出程序文本。

---- 對(duì)于歸檔方式,我們用的是ORCALE的物理備份:當(dāng)數(shù)據(jù)庫(kù)創(chuàng)建好以后,做一次物理上的全備份,平時(shí)在不關(guān)閉數(shù)據(jù)庫(kù)的前提下,一個(gè)星期對(duì)經(jīng)常改變的數(shù)據(jù)文件做聯(lián)機(jī)的數(shù)據(jù)庫(kù)數(shù)據(jù)文件的物理備份;當(dāng)數(shù)據(jù)庫(kù)的結(jié)構(gòu)發(fā)生改變,如:增加表空間,加數(shù)據(jù)文件等,如允許關(guān)機(jī),正常關(guān)閉數(shù)據(jù)庫(kù),重新做數(shù)據(jù)庫(kù)全備份,否則,備份控制文件,備份數(shù)據(jù)文件照常。聯(lián)機(jī)的日志文件我們是寫在陣列上的,不用鏡象和備份。

---- 4.2回收的方法

---- 4.2.1不歸檔方式

---- 我們拿曙光AIX操作系統(tǒng)為例,來講解以下如何做自動(dòng)備份:

---- a.首先建UNIX用戶 demo/demo

---- b.拷貝oracle用戶下的 .profile 到 demo 用戶下,以保證 demo 用戶可以用 Export命令

---- c.用root用戶登錄,編輯 /var/adm/cron/cron.allow 加入用戶名demo,這樣demo用戶就有權(quán)自動(dòng)執(zhí)行數(shù)據(jù)庫(kù)備份的shell程序;

---- d.創(chuàng)建數(shù)據(jù)庫(kù)備份程序,放到本用戶的下層目錄bin下,并且這些文件要有可 執(zhí)行權(quán)文件zlbf1:(增量備份1,星期一執(zhí)行的程序)

. /u11/demo/.profile

exp system/manager inctype=INCREMENTAL file=i01.dmp

ftp -n< < !

open 10.10.10.40

user demo demo

binary

prompt

cd backup40

put i01.dmp

close

bye

!

文件zlbf2:(增量備份2, 星期二執(zhí)行的程序)

. /u11/demo/.profile

exp system/manager inctype=INCREMENTAL file=i02.dmp

ftp -n< < !

open 10.10.10.40

user demo demo

binary

prompt

cd backup40

put i02.dmp

close

bye

!

文件zlbf3:(增量備份3, 星期三執(zhí)行的程序)

. /u11/demo/.profile

exp system/manager inctype=INCREMENTAL file=i03.dmp

ftp -n< < !

open 10.10.10.40

user demo demo

binary

prompt

cd backup40

put i03.dmp

close

bye

!

文件zlbf4:(增量備份4, 星期四執(zhí)行的程序)

. /u11/demo/.profile

exp system/manager inctype=INCREMENTAL file=i04.dmp

ftp -n< < !

open 10.10.10.40

user demo demo

binary

prompt

cd backup40

put i04.dmp

close

bye

!

文件zlbf5:(增量備份5, 星期五執(zhí)行的程序)

. /u11/demo/.profile

exp system/manager inctype=INCREMENTAL file=i05.dmp

ftp -n< < !

open 10.10.10.40

user demo demo

binary

prompt

cd backup40

put i05.dmp

close

bye

!


文件zlbf6:(增量備份6, 星期六執(zhí)行的程序)

. /u11/demo/.profile

js=`ls c*.dmp|wc -l`

if test $js = 0

then

exp system/manager inctype=CUMULATIVE file=c01.dmp

ftp -n< < !

open 10.10.10.40

user demo demo

binary

prompt

cd backup40

put c01.dmp

close

bye

!

fi

if test $js = 1

then

exp system/manger inctype=CUMULATIVE file=c02.dmp

ftp -n< < !

open 10.10.10.40

user demo demo

binary

prompt

cd backup40

put c02.dmp

close

bye

!

fi

if test $js = 2

then

exp system/maneger inctype=CUMULATIVE file=c03.dmp

ftp -n< < !

open 10.10.10.40

user demo demo

binary

prompt

cd backup40

put c03.dmp

close

bye

!

fi

if test $js = 3

then

exp system/manager inctype=COMPLETE file=x01.dmp

ftp -n< < !

open 10.10.10.40

user demo demo

binary

prompt

cd backup40

put x01.dmp

close

bye

!

rm c*.dmp

fi

---- e.在demo 用戶下建一個(gè)文件,假如叫:cron.demo,文件內(nèi)容如下

59 22 * * 1 bin/zlbf1

59 22 * * 2 bin/zlbf2

59 22 * * 3 bin/zlbf3

59 22 * * 4 bin/zlbf4

59 22 * * 5 bin/zlbf5

59 22 * * 6 bin/zlbf6

---- f.在demo用戶下執(zhí)行下面的命令:

crontab cron.demo 執(zhí)行的結(jié)果放到

/var/spool/cron/crontabs/demo文件里

---- g.重新啟動(dòng)cron 進(jìn)程,命令:kill -1 進(jìn)程號(hào)

---- h.執(zhí)行結(jié)果放在本用戶的郵件里


---- i.查看結(jié)果是否執(zhí)行,請(qǐng)看:/var/adm/cron/log文件


---- 4.2.2歸檔方式


---- a. 找到要回收的數(shù)據(jù)文件、聯(lián)機(jī)重做登錄文件、控制文件和參數(shù)文件


---- b. 正常關(guān)閉數(shù)據(jù)庫(kù),作一次全回收(用操作系統(tǒng)的TAR命令,可以寫成shell程序),然后打開數(shù)據(jù)庫(kù)供正常使用,shell程序如下:

tar cvf /dev/rmt/ctape2 /u1/oracle/dbs/ctrl1ora7.ctl

/u1/oracle/dbs/ctrl2ora7.ctl

/u1/oracle/dbs/ctrl3ora7.ctl

/u1/oracle/dbs/systora7.dbf

/u1/oracle/dbs/rbsora7.dbf

/u1/oracle/dbs/tempora7.dbf

/u1/oracle/dbs/toolora7.dbf

/u1/oracle/dbs/usrora7.dbf

/ls1/ls1.dbf

/u1/oracle/dbs/log1ora7.dbf

/u1/oracle/dbs/log2ora7.dbf

/u1/oracle/dbs/log3ora7.dbf

---- a. 經(jīng)常作聯(lián)機(jī)的表空間和數(shù)據(jù)文件的部分回收

首先標(biāo)記聯(lián)機(jī)表空間回收的開始

alter tablespace 表空間名 begin backup;

用操作系統(tǒng)命令備份數(shù)據(jù)文件


最后標(biāo)記聯(lián)機(jī)的表空間回收結(jié)束

alter tablespace 表空間名 end backup

---- 多個(gè)表空間可以一起做標(biāo)記,備份做標(biāo)記的所有數(shù)據(jù)文件后,一起標(biāo)記結(jié)束。

---- d. 當(dāng)數(shù)據(jù)庫(kù)結(jié)構(gòu)發(fā)生改變后,要對(duì)它的控制文件做回收

sqldba >alter database backup

controlfile to ’文件名’ reuse;

---- 5 結(jié)束語

---- 一套完善的備份制度是數(shù)據(jù)庫(kù)安全運(yùn)行的有利保障,文章所介紹的可供同行們參考。

關(guān)鍵詞標(biāo)簽:

相關(guān)閱讀

文章評(píng)論
發(fā)表評(píng)論

熱門文章 Oracle中使用alter table來增加,刪除,修改列的語法 Oracle中使用alter table來增加,刪除,修改列的語法 oracle中使用SQL語句修改字段類型-oracle修改SQL語句案例 oracle中使用SQL語句修改字段類型-oracle修改SQL語句案例 誤刪Oracle數(shù)據(jù)庫(kù)實(shí)例的控制文件 誤刪Oracle數(shù)據(jù)庫(kù)實(shí)例的控制文件 為UNIX服務(wù)器設(shè)置Oracle全文檢索 為UNIX服務(wù)器設(shè)置Oracle全文檢索

相關(guān)下載

    人氣排行 oracle中使用SQL語句修改字段類型-oracle修改SQL語句案例 Oracle中使用alter table來增加,刪除,修改列的語法 ORACLE SQL 判斷字符串是否為數(shù)字的語句 ORACLE和SQL語法區(qū)別歸納(1) oracle grant 授權(quán)語句 ORACLE修改IP地址后如何能夠使用 如何加速Oracle大批量數(shù)據(jù)處理 Oracle刪除表的幾種方法