Linux ORCLE數(shù)據(jù)庫增量備份腳本
1.通過使用exp和imp命令實(shí)現(xiàn)數(shù)據(jù)庫導(dǎo)出和導(dǎo)入。
有三種模式:
a. 用戶模式: 導(dǎo)出(導(dǎo)入)用戶所有對象以及對象中的數(shù)據(jù);
b. 表模式: 導(dǎo)出(導(dǎo)入)用戶所有表或者指定的表;
c. 整個(gè)數(shù)據(jù)庫: 導(dǎo)出(導(dǎo)入)數(shù)據(jù)庫中所有對象。
如:
普通導(dǎo)出
a.導(dǎo)出一個(gè)完整數(shù)據(jù)庫
exp system/manager file=f.dmp full=y
b.導(dǎo)出數(shù)據(jù)庫定義而不導(dǎo)出數(shù)據(jù)
exp system/manager file=f.dmp full=y rows=n
普通導(dǎo)入:
a.完全導(dǎo)入
imp system/manager file=f.dmp full=y
b.數(shù)據(jù)庫結(jié)構(gòu)存在時(shí),只導(dǎo)入數(shù)據(jù)
imp system/manager file=f.dmp full=y ignore=y
2.每周進(jìn)行數(shù)據(jù)庫備份,以防數(shù)據(jù)庫被意外破壞后恢復(fù)數(shù)據(jù)
安排如下:
周一: 完全備份(f1) exp xxx/xxx inctype=complete file=f1.dmp
周二: 增量備份(f2) exp xxx/xxx inctype=incremental file=f2.dmp
周三: 增量備份(f3) exp xxx/xxx inctype=incremental file=f3.dmp
周四: 增量備份(f4) exp xxx/xxx inctype=incremental file=f4.dmp
周五: 累積備份(f5) exp xxx/xxx inctype=cumulative file=f5.dmp
周六: 增量備份(f6) exp xxx/xxx inctype=incremental file=f6.dmp
周日: 增量備份(f7) exp xxx/xxx inctype=incremental file=f7.dmp
比如數(shù)據(jù)庫在周日被破壞,則可用以下方式恢復(fù):
1.創(chuàng)建空的數(shù)據(jù)庫,同之前的結(jié)構(gòu)。
2.imp xxx/xxx inctype=RESTORE FULL=y FILE=f1.dmp
3.imp xxx/xxx inctype=RESTORE FULL=y FILE=f5.dmp
4.imp xxx/xxx inctype=RESTORE FULL=y FILE=f6.dmp
說明:
完全導(dǎo)出:對整個(gè)數(shù)據(jù)庫的備份
增量導(dǎo)出:是備份上一次完全導(dǎo)出后改變的數(shù)據(jù)。
累積導(dǎo)出:是備份自上次完全導(dǎo)出后改變的數(shù)據(jù)。
EXAMPLE:LINUX下備份數(shù)據(jù)庫
BACKUP_DIR=/home/oracle/backups
if [ ! -d $BACKUP_DIR ]; then
mkdir -p $BACKUP_DIR
fi
DAYS=(Sun Mon Tue Wed Thu Fri Sat) #創(chuàng)建數(shù)組
TYPES=(incremental complete incremental incremental incremental cumulative incremental)
day=`date +%w` #取得本周天數(shù),0代表周日,1代表周一
DAY_NAME=${DAYS[$day]} #取得數(shù)組的值
TYPE=${TYPES[$day]}
DATE_NAME=`date +%F`
FILE_NAME=${DATE_NAME}-${DAY_NAME}-${TYPE}.dmp #2008-12-8-Mon-complete.dmp
exp xxx/xxx inctype=$TYPE file=${BACKUP_DIR}/${FILE_NAME} > /dev/null
gzip ${BACKUP_DIR}/${FILE_NAME}
find $BACKUP_DIR -mtime +7 -delete #刪除七天前更改過的文件
- Linux oracle數(shù)據(jù)庫自動(dòng)備份自動(dòng)壓縮腳本代碼
- Linux中Oracle數(shù)據(jù)庫備份
- Linux自動(dòng)備份MySQL數(shù)據(jù)庫腳本代碼
- linux下mysql自動(dòng)備份數(shù)據(jù)庫與自動(dòng)刪除臨時(shí)文件
- Linux VPS備份教程 數(shù)據(jù)庫/網(wǎng)站文件自動(dòng)定時(shí)備份
- linux下Vps自動(dòng)備份web和mysql數(shù)據(jù)庫的腳本
- linux下備份MYSQL數(shù)據(jù)庫的方法
- linux每天定時(shí)備份數(shù)據(jù)庫并刪除十天前數(shù)據(jù)詳細(xì)步驟
相關(guān)文章
Win7 64環(huán)境下Oracle10g 64位版本安裝教程
這篇文章主要為大家詳細(xì)介紹了Win7 64環(huán)境下Oracle10g 64位版本安裝教程,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2017-03-03
Oracle?exadata存儲(chǔ)節(jié)點(diǎn)更換內(nèi)存操作及報(bào)錯(cuò)處理方法
在進(jìn)行Oracle?Exadata巡檢時(shí),發(fā)現(xiàn)cell節(jié)點(diǎn)內(nèi)存報(bào)錯(cuò),需確認(rèn)內(nèi)存PN號及大小,并更換備件,這篇文章主要介紹了Oracle?exadata存儲(chǔ)節(jié)點(diǎn)更換內(nèi)存操作及報(bào)錯(cuò)處理的相關(guān)資料,需要的朋友可以參考下2024-10-10
Oracle導(dǎo)出導(dǎo)入表結(jié)構(gòu)操作實(shí)戰(zhàn)記錄
在日常數(shù)據(jù)庫維護(hù)中,經(jīng)常會(huì)遇到導(dǎo)出數(shù)據(jù)表的需求,下面這篇文章主要給大家介紹了關(guān)于Oracle導(dǎo)出導(dǎo)入表結(jié)構(gòu)操作的相關(guān)資料,文中通過圖文以及實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-02-02
使用geotools導(dǎo)入shp文件到Oracle數(shù)據(jù)庫時(shí)表名帶下劃線問題的解決方法
這篇文章主要介紹了使用geotools導(dǎo)入shp文件到Oracle數(shù)據(jù)庫時(shí)表名帶下劃線的問題解決 的相關(guān)資料,需要的朋友可以參考下2016-08-08
oracle中utl_file包讀寫文件操作實(shí)例學(xué)習(xí)
在oracle中utl_file包提供了一些操作文本文件的函數(shù)和過程,接下來和大家一起學(xué)習(xí)他的基本操作,感興趣的你可以參考下哈希望可以幫助到你2013-03-03
如何實(shí)現(xiàn)只授予用戶查看存儲(chǔ)過程定義的權(quán)限
本文對如何授予某個(gè)用戶只能查看某些存儲(chǔ)過程的定義權(quán)限,而不能讓用戶去修改、執(zhí)行存儲(chǔ)過程,進(jìn)行了梳理和總結(jié),供大家參考。2015-09-09
oracle 9i使用閃回查詢恢復(fù)數(shù)據(jù)庫誤刪問題
本篇文章給大家介紹在oracle 9i中使用閃回查詢恢復(fù)數(shù)據(jù)庫誤刪問題,涉及到數(shù)據(jù)庫增刪改查的基本操作,對oracle數(shù)據(jù)庫閃回查詢感興趣的朋友可以一起學(xué)習(xí)下本篇文章2015-10-10
Oracle導(dǎo)入導(dǎo)出dmp文件的方法對比及示例
這篇文章主要介紹了Oracle數(shù)據(jù)庫中的dmp文件格式及其相關(guān)工具impdp/expdp的使用方法,包括它們的區(qū)別、參數(shù)說明及示例,并指出了執(zhí)行導(dǎo)入導(dǎo)出時(shí)需要的前置條件,需要的朋友可以參考下2025-01-01

