主頁 > 知識庫 > 自動備份Oracle數(shù)據(jù)庫

自動備份Oracle數(shù)據(jù)庫

熱門標(biāo)簽:服務(wù)外包 鐵路電話系統(tǒng) 網(wǎng)站排名優(yōu)化 地方門戶網(wǎng)站 AI電銷 百度競價排名 Linux服務(wù)器 呼叫中心市場需求
正在看的ORACLE教程是:自動備份Oracle數(shù)據(jù)庫。

相信為數(shù)不少的系統(tǒng)管理員每天都在做著同一樣的工作——對數(shù)據(jù)進(jìn)行備份。一旦哪一天疏忽了,而這一天系統(tǒng)又恰恰發(fā)生了故障,需要進(jìn)行數(shù)據(jù)恢復(fù),那么此時就無能為力了。假如每天設(shè)定一個固定的時間,系統(tǒng)自動進(jìn)行備份,那該多好啊!下面筆者結(jié)合實(shí)踐經(jīng)驗(yàn),談一談UNIX環(huán)境下Oracle數(shù)據(jù)庫的自動備份,以起到拋磚引玉的作用。 

  我們計(jì)劃讓數(shù)據(jù)庫在晚上23點(diǎn)做export導(dǎo)出備份,在凌晨2點(diǎn)將備份文件拷貝到磁帶上,在凌晨4點(diǎn)將備份文件拷貝到另一臺UNIX機(jī)器上,為此我們可進(jìn)行如下操作: 

  一、導(dǎo)出數(shù)據(jù)庫 

  export命令將數(shù)據(jù)庫中的數(shù)據(jù)備份成一個二進(jìn)制文件,它通常有三種模式:用戶模式、表模式和整個數(shù)據(jù)庫模式。本文擬采用用戶模式,備份之前,應(yīng)先建立一個備份目錄,以容納備份文件,比如可建一個/backup目錄。接著我們可在UNIX的Oracle目錄下(也可以是其它目錄)分別建立兩個文件ora—backup,tar—backup。需要說明的是,前一個文件需要對Oracle的參數(shù)進(jìn)行初始化,為了方便起見,我們不妨將初始化命令放到一個文件中(文件名姑且定為ora—env),再由第一個文件調(diào)用它。 

  1. ora—env文件對Oracle的參數(shù)進(jìn)行初始化,其內(nèi)容如下: 


  2. ora—backup文件對數(shù)據(jù)庫做export導(dǎo)出,導(dǎo)出的文件名可以任意定,本文定為字母“xx”加當(dāng)天日期,即假如當(dāng)天日期是12月10號,則導(dǎo)出的文件名為“xx1210.dmp”,以區(qū)別于其它日期的備份文件。 

[NextPage]

  ora—backup文件內(nèi)容:


 ?。3跏蓟疧racle數(shù)據(jù)庫


  #把當(dāng)天日期賦予變量rq


 ?。?清空 /backup目錄


  本命令用于在$提示符下,導(dǎo)出test用戶的數(shù)據(jù)(其口令亦為test),導(dǎo)出文件及日志均放在/backup目錄下。

  二、磁帶備份

  tar—backup文件將用export命令導(dǎo)出的數(shù)據(jù)文件拷貝到磁帶上。

  tar—backup文件內(nèi)容:


  本命令可將/backup目錄下當(dāng)天產(chǎn)生的文件備份到磁帶上。本文件中,tar命令使用了三個參數(shù),其中r選項(xiàng)表示向磁帶上拷入文件而不破壞磁帶原來內(nèi)容,v選項(xiàng)表示在拷貝過程中顯示文件信息,f選項(xiàng)后面加上磁帶設(shè)備名,指定文件向何處拷貝,n選項(xiàng)表示磁帶機(jī)不倒帶。/dev/rmt/0表示UNIX主機(jī)第一個磁帶驅(qū)動器,同理,/dev/rmt/1則表示UNIX主機(jī)第二個磁帶驅(qū)動器,依此類推。

  ora—env、ora—backup、tar—backup文件編寫完成后,分別使用下述命令:


  這樣,三個文件就都變成了可執(zhí)行文件。

  三、異地備份

  我們知道,通??捎肍TP命令在兩臺主機(jī)間傳輸數(shù)據(jù),但一般是通過交互方式實(shí)現(xiàn)的,即需要手工輸入目標(biāo)主機(jī)的IP地址、用戶名、口令等。顯然,這不符合自動備份的要求。所幸的是,我們可以通過編寫一個.netrc的文件來達(dá)到目標(biāo)。這一文件必須命名為.netrc,且必須存放在啟動FTP命令的機(jī)器上的用戶注冊目錄中,該文件的權(quán)限應(yīng)禁止組內(nèi)或其它用戶進(jìn)行讀訪問。這樣,當(dāng)用戶使用FTP命令的時候,系統(tǒng)將會在該用戶的注冊目錄中尋找.netrc文件,如果能夠?qū)ふ业?,將會首先?zhí)行該文件,否則,會交互式地提示用戶輸入用戶名、口令等。
1 3 4

[NextPage]

