您好,登錄后才能下訂單哦!
本篇內容介紹了“Linux下怎么設置每天自動備份Oracle數據庫”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
如果是在root賬戶下,須先登錄到數據庫所在賬戶
su oracle cat ~/.bash_profile
export PATHexport ORACLE_BASE=/home/nnc_db/appexport ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1export PATH=$PATH:$ORACLE_HOME/binexport ORACLE_SID=orcl
環境變量就已經找到了!
vi bak.sh
先把環境變量復制粘貼到bak.sh文件,
然后定義一個變量date(它的作用是為每天備份的文件命名便于識別),使用expdp命令導出數據庫,代碼如下:
date=$(date +%Y%m%d) expdp 數據庫賬號/數據庫密碼@數據庫實例名 dumpfile=${date}_db_auto_backup.dmp schemas=數據庫賬號名 compression=all
退出保存。
crontab -e
crontab -e的作用是使用文本編輯器設置定時任務(crontab具體用法在此不贅述);
輸入后在文本編輯器輸入
0 0 * * * /home/nnc_db/bak.sh
以上代碼意為每天的0點0分執行/home/nnc_db下的bak.sh文件,也就是第二步所創建的文件,需根據自身的備份時間以及文件目錄調整;
然后重啟crond服務即可
service crond restart
根據我在網上收集的資料來看,有朋友說crontab -e設置成功后三分鐘不會生效!也就是說假如你在上午10:00設置好任務,想要測試能否成功,把下次的定時任務設到10:02分,有可能會出現問題!但是這里我用
* * * * * /home/nnc_db/bak.sh
設置為每一分鐘運行一次,發現沒有問題。 還有一個新手大坑就是你直接運行腳本文件會在命令行輸出詳細過程,而設置定時任務運行是沒有反應的!所以想要看自己的腳本是否自動運行了需要到/var/spool/mail/下看日志文件,如圖
“Linux下怎么設置每天自動備份Oracle數據庫”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。