為此,我們可以寫乙個exp指令碼,之後的每次匯出便只需敲寫./exp_db_full.sh
或者sh exp_db_full.sh
,還能實現各引數的前後一致,如下:
export nls_lang=american_america.al32utf8
同時,我們還可以寫乙個oracle執行日誌指令碼chk_ora_alert.sh
,將oracle執行日誌分門別類,提取其中的hist和err記錄,使運維人員得以快速找到自己所需的執行資訊。
因為oracle本身的log實在是太太太太太太亂了,那都不是給人看的!
#!/bin/bash
cd $oracle_base/admin/$oracle_sid/bdump
if [ -f alert_$oracle_sid.log ]
then
mv alert_$oracle_sid.log alert_$oracle_sid_temp.log
touch alert_$oracle_sid.log
cat alert_$oracle_sid_temp.log >> alert_$oracle_sid_$(date +%f).hist
grep ora- alert_$oracle_sid_temp.log > alert.err
fi
ps:還有乙個問題:前面的rman
和crontab
,再加上這exp
和oracle
,使得backup
目錄雜亂無章、凌亂不堪。
於是,我又將各個指令碼的絕對路徑修改了一下,將執行結果分配到各個目錄,如下圖:
嗯......順眼多了~~~
Linux運維指令碼
20200911 這裡記錄一些平時使用的指令碼,免密登陸什麼的。bin bash f root ssh id rsa.pub ssh keygen t rsa p f root ssh id rsa dev null expect c spawn ssh copy id i root ssh id ...
oracle日常運維
1.解鎖使用者 select username,account status from dba users b where b.username upper alter user account unlock 解鎖 alter user identified by sh 解開expired alte...
運維常用shell指令碼
開頭加直譯器 bin bash 語法縮排,開頭用四個空格 多加注釋說明。命名規則 變數名大寫 區域性變數小寫 函式名小寫 名字能夠體現實際作用。預設變數是全域性的,在函式中變數local指定為區域性變數,避免汙染其他作用域。指令碼寫完後一定要先除錯再線上使用。echo random md5sum c...