linux下Oracle實現資料的自動備份

2021-08-31 18:49:18 字數 2251 閱讀 6000

由於近期工作的原因,要做乙個簡單的oracle資料自動備份,因為是乙個單體應用,所以就利用了linux的定時任務和oracle的exp進行資料備份,如果有不足和需要改正的地方,歡迎各位高手指正,不勝感激。

下邊就開始具體的操作:

mkdir -p /u01/oracle_bak_data #新建資料備份目錄

mkdir -p /u0a/oracle_bak_shell #新建oracle備份指令碼目錄

chown -r oracle:oinstall /u01/oracle_bak_data

chown -r oracle:oinstall /u01/oracle_bak_shell

cd /u0a/oracle_bak_shell

vi bak_data_shell.sh

oracle的資訊可以在profile配置檔案中檢視

#!/bin/sh

echo

"*****ready for play*****"

export oracle_sid=test

export oracle_base=/u01/oracle

export oracle_home=/u01/oracle/11.0.2

export ld_library_path=

$ld_library_path

:$oracle_home/lib:/lib:/usr/lib:/usr/local/lib

export path=

$oracle_home/bin:/bin:/usr/bin:/usr/sbin:/usr/local/bin

export lang=en_us.utf-8

export nls_lang=simplified chinese_china.zhs16gbk

datetime=

`date +%y_%m_%d`

days=3

orsid=

'ip:埠/test'

oraowner=test

bakuser=test

bakpass=test

bakdir=/u01/oracle_bak_data

bakdata=

$oraowner

"_"$datetime.dmp

baklog=

$oraowner

"_"$datetime.log

ordatabak=

$orowner

"_"$datetime.tar.gz

cd$bakdir

echo

"*****starting bak*****"

exp $bakuser/$bakpass@

$orsid grants=y owner=

$oraowner file=

$bakdir/$bakdata log=

$bakdir/$baklog

echo

"*****end bak*****"

echo

"*****starting tar*****"

tar -zcvf $ordatabak

$bakdata

$baklog

echo

"*****end tar*****"

echo

"*****delete bak_data*****"

find

$bakdir/ -type f -name "*.log" -exec rm

\;find

$bakdir/ -type f -name "*.dmp" -exec rm

\;find

$bakdir/ -type f -name "*.tar.gz" -mtime +$days -exec rm -rf \;

echo

"*****end delete*****"

echo

"*****end bak*****"

然後按「esc」鍵,輸入:wq! 然後回車

chmod +x bak_data_shell.sh
crontab -e

#輸入一下資訊

00 01 * * * /u01/oracle_bak_shell/bak_data_shell.sh #每天凌晨1點執行

:wq!

service crond restart

linux下使用otl開發oracle資料庫程式

include using namespace std include define otl stream read iterator on define otl ora9i compile otl 4.0 oci9i include include the otl 4.0 header file ...

linux下 PHP指令碼連線oracle資料庫

通過php你可以輕鬆的連線到資料庫,請求資料並將其顯示在你的web站點中,甚至修改資料庫中的資料。mysql是一種很流行的資料庫,並且在網際網路中有許多有關php與mysql的教程。mysql是免費的,這一點也許就吸引了不少人。由於其廣泛應用,我就不想在這裡贅述mysql的使用方法了。oracle被...

Linux環境下備份和恢復Oracle資料庫

1 切換到oracle使用者 su oracle 1.1 設定臨時環境變數 export oracle sid sid 例項名注意區分大小寫 2 以system身份登陸資料庫 sqlplus as sysdba 2.1 查詢當前資料庫例項 select instance name from v in...