• <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>
  • UNIX下自動備份Oracle數據庫

    發表于:2007-07-02來源:作者:點擊數: 標簽:
    相信為數不少的系統管理員每天都在做著同一樣的工作——對數據進行備份。一旦哪一天疏忽了,而這一天系統又恰恰發生了故障,需要進行數據恢復,那么此時就無能為力了。假如每天設定一個固定的時間,系統自動進行備份,那該多好??!下面筆者結合實踐經驗,談一
    相信為數不少的系統管理員每天都在做著同一樣的工作——對數據進行備份。一旦哪一天疏忽了,而這一天系統又恰恰發生了故障,需要進行數據恢復,那么此時就無能為力了。假如每天設定一個固定的時間,系統自動進行備份,那該多好??!下面筆者結合實踐經驗,談一談UNIX環境下Oracle數據庫的自動備份,以起到拋磚引玉的作用。

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

    一、導出數據庫

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

    1. ora—env文件對Oracle的參數進行初始化,其內容如下:

    ORACLE—HOME=$ORACLE—HOME;export ORACLE—HOME

    ORACLE—SID=ora73;export ORACLE—SID

    ORACLE—TERM=sun;export ORACLE—TERM

    LD—LIBRARY—PATH=$ORACLE—HOME/lib;export LD—LIBRARY—PATH

    ORA—NLS32=$ORACLE—HOME/ocommon/nls/admin/data;export ORA—NLS

    PATH=.:/usr/clearcase/" target="_blank" >ccs/bin:/usr/ucb:$ORACLE—HOME/bin:$PATH;export PATH

    DISPLAY=host1:0;export DISPLAY

    NLS—LANG=american—america.zhs16cgb231280;export NLS—LANG

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

    ora—backup文件內容:

    ./oracle/ora—env

    #初始化Oracle數據庫

    rq=′date +″%m%d″ ′

    #把當天日期賦予變量rq

    rm /backup/?

    # 清空 /backup目錄

    exp test/test file=/backup/xx$rq.dmp log=/backup/xx$rq.log

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

    二、磁帶備份

    tar—backup文件將用export命令導出的數據文件拷貝到磁帶上。

    tar—backup文件內容:

    tar rvf /dev/rmt/0n/backup/?

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

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

    chmod 755 ora—env

    chmod 755 ora—backup

    chmod 755 tar—backup

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

    三、異地備份

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

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

    [1]    

    原文轉自:http://www.kjueaiud.com

    老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月

  • <ruby id="5koa6"></ruby>
    <ruby id="5koa6"><option id="5koa6"><thead id="5koa6"></thead></option></ruby>

    <progress id="5koa6"></progress>

  • <strong id="5koa6"></strong>