精品国产一级在线观看,国产成人综合久久精品亚洲,免费一级欧美大片在线观看

當前位置:存儲技術專區 → 正文

Oracle自動異地遠程數據備份方案的研究分析

責任編輯:企業網 |來源:企業網D1Net  2010-08-06 16:35:50 原創文章 企業網D1Net

前隨著行業改革的不斷深入,數據逐步向地市公司集中,業務經營、政務管理對于信息系統和核心數據的依賴程度也越來越高,如何保障核心數據的安全就顯得尤為重要,相信很多單位均已實現了本地的磁盤與磁帶的雙備份,很好的保障了對核心數據的安全管理。但本地備份一般將數據保留在機房內,當本地機房整體物理環境遭到破壞,如發生火災地震等意外事件時,數據有可能也會損傷。本文結合工作實際,充分利用縣公司機房中現有的存儲條件,借助oracle自動備份和ftp自動傳輸技術,實現了核心Oracle自動異地遠程數據備份,當本地機房物理環境遭到破壞時,能最大限度的保護好我們的數據。

    一、Oracle自動異地遠程數據備份方案設計思路

    當前支撐紹興煙草營銷、呼叫、專賣、財務、OA等核心系統運行的主要是TradeCtr、QueryCtr、JTCW、OA四個Oracle數據庫,運行在兩臺HP8420小型機上,每個數據庫的備份大約為30G左右,考慮到今后兩年內的數據增長可能會達到50-60G左右。紹興煙草下屬四個縣公司,每個公司均具備充分的存儲空間,網絡實際可利用帶寬均為6Mbit/s左右,完成一個備份文件的數據傳輸大約需要10-20個小時,考慮到網絡帶寬、傳輸時間及工作時間對業務經營的影響,我們將數據備份及遠程傳輸放在星期六進行,每個單位對應一個數據庫進行遠程備份,備份周期為每周一次,每周六下午開始。備份中主要用到數據庫導出、ftp自動傳輸、HP UNIX 定時作業等技術,下面以財務數據庫JTCW為例來說明Oracle自動異地遠程數據備份具體實現方式。

    二、Oracle自動異地遠程數據備份導出數據庫

    export命令將數據庫中的數據備份成一個二進制文件,它通常有三種模式:用戶模式、表模式和整個數據庫模式。本文擬采用用戶模式,在Oracle自動異地遠程數據備份之前,應先建立一個備份目錄,以在本機容納備份文件,比如可建一個/localbak目錄。我們將JTCW數據庫在用戶模式下備份,備份保留周期為一天,具體腳本如下,保留在exp_JTCW.sh文件中:

    export EXP_HOME=/localbak#設置環境變量EXP_HOME

    export ORACLE_SID=JTCW#設置環境變量ORACLE_SID

    exp system/password owner=hsa6 file=$EXP_HOME/JTCW$(LC_ALL=C date +%y%m%d).dmp log=$EXP_HOME/JTCW$(LC_ALL=C date +%y%m%d).log statistics=none#備份數據以日期方式命名

    find /oradata/cwdata/backup -type f -mtime 3 -exec rm {} \;#保留周期為三天

    三、Oracle自動異地遠程數據備份自動數據傳輸

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

    在使用FTP命令之前,應先在對應縣公司一臺作備份用的機器上開啟ftp服務并建立上傳文件目錄,以容納備份文件,本文建立的目錄是/remotebak。為了加快備份速度,.netrc文件內容如下:

    machine host2# host2為作備份用的主機名

    login ftpuser# ftpuser為遠程備份主機上的一個用戶

    password ftpuser# ftpuser用戶的口令為ftpuser

    macdef init#定義一個名為init的宏,它將在自動注冊進程的最后被執行

    bin#文件的傳輸方式設為二進制

    lcd /localbak#進入本地工作目錄/localbak

    cd /remotebak#進入遠程備份主機目錄/remotebak

    mput *# 將/localbak目錄下的所有文件傳輸至備份主機

    bye #退出FTP會話進程

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

    chmod 600 .netrc

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

    四、Oracle自動異地遠程數據備份啟動備份進程

    HP UNIX平臺下,Cron是一個永久進程,它由/etc/rc.local啟動執行。Cron檢查/var/spool/cron/crontabs/目錄中的文件,找到所要執行的任務和執行任務的時間。

    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:所要運行的命令

    如果一個域是空,表明命令可以在該域所有可能的取值范圍內執行。

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

    如果一個域是由逗號隔開的一系列值組成的,表明命令可以在這些值組成的范圍內執行。 如果日期域和星期域都有值,則這兩個域都有效。

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

    cron表中的內容如下:

    00 08 * * 6 /oracle/product/9.2.0.4/DBA/script/exp_JTCW.sh

    # 每周六上午8點對數據庫執行備份

    00 14 * * 6 ftp -i host2

    # 每周六下午2點啟動遠程傳輸,將文件備份到另一臺主機上

    經過以上的操作后,系統每周六8:00開始產生一個本地備份,并在周六下午2:00啟動遠程傳輸,自動將備份文件分別拷貝到對應縣公司的遠程主機上。其余三個數據庫的配置也類似,從而實現了核心Oracle自動異地遠程數據備份,系統管理員需要做的工作是定期清理遠程備份主機的備份目錄。該系統在浙江紹興煙草分公司運行近8個月,目前系統整體狀況良好,極大提高了紹興煙草的數據安全性,其實用性、穩定性、安全性得到充分的驗證。

