CentOS7自動備份oracle數據庫


1、環境

  操作系統:CentOS 7

  數據庫:11.2.0.1.0 

2、登錄服務器

  切換oracle用戶,備份需要在oracle用戶下進行

  #su - oracle

  在oracle家目錄下創建bin目錄(存放備份腳本)和backup目錄(存放備份文件)

  #mkdir /home/oracle/bin

  #mkdir /home/oracle/backup

  創建backup.sh腳本

  #vim /home/oracle/bin/backup.sh

  腳本內容:  

[  

#!/bin/bash
#刷新環境變量,很重要!!!
source /etc/profile
source ~/.bash_profile

#備份文件存放目錄

dir=/home/oracle/backup/
cd $dir

#備份文件命名 YYYY-MM-DD_HH:mm
name=`date +%F_%T`
#備份語句,在服務器上備份用服務名,不能用實例名

exp 用戶名/密碼@服務名 file=$dir/${name}.dmp owner=用戶名

#刪除7天前的備份
find $dir -name "*.dmp" -mtime +7 | xargs rm -rf

]

存盤退出

  添加腳本執行權限

  #chmod +x  backup.sh

3、添加計划任務

  #crontab -e

  添加內容:

[

30 23  * * * /home/oracle/bin/backup.sh > /dev/null 2>&1     #每天晚上11點半執行一次,所有輸出或錯誤定向至/dev/null,否則會發送郵件給oracle用戶

]  

4、重啟crond服務

  切換到root

  #systemctl restart crond

 

 

測試效果(為檢驗效果計划任務設置了5分鍾執行一次【*/5  *  *  *  *  /home/oracle/bin/backup.sh > /dev/null 2>&1     】):

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM