本篇文章給大家分享的是有關怎么在Linux中設置每天自動備份數(shù)據(jù)庫,小編覺得挺實用的,因此分享給大家學習,希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。
創(chuàng)新互聯(lián)建站-專業(yè)網站定制、快速模板網站建設、高性價比白沙黎族網站開發(fā)、企業(yè)建站全套包干低至880元,成熟完善的模板庫,直接使用。一站式白沙黎族網站制作公司更省心,省錢,快速模板網站建設找我們,業(yè)務覆蓋白沙黎族地區(qū)。費用合理售后完善,10年實體公司更值得信賴。
一.先找到數(shù)據(jù)庫的環(huán)境變量
如果是在root賬戶下,須先登錄到數(shù)據(jù)庫所在賬戶
su oracle cat ~/.bash_profile
export PATH export ORACLE_BASE=/home/nnc_db/app export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/dbhome_1 export PATH=$PATH:$ORACLE_HOME/bin export ORACLE_SID=orcl
環(huán)境變量就已經找到了!
二.編輯備份的腳本文件
vi bak.sh
先把環(huán)境變量復制粘貼到bak.sh文件,
然后定義一個變量date(它的作用是為每天備份的文件命名便于識別),使用expdp命令導出數(shù)據(jù)庫,代碼如下:
date=$(date +%Y%m%d) expdp 數(shù)據(jù)庫賬號/數(shù)據(jù)庫密碼@數(shù)據(jù)庫實例名 dumpfile=${date}_db_auto_backup.dmp schemas=數(shù)據(jù)庫賬號名 compression=all
退出保存。
三.使用Linux的crontab命令設置定時任務
crontab -e
crontab -e的作用是使用文本編輯器設置定時任務(crontab具體用法在此不贅述);
輸入后在文本編輯器輸入
0 0 * * * /home/nnc_db/bak.sh
以上代碼意為每天的0點0分執(zhí)行/home/nnc_db
下的bak.sh文件,也就是第二步所創(chuàng)建的文件,需根據(jù)自身的備份時間以及文件目錄調整;
然后重啟crond服務即可
service crond restart
四.測試任務是否成功運行
根據(jù)我在網上收集的資料來看,有朋友說crontab -e設置成功后三分鐘不會生效!也就是說假如你在上午10:00設置好任務,想要測試能否成功,把下次的定時任務設到10:02分,有可能會出現(xiàn)問題!但是這里我用
* * * * * /home/nnc_db/bak.sh
設置為每一分鐘運行一次,發(fā)現(xiàn)沒有問題。
還有一個新手大坑就是你直接運行腳本文件會在命令行輸出詳細過程,而設置定時任務運行是沒有反應的!所以想要看自己的腳本是否自動運行了需要到/var/spool/mail/
下看日志文件,如圖
Linux是一種免費使用和自由傳播的類UNIX操作系統(tǒng),是一個基于POSIX的多用戶、多任務、支持多線程和多CPU的操作系統(tǒng),使用Linux能運行主要的Unix工具軟件、應用程序和網絡協(xié)議。
以上就是怎么在Linux中設置每天自動備份數(shù)據(jù)庫,小編相信有部分知識點可能是我們日常工作會見到或用到的。希望你能通過這篇文章學到更多知識。更多詳情敬請關注創(chuàng)新互聯(lián)行業(yè)資訊頻道。