關鍵字:數據數據備份Oracle

原創文章 企業網D1Net

x Oracle自動異地遠程數據備份方案的研究分析 掃一掃
分享本文到朋友圈
當前位置:存儲技術專區 → 正文

Oracle自動異地遠程數據備份方案的研究分析

責任編輯:企業網 |來源:企業網D1Net  2010-08-06 16:35:50 原創文章 企業網D1Net

前隨著行業改革的不斷深入,數據逐步向地市公司集中,業務經營、政務管理對于信息系統和核心數據的依賴程度也越來越高,如何保障核心數據的安全就顯得尤為重要,相信很多單位均已實現了本地的磁盤與磁帶的雙備份,很好的保障了對核心數據的安全管理。但本地備份一般將數據保留在機房內,當本地機房整體物理環境遭到破壞,如發生火災地震等意外事件時,數據有可能也會損傷。本文結合工作實際,充分利用縣公司機房中現有的存儲條件,借助oracle自動備份和ftp自動傳輸技術,實現了核心Oracle自動異地遠程數據備份,當本地機房物理環境遭到破壞時,能最大限度的保護好我們的數據。

    一、Oracle自動異地遠程數據備份方案設計思路

    當前支撐紹興煙草營銷、呼叫、專賣、財務、OA等核心系統運行的主要是TradeCtr、QueryCtr、JTCW、OA四個Oracle數據庫,運行在兩臺HP8420小型機上,每個數據庫的備份大約為30G左右,考慮到今后兩年內的數據增長可能會達到50-60G左右。紹興煙草下屬四個縣公司,每個公司均具備充分的存儲空間,網絡實際可利用帶寬均為6Mbit/s左右,完成一個備份文件的數據傳輸大約需要10-20個小時,考慮到網絡帶寬、傳輸時間及工作時間對業務經營的影響,我們將數據備份及遠程傳輸放在星期六進行,每個單位對應一個數據庫進行遠程備份,備份周期為每周一次,每周六下午開始。備份中主要用到數據庫導出、ftp自動傳輸、HP UNIX 定時作業等技術,下面以財務數據庫JTCW為例來說明Oracle自動異地遠程數據備份具體實現方式。

    二、Oracle自動異地遠程數據備份導出數據庫

    export命令將數據庫中的數據備份成一個二進制文件,它通常有三種模式:用戶模式、表模式和整個數據庫模式。本文擬采用用戶模式,在Oracle自動異地遠程數據備份之前,應先建立一個備份目錄,以在本機容納備份文件,比如可建一個/localbak目錄。我們將JTCW數據庫在用戶模式下備份,備份保留周期為一天,具體腳本如下,保留在exp_JTCW.sh文件中:

    export EXP_HOME=/localbak#設置環境變量EXP_HOME

    export ORACLE_SID=JTCW#設置環境變量ORACLE_SID

    exp system/password owner=hsa6 file=$EXP_HOME/JTCW$(LC_ALL=C date +%y%m%d).dmp log=$EXP_HOME/JTCW$(LC_ALL=C date +%y%m%d).log statistics=none#備份數據以日期方式命名

    find /oradata/cwdata/backup -type f -mtime 3 -exec rm {} \;#保留周期為三天

    三、Oracle自動異地遠程數據備份自動數據傳輸

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

    在使用FTP命令之前,應先在對應縣公司一臺作備份用的機器上開啟ftp服務并建立上傳文件目錄,以容納備份文件,本文建立的目錄是/remotebak。為了加快備份速度,.netrc文件內容如下:

    machine host2# host2為作備份用的主機名

    login ftpuser# ftpuser為遠程備份主機上的一個用戶

    password ftpuser# ftpuser用戶的口令為ftpuser

    macdef init#定義一個名為init的宏,它將在自動注冊進程的最后被執行

    bin#文件的傳輸方式設為二進制

    lcd /localbak#進入本地工作目錄/localbak

    cd /remotebak#進入遠程備份主機目錄/remotebak

    mput *# 將/localbak目錄下的所有文件傳輸至備份主機

    bye #退出FTP會話進程

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

    chmod 600 .netrc

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

    四、Oracle自動異地遠程數據備份啟動備份進程

    HP UNIX平臺下,Cron是一個永久進程,它由/etc/rc.local啟動執行。Cron檢查/var/spool/cron/crontabs/目錄中的文件,找到所要執行的任務和執行任務的時間。

    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:所要運行的命令

    如果一個域是空,表明命令可以在該域所有可能的取值范圍內執行。

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

    如果一個域是由逗號隔開的一系列值組成的,表明命令可以在這些值組成的范圍內執行。 如果日期域和星期域都有值,則這兩個域都有效。

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

    cron表中的內容如下:

    00 08 * * 6 /oracle/product/9.2.0.4/DBA/script/exp_JTCW.sh

    # 每周六上午8點對數據庫執行備份

    00 14 * * 6 ftp -i host2

    # 每周六下午2點啟動遠程傳輸,將文件備份到另一臺主機上

    經過以上的操作后,系統每周六8:00開始產生一個本地備份,并在周六下午2:00啟動遠程傳輸,自動將備份文件分別拷貝到對應縣公司的遠程主機上。其余三個數據庫的配置也類似,從而實現了核心Oracle自動異地遠程數據備份,系統管理員需要做的工作是定期清理遠程備份主機的備份目錄。該系統在浙江紹興煙草分公司運行近8個月,目前系統整體狀況良好,極大提高了紹興煙草的數據安全性,其實用性、穩定性、安全性得到充分的驗證。

關鍵字:數據數據備份Oracle

原創文章 企業網D1Net

電子周刊
回到頂部

關于我們聯系我們版權聲明隱私條款廣告服務友情鏈接投稿中心招賢納士

企業網版權所有 ©2010-2024 京ICP備09108050號-6 京公網安備 11010502049343號

^
  • <menuitem id="jw4sk"></menuitem>

    1. <form id="jw4sk"><tbody id="jw4sk"><dfn id="jw4sk"></dfn></tbody></form>
      主站蜘蛛池模板: 黑河市| 望谟县| 韶山市| 甘德县| 玉门市| 老河口市| 天祝| 华坪县| 洛扎县| 阳东县| 都匀市| 仁寿县| 丰城市| 屏边| 两当县| 施甸县| 托里县| 松滋市| 普兰县| 彰化县| 莱西市| 蕉岭县| 攀枝花市| 仁怀市| 芒康县| 梅州市| 潜江市| 乐陵市| 团风县| 诸城市| 东辽县| 青冈县| 云林县| 成都市| 沂水县| 措勤县| 平谷区| 南陵县| 漯河市| 大竹县| 泸州市|