Linux設(shè)置每晚定時(shí)備份Oracle數(shù)據(jù)表的操作命令
先新建目錄
該路徑:/home/oracle/backup
該名稱:DATA_PATH
shell腳本
export ORACLE_BASE=/home/oracle/app export ORACLE_HOME=$ORACLE_BASE/oracle/product/11.2.0/dbhome_1 export ORACLE_SID=orcl export PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/usr/lib d=$(date '+%Y%m%d') expdp MPMS_NY/MPMS@ORCL DIRECTORY=DATA_PATH DUMPFILE=$d.DMP LOGFILE=$d.LOG CLUSTER=N zip -m /home/oracle/backup/$d.zip /home/oracle/backup/$d.DMP /home/oracle/backup/$d.LOG
root權(quán)限下
crontab -e進(jìn)入編輯界面
新增如下
0 1 * * * sh /home/oracle/backup.sh
每天晚上1點(diǎn)執(zhí)行
crontab 操作命令介紹
查看crontab:crontab -l 編輯crontab:crontab -e 刪除crontab:crontab -r
啟動(dòng):systemctl start crond.service
停止:systemctl stop crond.service
重啟:systemctl restart crond.service
知識(shí)點(diǎn)補(bǔ)充:
Linux中設(shè)置定期備份oracle數(shù)據(jù)庫(kù)
昨天裝好了oracle,今天嘗試一下自動(dòng)備份,我這兩天裝linux和oracle的目的就是這個(gè)。
如果是sql server,定期備份可以利用sql server的management studio來(lái)做,比較方便。但要做oracle的定期備份,那就需要我們寫導(dǎo)出命令,并設(shè)置linux的定時(shí)任務(wù)。
首先創(chuàng)建一個(gè)數(shù)據(jù)庫(kù)作為測(cè)試。
--創(chuàng)建數(shù)據(jù)表空間 create?tablespace test_data logging datafile '/u01/app/oradata/test/TEST.dbf' size?32m autoextend?on next?32m maxsize 2048m extent management?local; --創(chuàng)建用戶并指定表空間 create?user?TEST identified?by?123 default?tablespace test_data temporary?tablespace?temp; --給用戶授予權(quán)限 grant?connect,resource?to?TEST;
用Test用戶登錄,創(chuàng)建一個(gè)表,并插入兩條數(shù)據(jù):
create?table?t1( ???????Id?varchar(50)?primary?key, ???????title?varchar(50) ); insert?into?t1?values(sys_guid(),'t1'); insert?into?t1?values(sys_guid(),'t2'); commit;
先寫一個(gè)導(dǎo)出的腳本文件:
export ORACLE_BASE=/u01/app export ORACLE_HOME=/u01/app/oracle export ORACLE_SID=TEST export PATH=$ORACLE_HOME/bin:$PATH d=$(date '+%Y%m%d') exp TEST/123@TEST file=/home/oracle/backup/$d.dmp log=/home/oracle/backup/$d.log owner=TEST zip -m /home/oracle/backup/$d.zip /home/oracle/backup/$d.dmp /home/oracle/backup/$d.log
前4句是設(shè)置環(huán)境變量,因?yàn)閏rontab定時(shí)調(diào)用時(shí),不會(huì)使用oracle用戶的環(huán)境變量,所以要先把它們導(dǎo)進(jìn)來(lái)。第6行以當(dāng)前日期作為導(dǎo)出的文件名,例如20120626.dmp和20120626.log。第7行把這兩個(gè)文件打成一個(gè)zip包,并刪掉這兩個(gè)文件。
要用chmod命令把這個(gè)sh標(biāo)記為可執(zhí)行:
chmod +x backup.sh
用oracle用戶,輸入crontab -e命令,編輯oracle用戶的任務(wù)計(jì)劃:
[oracle@localhost backup]$ crontab -e 42 13 * * * /home/oracle/backup/backup.sh
這樣就添加了一個(gè)計(jì)劃,在每天的13點(diǎn)42分運(yùn)行/home/oracle/backup/backup.sh。
另外,每天運(yùn)行完之后,會(huì)收到mail通知,可以在mail里看出到底有沒(méi)有正確運(yùn)行。
到此這篇關(guān)于Linux設(shè)置每晚定時(shí)備份Oracle數(shù)據(jù)表的文章就介紹到這了,更多相關(guān)Linux設(shè)置定時(shí)備份Oracle數(shù)據(jù)表內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
使用ubuntu搭建公網(wǎng)個(gè)人郵件服務(wù)器(基于postfix,dovecot,mysql)
這篇文章主要介紹了基于ubuntu搭建公網(wǎng)個(gè)人郵件服務(wù)器(基于postfix,dovecot,mysql),免費(fèi)的郵箱每天發(fā)信數(shù)量是有限制的,所以呢就想著搭建一個(gè)自己的郵件服務(wù)器,需要的朋友可以參考下2019-06-06shell實(shí)現(xiàn)字符編碼轉(zhuǎn)換工具分享
這篇文章主要介紹了shell實(shí)現(xiàn)的字符編碼轉(zhuǎn)換工具,支持UTF-8轉(zhuǎn)GBK和GBK轉(zhuǎn)UTF-8,需要的朋友可以參考下2014-03-03awk實(shí)現(xiàn)Left、join查詢、去除重復(fù)值以及局部變量講解例子
這篇文章主要介紹了awk實(shí)現(xiàn)Left、join查詢、去除重復(fù)值以及局部變量講解例子,awk的高級(jí)使用技巧,需要的朋友可以參考下2014-07-07Shell腳本調(diào)試?-n?-v?-x?-c的具體用法
本文主要介紹了Shell腳本調(diào)試?-n?-v?-x?-c的具體用法,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2023-06-06自動(dòng)化下載并檢測(cè)ftp文件備份的shell腳本
這篇文章主要介紹了自動(dòng)化下載并檢測(cè)ftp文件備份的shell腳本,需要的朋友可以參考下2016-08-08shell腳本多實(shí)例部署nginx的詳細(xì)教程
周一今天給大家分享shell腳本多實(shí)例部署nginx的詳細(xì)教程,文章通過(guò)實(shí)例代碼腳本給大家詳細(xì)介紹,對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2021-10-10shell中的循環(huán)語(yǔ)句、判斷語(yǔ)句實(shí)例
這篇文章主要介紹了shell中的循環(huán)語(yǔ)句、判斷語(yǔ)句實(shí)例,本文對(duì)shell的循環(huán)語(yǔ)句、判斷語(yǔ)句做了一個(gè)小結(jié),以及在使用中的注意事項(xiàng),需要的朋友可以參考下2014-07-07Linux oracle數(shù)據(jù)庫(kù)自動(dòng)備份自動(dòng)壓縮腳本代碼
這篇文章主要介紹了Linux oracle數(shù)據(jù)庫(kù)備份完成后可以自動(dòng)壓縮腳本代碼,大家參考使用2013-12-12