- 論壇徽章:
- 0
|
目 錄
1 基于服務(wù)器冷備模式備份和恢復(fù).... 2
1.1 思想... 2
1.2 具體功能... 2
1.3 適用范圍... 3
1.4 備份與恢復(fù)的技術(shù)實(shí)現(xiàn)... 3
1.4.1 安裝... 3
1.4.2 配置... 4
1.4.3 備份周期... 6
1.4.4 功能體驗(yàn)... 6
1.4.5 文件命名規(guī)則... 8
1.5 數(shù)據(jù)檢查... 8
2 腳本介紹.... 9
2.1 腳本結(jié)構(gòu)... 9
2.2 腳本內(nèi)容... 9
1 基于服務(wù)器冷備模式備份和恢復(fù)
1.1 思想
采用Oracle9i自帶的備份恢復(fù)工具Export和Import,結(jié)合Linux腳本強(qiáng)大功能編寫的具有自動(dòng)導(dǎo)出、導(dǎo)入Oracle數(shù)據(jù)庫且自動(dòng)上傳到指定的遠(yuǎn)程FTP備份服務(wù)器并根據(jù)自定義天數(shù)保留在本地和FTP服務(wù)器上的全自動(dòng)腳本工具,避免因?yàn)楸镜貫?zāi)難引發(fā)的數(shù)據(jù)無法恢復(fù)等問題的發(fā)生。
1.2 具體功能
l 結(jié)合Cron服務(wù)隨意定制啟動(dòng)備份工具策略;
l 自動(dòng)備份Oracle數(shù)據(jù)文件;
l 自動(dòng)恢復(fù)Oracle 數(shù)據(jù)文件到指定的備機(jī),同時(shí)支持多臺(tái)備機(jī);
l 對Oracle備份出的數(shù)據(jù)較驗(yàn)和歸檔;
l 自動(dòng)上傳備份數(shù)據(jù)文件到指的FTP服務(wù)器;
l 自動(dòng)刪除本地自定義天數(shù)歷史備份文件;
l 自動(dòng)刪除FTP服務(wù)器上自定義天數(shù)歷史備份文件;
l 提供備份日志查詢文件;
l 系統(tǒng)將警告和結(jié)果公布在登陸界面;
l 中文界面,要求訪問客戶端支持 zh_CN語言包;
1.1 適用范圍
適用于基于冷備模式服務(wù)器環(huán)境,且對數(shù)據(jù)同步要求不是很高,數(shù)據(jù)容差量大于1小時(shí)以上的范圍。
1.2 備份與恢復(fù)的技術(shù)實(shí)現(xiàn)
1.2.1 安裝
1. 將 文件下面的所有文件復(fù)制到root帳戶下的任意目錄下;
2. 進(jìn)入Bak2Ftp查看bak2ftp是否有執(zhí)行權(quán)限,如果沒有執(zhí)行權(quán)限請用chmod +x bak2ftp賦于腳本執(zhí)行權(quán)限;
1.2.2 配置
1.2.2.1 腳本配置
第一次運(yùn)行腳本將生成相關(guān)配置文件,腳本將提示修改/tmp/Bak2Ftp/install_path.conf文件和…/config/init.conf文件。
#vi /tmp/Bak2Ftp/install_path.conf
Bak2Ftp_PATH=/data/Doc/Bak2Ftp #這里比如安裝在/data/Doc/Bak2Ftp目錄
# vi /data/Doc/Bak2Ftp/config/init.con
#Bak2Ftp環(huán)境設(shè)置
Bak2Ftp_PATH=/data/Doc/Bak2Ftp #安裝路徑
SYSLOG=/data/Doc/Bak2Ftp/logs/syslog.txt #日志文件
#ORACLE環(huán)境變量
ORACLE_BASE=/oradata
ORACLE_HOME=/oradata/product/9.2.0.1.0
ORACLE_SID=DDPTEST
oratab=/etc/oratab #ORACLE默認(rèn)安裝位置,不用修改。
#ORACLE備份帳戶
USERNAME=ddp #所要備份的ORACLE用戶的用戶名
PASSWORD=123456 #所要備份的ORACLE用戶的口令
MY_ALIAS=DDPTEST #ORACLE的TNS名
SYSTEM_PASSWORD=123456 #ORACLE SYSTEM 帳戶的口令
#主機(jī)常規(guī)設(shè)置
ACTIVE_HOST_ID=1 #本機(jī)是備機(jī)請變量值為0,主機(jī)時(shí)為1.
MYHOST_IP=192.168.1.139 #本機(jī)IP地址,最好設(shè)置為公網(wǎng)IP。
#備機(jī)常規(guī)設(shè)置
BACKUP_HOST_ID=0 #本機(jī)是備機(jī)請變量值為1,主機(jī)時(shí)為0.
#備份設(shè)置
DUMP_DIR=/data/Doc/Bak2Ftp/data/backup #本機(jī)備份目錄
#遠(yuǎn)程備份主機(jī)的設(shè)置
BACKHOST_IP=192.168.2.234 #遠(yuǎn)程FTP服務(wù)器IP地址
BACKHOST_FTP_USERNAME=oracle #FTP服務(wù)器訪問用戶名
BACKHOST_FTP_PASSWORD=oracle #FTP服務(wù)器訪問密碼
BACKUP_DIR=ftptest #FTP服務(wù)器上的備份路徑
#定義備份保留天數(shù)
KEEP_DAYS=3 #備份文件保留天數(shù)
1.2.2.2 Crontab配置
備份時(shí)間策略到CRONTAB條目里面。
[root@test root]# crontab -e
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin:/opt/jdk/bin:/opt/tomcat/bin:/opt/inprise/vbroker/bin: /opt/inet/bin:/home/oracle/product/9.2/bin
MAILTO=root
HOME=/
# run-parts
#01 * * * * root run-parts /etc/cron.hourly
#02 4 * * * root run-parts /etc/cron.daily
#22 4 * * 0 root run-parts /etc/cron.weekly
#42 4 1 * * root run-parts /etc/cron.monthly
#每天1:00執(zhí)行Bak2FTP
0 1 * * * (source /home/oracle/.bash_profile;/data/Doc/Bak2Ftp/bak2ftp)
主機(jī)每天運(yùn)行的的備份次數(shù)要求與備機(jī)每天運(yùn)行恢復(fù)次數(shù)相同,且要主機(jī)的備份完成之后方可執(zhí)行恢復(fù)程序,請注意Crontab時(shí)間上的分配。
這樣就完成所有備份、恢復(fù)設(shè)置工作,以后Bak2FTP就可以自動(dòng)備份和恢復(fù)Oracle數(shù)據(jù)庫。
1.2.3 備份周期
備份周期可以根據(jù)各地方的實(shí)際要求定義CRONTAB的調(diào)度配置。
1.2.4 功能體驗(yàn)
1.2.4.1 遠(yuǎn)程備份數(shù)據(jù)
C: >ftp -n 192.168.2.234
Connected to 192.168.2.234.
220 (vsFTPd 1.2.1)
ftp> user oracle xxxxxx
331 Please specify the password.
230 Login successful.
ftp> cd ftptest
250 Directory successfully changed.
ftp> ls -l
200 PORT command successful. Consider using PASV.
150 Here comes the directory listing.
-rw-r--r-- 1 500 501 41943040 Nov 16 07:37 Oracle-DDPTEST-192.168.1.139-2006-320-1.tar
-rw-r--r-- 1 500 501 41943040 Nov 16 07:38 Oracle-DDPTEST-192.168.1.139-2006-320-2.tar
-rw-r--r-- 1 500 501 41943040 Nov 16 07:45 Oracle-DDPTEST-192.168.1.139-2006-320-3.tar
-rw-r--r-- 1 500 501 143360 Nov 16 08:18 Oracle-srtime-192.168.2.234-2006-320-1.tar
-rw-r--r-- 1 500 501 143360 Nov 16 08:27 Oracle-srtime-192.168.2.234-2006-320-2.tar
226 Directory send OK.
ftp: 收到 503 字節(jié),用時(shí) 0.02Seconds 31.44Kbytes/sec.
ftp>
1.2.4.2 本地日志
備份日志
2006-11-16-15:40:25----Bak2Ftp開始啟動(dòng)...
2006-11-16-15:40:25----系統(tǒng)開始讀取Bak2Ftp的環(huán)境配置。
2006-11-16-15:40:25----系統(tǒng)開始讀取ORACLE的環(huán)境配置。
2006-11-16-15:40:25----系統(tǒng)開始讀取ORACLE備份帳戶信息。
2006-11-16-15:40:25----系統(tǒng)開始讀取主機(jī)常規(guī)設(shè)置戶信息。
2006-11-16-15:40:25----系統(tǒng)開始讀取遠(yuǎn)程備份主機(jī)的信息。
2006-11-16-15:40:26----系統(tǒng)開始讀取備份保留天數(shù)。
2006-11-16-15:40:26----系統(tǒng)讀取配置信息完成。
2006-11-16-15:40:26----系統(tǒng)的配置文件:/data/Doc/Bak2Ftp/config/init.conf己鎖定。
2006-11-16-15:40:26----系統(tǒng)的日志文件:/data/Doc/Bak2Ftp/logs/syslog.txt己鎖定。
2006-11-16-15:40:26----Bak2FTP 連結(jié)到Oracle測試...
2006-11-16-15:40:26----正在進(jìn)行ftp服務(wù)器的ping測試。
2006-11-16-15:40:28----網(wǎng)絡(luò)測試結(jié)果:OK
2006-11-16-15:40:28----ftp服務(wù)器的ping測試測試完畢。
2006-11-16-15:40:28----Oracle Tnsping連接測試:OK!
2006-11-16-15:40:28----識(shí)別到本機(jī):XuQQ為數(shù)據(jù)庫主機(jī),程序?qū)?zhí)備份程序...
2006-11-16-15:40:28----Oracle正在進(jìn)行當(dāng)天的第2次export數(shù)據(jù)導(dǎo)出...
2006-11-16-15:40:35----Oracle export數(shù)據(jù)導(dǎo)出完畢.
2006-11-16-15:40:35----系統(tǒng)開始?xì)w檔DUMP文件...
2006-11-16-15:40:35----系統(tǒng)檢測到共1個(gè)Dump文件.
2006-11-16-15:40:40----DUMP文件歸檔完畢,其文件為:/data/Doc/Bak2Ftp/data/backup/Oracle-DDPTEST-192.168.1.139-2006-320-2.tar
2006-11-16-15:40:40----Bak2Ftp將清理3天前的備份數(shù)據(jù)...
2006-11-16-15:40:40----系統(tǒng)將清除FTP服務(wù)器:192.168.2.234上3天前的備份數(shù)據(jù).
2006-11-16-15:40:40----Bak2Ftp清除FTP服務(wù)器:192.168.2.234上3天前的備份數(shù)據(jù)完畢.
2006-11-16-15:40:40----系統(tǒng)將傳輸文件到192.168.2.234.
2006-11-16-15:40:46----傳輸文件:/data/Doc/Bak2Ftp/data/backup/Oracle-DDPTEST-192.168.1.139-2006-320-2.tar 到 192.168.2.234:ftptest/Oracle-DDPTEST-192.168.1.139-2006-320-2.tar成功.
2006-11-16-15:40:46----Bak2Ftp備份執(zhí)行完畢,請檢查備份文件和日志文件.
恢復(fù)日志
2006-11-16-16:15:42----Bak2Ftp開始啟動(dòng)...
2006-11-16-16:15:42----系統(tǒng)開始讀取Bak2Ftp的環(huán)境配置。
2006-11-16-16:15:42----系統(tǒng)開始讀取ORACLE的環(huán)境配置。
2006-11-16-16:15:42----系統(tǒng)開始讀取ORACLE備份帳戶信息。
2006-11-16-16:15:42----系統(tǒng)開始讀取主機(jī)常規(guī)設(shè)置戶信息。
2006-11-16-16:15:43----系統(tǒng)開始讀取遠(yuǎn)程備份主機(jī)的信息。
2006-11-16-16:15:43----系統(tǒng)開始讀取備份保留天數(shù)。
2006-11-16-16:15:43----系統(tǒng)讀取配置信息完成。
2006-11-16-16:15:43----系統(tǒng)的配置文件:/data/Doc/Bak2Ftp/config/init.conf己鎖定。
2006-11-16-16:15:43----系統(tǒng)的日志文件:/data/Doc/Bak2Ftp/logs/syslog.txt己鎖定。
2006-11-16-16:15:43----Bak2FTP 連結(jié)到Oracle測試...
2006-11-16-16:15:43----正在進(jìn)行ftp服務(wù)器的ping測試。
2006-11-16-16:15:45----網(wǎng)絡(luò)測試結(jié)果:OK
2006-11-16-16:15:45----ftp服務(wù)器的ping測試測試完畢。
2006-11-16-16:15:45----Oracle Tnsping連接測試:OK!
2006-11-16-16:15:45----識(shí)別到本機(jī):XuQQ為數(shù)據(jù)庫備機(jī),程序?qū)?zhí)恢復(fù)程序...
2006-11-16-16:15:45----系統(tǒng)將從192.168.2.234下載備份文件:Oracle-DDPTEST-192.168.1.139-2006-320-9.tar到本機(jī):XuQQ.
2006-11-16-16:15:45----DUMP歸檔文件下載失敗,有可能原文件不存在,系統(tǒng)將嘗試恢復(fù)當(dāng)天第一次備份文件的恢復(fù),從FTP服務(wù)器下載Oracle-DDPTEST-192.168.1.139-2006-320-1.tar 。
2006-11-16-16:15:50----DUMP歸檔文件下載完畢,其文件為:/data/Doc/Bak2Ftp/data/backup/Oracle-DDPTEST-192.168.1.139-2006-320-1.tar
2006-11-16-16:15:50----系統(tǒng)正在進(jìn)行歸檔的Dump文件...
2006-11-16-16:15:51----系統(tǒng)正在進(jìn)行歸檔的Dump文件完畢。
2006-11-16-16:15:51----Oracle正在進(jìn)行當(dāng)天的第1次備份數(shù)據(jù)的導(dǎo)入...
2006-11-16-16:15:52----Oracle Import 數(shù)據(jù)導(dǎo)入完畢.請檢查數(shù)據(jù)的一致性!
2006-11-16-16:15:52----清除Import導(dǎo)入所需的臨時(shí)文件...
2006-11-16-16:15:52----清除Import導(dǎo)入所需的臨時(shí)文件完畢。
2006-11-16-16:15:52----Bak2Ftp恢復(fù)執(zhí)行完畢,請檢查數(shù)據(jù)庫的一致性.
1.2.5 文件命名規(guī)則
1.3 數(shù)據(jù)檢查
腳本在執(zhí)行恢復(fù)操作完成之后,需要人工核對數(shù)據(jù)。如果對于要求相當(dāng)高的備份數(shù)據(jù)庫建議不采用這種方式,提倡使用ORACLE的數(shù)據(jù)保護(hù)功能,配置備用庫的方式來解決。
2 腳本介紹
2.1 腳本結(jié)構(gòu)
`
2.2 腳本內(nèi)容
長度限制,請查閱附件!
[ 本帖最后由 dighdypea 于 2006-12-8 00:15 編輯 ] |
評分
-
查看全部評分
|