在使用FTP命令之前,應(yīng)先在另一臺作備份用的UNIX機(jī)器上建一目錄,以容納備份文件,本文建的目錄是/pub 。需要指出的是,為了加快備份速度,兩臺主機(jī)之間的傳輸速率應(yīng)盡可能的高,最好位于同一局域網(wǎng)上。 

  .netrc文件內(nèi)容如下: 

  machine host2   

 ?。?nbsp;host2為作備份用的主機(jī)名 

  login oracle   

  #oracle為備份主機(jī)上的一個用戶 

  password oracle   

 ?。racle用戶的口令為oracle 

  macdef init     

  #定義一個名為init的宏,它將在自動注冊進(jìn)程的最后被執(zhí)行 

  bin       

 ?。N募膫鬏敺绞皆O(shè)為二進(jìn)制 

  lcd /backup   

 ?。?nbsp;進(jìn)入本地工作目錄/backup 

  cd /pub     

 ?。?nbsp;進(jìn)入備份主機(jī)目錄/pub 

  mput      

 ?。?nbsp;將/backup目錄下的所有文件傳輸至備份主機(jī) 

  bye       

 ?。M顺鯢TP會話進(jìn)程 

  .netrc文件編寫完成后,使用下述命令: 

  chmod 600 .netrc 

  這樣,.netrc文件就只能被該用戶所訪問。 
1 2 4 

[NextPage]

 四、啟動備份進(jìn)程 

  Cron是一個永久進(jìn)程,它由/etc/rc.local啟動執(zhí)行。Cron檢查/var/spool/cron/crontabs/目錄中的文件,找到所要執(zhí)行的任務(wù)和執(zhí)行任務(wù)的時間。 

  Crontab文件的每一行由六個域(minutes、hours、day of month、month、day of week、 command)組成,域之間用空格或Tab分開,其中: 

   minutes:分鐘域,值的范圍是0到59 

   hours:小時域,值的范圍是0到23 

   day of month:日期,值的范圍是1到31 

   month:月份,值的范圍是1到12 

   day of week:星期,值的范圍是0到6,星期日值為0 

   command:所要運(yùn)行的命令 

  如果一個域是,表明命令可以在該域所有可能的取值范圍內(nèi)執(zhí)行。 

  如果一個域是由連字符隔開的兩個數(shù)字,表明命令可以在兩個數(shù)字之間的范圍內(nèi)執(zhí)行(包括兩個數(shù)字本身)。 

  如果一個域是由逗號隔開的一系列值組成的,表明命令可以在這些值組成的范圍內(nèi)執(zhí)行。 

  如果日期域和星期域都有值,則這兩個域都有效。 

  現(xiàn)在,我們編寫一個文件,用以啟動自動備份進(jìn)程。值得注意的是,該文件只能在Oracle用戶名下用crontab -e 命令來編輯,否則將不會被定時執(zhí)行,文件名定為Oracle,文件將放在/var/spool/cron/crontabs 目錄下。編輯完成后,可以在Oracle的$提示符下,用crontab -l命令來查看。 

  Oracle文件內(nèi)容: 

  0 23    /oracle/ora—backup 

 ?。?nbsp;每天23點(diǎn)對數(shù)據(jù)庫執(zhí)行備份 

  0 2    /oracle/tar—backup 

  # 每天2點(diǎn)將文件備份到磁帶上 

  0 4    ftp -i&n

[1] [2] 下一頁

正在看的ORACLE教程是:自動備份Oracle數(shù)據(jù)庫。bsp;host2   

 ?。?nbsp;每天4點(diǎn)將文件備份到另一臺主機(jī)上 

  經(jīng)過以上的操作后,系統(tǒng)每天晚上將自動產(chǎn)生一個備份,并且自動將備份文件分別拷貝到磁帶上和另一臺主機(jī)上。系統(tǒng)管理員需要做的是,隔幾天換一盤磁帶(更換磁帶的周期取決于備份文件的大小和磁帶的容量)和清理備份目錄。這樣,他們就可以從備份數(shù)據(jù)的繁瑣中解脫出來,去做其它更有意義的工作。而數(shù)據(jù)庫既實(shí)現(xiàn)了磁帶備份,又實(shí)現(xiàn)了異地備份,相應(yīng)的安全性也大大提高了。 

 

上一頁      

上一頁  [1] [2] 

您可能感興趣的文章:
  • Oracle自動備份及自動備份步驟
  • Linux下通過腳本自動備份Oracle數(shù)據(jù)庫并刪除指定天數(shù)前的備份
  • Oracle自動備份腳本
  • Linux 自動備份oracle數(shù)據(jù)庫詳解
  • 自動備份Oracle數(shù)據(jù)庫
  • Windows系統(tǒng)下Oracle數(shù)據(jù)庫每天自動備份
  • Linux oracle數(shù)據(jù)庫自動備份自動壓縮腳本代碼
  • 自動備份Oracle數(shù)據(jù)庫
  • 數(shù)據(jù)庫Oracle數(shù)據(jù)的異地的自動備份
  • Oracle數(shù)據(jù)庫自動備份腳本分享(超實(shí)用)

標(biāo)簽:衡水 仙桃 蘭州 湘潭 黃山 湖南 銅川 崇左

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《自動備份Oracle數(shù)據(jù)庫》,本文關(guān)鍵詞  ;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問題,煩請?zhí)峁┫嚓P(guān)信息告之我們,我們將及時溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無關(guān)。
  • 相關(guān)文章
  • 收縮
    • 微信客服
    • 微信二維碼
    • 電話咨詢

    • 400-1100-266