91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Linux自動備份Oracle并刪除指定天數前的備份

發布時間:2020-07-04 08:12:17 來源:網絡 閱讀:537 作者:_蘇格拉底 欄目:關系型數據庫
本篇文章主要關于利用shell腳本實現對Oracle數據庫定時進行備份操作,并刪除指定天數前的備份文件,已經熟練掌握shell的大牛們請果斷路過。本文如有雷同,純屬有意。

先做試驗環境的介紹,再講解具體步驟。本博客的第一篇文章,以后會盡量做得更好,寫得不好得地方請多多包涵,歡迎提出各種建議,例如文章內容選擇、操作步驟的詳細程度等等。

環境:

操作系統:CentOS

        IP地址:192.168.1.2

        端口:1521

        SID:orcl

        Oracle版本:Oracle11g

具體步驟:

(1)root登錄Oracle數據庫服務器

#新建備份目錄

mkdir /home/bak/orcl_data

        #設置目錄權限,該用戶和組是安裝Oracle時設置的

chown -R oracle:oracle /home/bak/orcl_data

(2)創建備份腳本

#新建文件并輸入代碼,保存。腳本保存位置根據個人習慣。

        vim /usr/local/scripts/oracle_bak.sh

        #!/bin/sh

#添加Oracle運行用戶oracle的系統環境變量,以便Crontab計劃任務的執行

#oracle用戶的系統環境變量路徑為/home/oracle/.bash_profile

export ORACLE_BASE=/data/oracle

export ORACLE_HOME=$ORACLE_BASE/product/11.2.0/db_1

        export ORACLE_SID=orcl

        export ORACLE_TERM=xterm

        export PATH=$ORACLE_HOME/bin:/usr/sbin:$PATH

        export LD_LIBRARY_PATH=$ORACLE_HOME/lib:/lib:/usr/lib

        export LANG=C

        export NLS_LANG=AMERICAN_AMERICA.ZHS16GBK

#獲取日期和時間

        date=`date +%Y_%m_%d`

#設置刪除15天前的備份

        days=15

#Oracle服務器IP、端口、SID

        orsid=`192.168.1.2:1521/orcl`

#備份此用戶的數據

        orowner=osgnu

#執行備份的用戶,必須有備份權限

        bak_user=osgnu

#執行備份的用戶的密碼

        bak_pass=osgnu

#備份的路徑,提前創建好

        bak_dir=/home/bak/orcl_data

#備份數據庫名稱

        bak_data=$orowner"_"$date.dmp

#備份生成的日志文件的名稱

        bak_log=$orowner"_"$date.log

#保存的Oracle數據庫備份文件

        ordatatar=$orowner"_"$date.tar.gz  
#進入備份目錄

        cd $bak_dir

#按需要備份的Oracle用戶來創建相應目錄

        mkdir -p $orowner

#進入目錄

        cd $orowner

#執行備份

        exp $bak_user/$bak_pass@$orsid grants=y owner=$orowner file=$bak_dir/$orowner/$bak_data log=$bak_dir/$orowner/$bak_log

#壓縮

        tar -zcvf $ordatatar $bak_data $bak_log

#刪除備份文件

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

#刪除日志文件

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

#刪除15天前的備份

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

#保存退出

        :wq!

#添加執行權限

        chmod +x /usr/local/scripts/oracle_bak.sh

(3)編輯計劃任務

        crontab -e或vim /etc/crontab然后添加以下內容

#每天凌晨1點30分以oracle用戶的身份執行備份腳本

        30 1 * * * oracle /usr/local/scripts/oracle_bak.sh

#保存退出

        :wq!

#重啟crond

        service crond restart

        自動備份oracle并刪除指定天數前的備份已完成。

www.osgnu.com  溫馨提醒:BruceZ原創內容 版權所有,轉載請注明出處以及原文鏈接。

本文鏈接:www.osgnu.com/shell/1.html

轉載請注明來源:OSGNU >> Linux自動備份Oracle并刪除指定天數前的備份

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

孝感市| 长岛县| 五常市| 湖州市| 临沂市| 肥乡县| 洛隆县| 永城市| 台北县| 将乐县| 台北市| 黔江区| 缙云县| 汉沽区| 绥阳县| 锦州市| 商水县| 平果县| 兴业县| 玉林市| 乐昌市| 牟定县| 崇州市| 西林县| 浮梁县| 长治市| 南通市| 垣曲县| 金坛市| 阳曲县| 寻甸| 长顺县| 衡东县| 陆丰市| 新绛县| 安宁市| 中牟县| 丽江市| 贵溪市| 衡南县| 铜鼓县|