我们学习过了很多的Unix的知识,在这里,我们知道Unix系统里有数百条用来管理Oracle之命令。现在让我们看看一些Unix文件之技巧,它们对于Oracle专家来说是特别有用之。
定位Unix服务器上任意位置之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 '^[^ ]'
关于Unix文件如何运用到管理Oracle的知识,我们就讲解到这里了。
【编辑推荐】