unix里有數百條用來管理oracle的命令。現在讓我們看看一些unix的技巧,它們對于oracle專家來說是特別有用的。
定位unix服務器上任意位置的文件
你可以使用unix的find命令來定位某個特定的文件。
root> pwd
/
root> find . -print|grep -idbmspool.sql
./oracle/product/9.1.2/rdbms/admin/dbmspool.sql
找到包含有特定字符串的oracle文件
這是一個用于找到所有包含有指定字符串的最常用的外殼命令。例如,假設你正在試圖定位一個查詢v$process表格的腳本。
你可以使用下面的命令,unix會搜索所有的子目錄,在所有文件里尋找v$process表格。
root> find . -print|xargsgrep v/$process
./tx_rbs.sql: v$process p,
./unix_who.sql:from v$session a, v$process b
./session.sql:fromv$session b, v$process a
定位最近創建的unix文件
下面的命令對于找到最近添加到你服務器里的unix文件很有用。oracle數據庫管理員的一部分任務是監測用來追蹤文件的background_dump_dest和user_dump_dest,以及清除掉不再需要的追蹤文件。
下面的命令會列出在最近兩周里創建的所有文件。
root> find . -mtime -14 -print
.
./janet1_ora_27714.trc
./janet1_ora_27716.trc
在unix服務器里找到大型文件
下面的命令在unix文件系統被填滿的時候非常有用。正如你可能知道的,在oracle必須展開一個表格空間卻無法擴展unix文件系統的時候,oracle會掛起。
下面的腳本會顯示所有大于1mb的文件。要注意,你要預先將大小參數指定為kb。
root> find . -size +1024 -print
./prodsid_ora_22951.trc
獲得當前$oracle_home里已安裝的oracle產品的列表
下面的命令對于定位在你oracle環境里所有已安全的產品很有用。
cat $oracle_home/unix.prd |/
nawk -f/" '{ printf ("%-40s %-10s %-20s/n", $6, $2, $4) }' |/
grep '^[^ ]'
新聞熱點
疑難解答