LINUX學習筆記——LINUX下EXP命令全庫備份數據庫文件

LINUX下EXP命令全庫備份數據庫文件

1)創建備份目錄,目錄操做權限受權給Oracle用戶

mkdir /backup  --建立backup文件夾數據庫

cd  /   --進入cd語句oracle

ls  -l   --查看文件的信息測試

 

id oracle  spa

-- 查看oracle用戶信息,授予oracle用戶能操做新建立的備份目錄3d

chown -R oracle:oinstall /backuprest

--授予oracle用戶操做權限給備份數據庫文件/backup目錄日誌

ls -l  --查看文件的信息blog

 

2)創建備份腳本

su - oracle    --切換到Oracle用戶下crontab

cd $ORACLE_HOME   --進入到Oracle軟件安裝的主目錄;it

pwd      --查看工做目錄(這裏輸出的是Oracle目錄)

cd  /backup/    --進入到備份數據庫目錄/backup 下

vi autobackup.sh     --建立一個名字爲autobackup.sh的備份數據庫的腳本文件

在 vi autobackup.sh中輸入如下內容

#!/bin/sh   --必須輸入

export ORACLE_BASE=/u01/oracle     --Oralce軟件安裝目錄

export ORACLE_HOME=$ORALCE_BASE/product/11.2.0/db 

--配置Oralce軟件的ORACLE_HOME目錄

export ORACLE_SID=orcl        --配置Oralce數據庫實例名

export ORACLE_HOME=/usr/oracle/product/11.2.0/db_1

export PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin

export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK 

backup_date=`date +%Y%m%d`    --建立存放當前日期變量backup_date

backup_dest=$(cd "$(dirname  "$0")"; pwd)    

--建立存放當前目錄變量backup_dest

backup_name=hbjrxy--建立存放備份文件名稱

days=30 -- 建立存放多少天變量days

exp hbjrxy/hbjrxy@orcl  file=$backup_dest/$backup_name$backup_date.dmp  log=$back_dest/$backup_name$backup_date.log  owner=hbjrxy

--經過exp命令導出數據庫文件,須要修改用戶和用戶密碼

tar  -zcvf  $backup_dest/$backup_name$backup_date .tar.gz $backup_dest/$back_name$backup_date.dmp  $back_dest/$backup_name$backup_date.log

--壓縮導出的數據庫文件以及日誌文件;

find $backup_dest -type f -name "*.log" -exec rm{} \;

-- 刪除腳本當前所在文件夾下以.log結尾的文件

find $backup_dest -type f -name "*.dmp" -exec rm{} \;

--刪除腳本當前文件所在文件夾下以.dmp結尾的文件;

find $backup_dest -type f -name "*.tar.gz" -mtime +$days -exec rm -rf {} \;

--刪除超過指定多少天以前的壓縮文件。

3)受權執行權限給備份腳本,執行測試腳本是否編寫成功

chmod +x autobackup.sh  

--授予建立的備份數據庫腳本autobackup.sh文件執行權限

./autobackup.sh   --執行編寫的備份數據庫腳本autobackup.sh文件;

ls -l       --執行完畢以後看目錄是否有壓縮文件生成

4)建議執行任務時間

exit     --回到root用戶

vi  /etc/crontab  -- 編輯定時任務文件/etc/crontab

--插入一條執行備份數據庫腳本的定時任務:

40 2 * * * oracle /backup/autobackup.sh

--指定的定時任務執行時間是凌晨2點40,用oracle用戶執行/backup/autobackup.sh文件

方法二:

 crontab -e         編輯定時任務

       crontab -l        查看定時任務

    

     crontab -r        刪除定時任務

      cat /var/log/cron  查看定時任務執行狀況
        

5)重啓任務服務

service crond restart   

--執行service crond restart 重啓定時任務服務使定時任務生效

   service rsyslog status  查看服務狀態

  

相關文章
相關標籤/搜索