程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> Oracle數據庫基礎 >> Oracle數據庫的異地備份淺析

Oracle數據庫的異地備份淺析

編輯:Oracle數據庫基礎

假如你對Oracle數據庫中的異地備份不是很了解的話,以下的文章就是對如何在UNIX下自動備份Oracle數據庫中的異地備份的相關內容的具體介紹,其實在UNIX下自動備份Oracle數據庫中的異地備份的實操是很簡單的。

我們知道,通常可用FTP命令在兩台主機間傳輸數據,但一般是通過交互方式實現的,即需要手工輸入目標主機的IP地址、用戶名、口令等。顯然,這不符合自動備份的要求。所幸的是,我們可以通過編寫一個.Netrc的文件來達到目標。

這一文件必須命名為.netrc,且必須存放在啟動FTP命令的機器上的用戶注冊目錄中,該文件的權限應禁止組內或其它用戶進行讀訪問。這樣,當用戶使用FTP命令的時候,系統將會在該用戶的注冊目錄中尋找.Netrc文件,假如能夠尋找到,將會首先執行該文件,否則,會交互式地提示用戶輸入用戶名、口令等。

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

.Netrc文件內容如下:

  1. Machine host2 

host2為作備份用的主機名

  1. login Oracle 

Oracle為備份主機上的一個用戶

  1. passWord Oracle 

oracle用戶的口令為Oracle

  1. Macdef init 

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

  1. bin 

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

  1. lcd /backup 

進入本地工作目錄/backup

  1. cd /pub 

進入備份主機目錄/pub

  1. mput  

將/backup目錄下的所有文件傳輸至備份主機

  1. bye 

#退出FTP會話進程

.Netrc文件編寫完成後,使用下述命令:

  1. chmod 600 .Netrc 

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

四、啟動備份進程

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用戶名下用crontab -e 命令來編輯,否則將不會被定時執行,文件名定為Oracle,文件將放在/var/spool/cron/crontabs 目錄下。編輯完成後,可以在Oracle的$提示符下,用crontab -l命令來查看。

Oracle文件內容:

0 23    /Oracle/ora—backup

天天23點對數據庫執行備份

0 2    /Oracle/tar—backup

天天2點將文件備份到磁帶上

0 4    FTP -i host2

天天4點將文件備份到另一台主機上

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

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved