oracle工具集初探

今天无意中看了下ORACLE_HOME/bin下面的东西,发现里面还是存在不少的东西。除了常用的sqlplus,tnsping,rman,exp/expdp,imp/impdp,sqlldr等命令外还是不少的命令可能平时不使用,但是一旦有需要还是很不错的工具集。
自己筛选了下,总结了以下的几个命令/工具。
orabase
这个命令算是一个ORACLE_BASE的简化版本。如果查看orabase文件本身,里面还是有不少的代码量的。

> orabase
/opt/app/oracle/dbccbspt1
> echo $ORACLE_BASE
/opt/app/oracle/dbccbspt1

-rwxr-xr-x 1 xxxx  dba 3762466 Sep  5  2010 orabase

oerr
这个命令很有用,但是有时候却会忘记用。
比如我们查看ora-00001的问题,可以这样输入,会给出相应的提示。有时候问题在这种层面就显而易见了。
> oerr ora 00001
00001, 00000, "unique constraint (%s.%s) violated"
// *Cause: An UPDATE or INSERT statement attempted to insert a duplicate key.
//         For Trusted Oracle configured in DBMS MAC mode, you may see
//         this message if a duplicate entry exists at a different level.
// *Action: Either remove the unique restriction or do not insert the key.

如果是tns的错误,比如tns-12534问题
> oerr tns 12534
12534, 00000, "TNS:operation not supported"
// *Cause:  An internal function received a request to perform an
// operation that is not supported (on this machine).
// *Action:  Not normally visible to the user. For further details, turn
// on tracing and reexecute the operation. If error persists, contact
// Oracle Customer Support.

chopt
这个命令使用需要谨慎,它可以启用/禁用某些数据库选项,除非你确实需要,要不还是很有风险的。
命令的使用方法
chopt
options:
                  dm = Oracle Data Mining RDBMS Files
                  dv = Oracle Database Vault option
                lbac = Oracle Label Security
                olap = Oracle OLAP
        partitioning = Oracle Partitioning
                 rat = Oracle Real Application Testing
像我们使用sqlplus登入oracle的时候,就会提示这些东西。
Oracle Database 11g Enterprise Edition Release 11.2.0.2.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options

如果需要禁用,还是需要做充分的评估。这个操作不是一个很简单的过程,需要重新编译某些链接库。
我在本地测试了一把,最后发现要编译的时候,果断终止了。
> chopt disable  rat
Writing to /opt/app/oracle/xxxx/product/11.2.0/install/disable_rat.log...
/usr/bin/make -f /opt/app/oracle/xxxx/product/11.2.0/rdbms/lib/ins_rdbms.mk rat_off ORACLE_HOME=/opt/app/oracle/xxxx/product/11.2.0

/usr/bin/make -f /opt/app/oracle/xxxx/product/11.2.0/rdbms/lib/ins_rdbms.mk ioracle ORACLE_HOME=/opt/app/oracle/xxxx/product/11.2.0
make: *** Deleting file `/opt/app/oracle/xxxx/product/11.2.0/rdbms/lib/oracle'
make: *** wait: No child processes.  Stop.
make: *** Waiting for unfinished jobs....
make: *** wait: No child processes.  Stop.

adrci
adrci是11g推出的新特性,算是对日志目录的有效管理工具,其实这些工作大家也可以通过shell脚本,命令自己定制完成。个人觉得提供的功能还是比较丰富的,不过还是根据自己的喜好来使用吧。
使用方式比较简单。直接通过help命令就一览无余了。
adrci> help
 HELP [topic]
   Available Topics:
        CREATE REPORT
        ECHO
        EXIT
        HELP
        HOST
        IPS
        PURGE
        RUN
        SET BASE
        SET BROWSER
        SET CONTROL
        SET ECHO
        SET EDITOR
        SET HOMES | HOME | HOMEPATH
        SET TERMOUT
        SHOW ALERT
        SHOW BASE
        SHOW CONTROL
        SHOW HM_RUN
        SHOW HOMES | HOME | HOMEPATH
        SHOW INCDIR
        SHOW INCIDENT
        SHOW PROBLEM
        SHOW REPORT
        SHOW TRACEFILE
        SPOOL
使用比较多的可能就是show alert,show tracefile这几个功能了。

dbfsize
这个命令的使用还是有点意思,可以读取文件头部,然后做一些基本的解析。
> dbfsize /dbccbsPT1/oracle/xxxx/orasys01/system/system01.dbf                                                                                                                             
Database file: /dbccbsPT1/oracle/xxxx/orasys01/system/system01.dbf                                                         
Database file type: file system                                                                                               
Database file size: 384000 8192 byte blocks    

如果文件不是数据文件,直接就报错了。
> dbfsize wa.sql
wa.sql: Header block size is bad
read: Success

dbv        
这个命令还是一个很有用的工具,在官方文档中也有详细的解释。MOS35512.1 中也有解释。
这个命令可以检验数据文件的物理结构,校验文件是否损坏等等,在online,offline的情况下都可以校验。
命令选项有以下几个。
DBVERIFY: Release 11.2.0.2.0 - Production on Wed Jan 7 21:16:21 2015
Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.
Keyword     Description                    (Default)
----------------------------------------------------
FILE        File to Verify                 (NONE)
START       Start Block                    (First Block of File)
END         End Block                      (Last Block of File)
BLOCKSIZE   Logical Block Size             (8192)
LOGFILE     Output Log                     (NONE)
FEEDBACK    Display Progress               (0)
PARFILE     Parameter File                 (NONE)
USERID      Username/Password              (NONE)
SEGMENT_ID  Segment ID (tsn.relfile.block) (NONE)
HIGH_SCN    Highest Block SCN To Verify    (NONE)
            (scn_wrap.scn_base OR scn) 
自己迫不及待抓取了一个数据库系统文件测试了一把。
> dbv file=/dbccbsPT1/oracle/xxxx/orasys01/system/system01.dbf logfile=a.log
DBVERIFY: Release 11.2.0.2.0 - Production on Wed Jan 7 21:16:41 2015
Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.
oraccbs1@ccbdbpt3:/opt/app/oracle/xxxx/product/11.2.0/bin> less a.log
DBVERIFY: Release 11.2.0.2.0 - Production on Wed Jan 7 21:16:41 2015
Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.
DBVERIFY - Verification starting : FILE = /dbccbsPT1/oracle/xxxx/orasys01/system/system01.dbf
DBVERIFY - Verification complete
Total Pages Examined         : 384000
Total Pages Processed (Data) : 219646
Total Pages Failing   (Data) : 0
Total Pages Processed (Index): 108431
Total Pages Failing   (Index): 0
Total Pages Processed (Other): 27414
Total Pages Processed (Seg)  : 1
Total Pages Failing   (Seg)  : 0
Total Pages Empty            : 28509
Total Pages Marked Corrupt   : 0
Total Pages Influx           : 0
Total Pages Encrypted        : 0
Highest block SCN            : 2617374659 (2566.2617374659)

还是可以看到很多比较细致的信息。更多的细节还需要精工细琢。

时间: 2024-11-01 10:10:56

oracle工具集初探的相关文章

工欲善其事必先利其器(大数据分析工具集)

大数据时代需要大数据挖掘,我习惯把大数据分成四个领域:数据科学.网络科学.空间地理科学和可视化技术; 最近的主要兴趣在空间地理领域,学习如何获取POI,Polygon,经纬度,空间匹配算法和可视化,一个全新领域有带来诸多大数据分析工具的思考和整合. 恰巧看到一篇国外博客列举了大数据领域的分析工具,俺的微信公号也曾经写过两篇: 数据工匠 | 工欲善其事必先利其器(数据分析工具集一) 数据工匠 | 工欲善其事必先利其器(数据分析工具集二) 今天就接着把数据分析主要是大数据挖掘的工具集三写下来: 顺势

免费实用微软系统工具集推荐

Windows Sysinternals Suite 是一套由微软官方免费提供的系统工具集,其中内置有大量超实用的免费系统维护小软件,譬如 Desktops (虚拟桌面).Process Explorer (进程浏览器).Autoruns (系统启动项管理) 等等,每一款都是超经典超实用的好工具,绝对值得大家了解.收藏并使用.由于该工具集中内置的实用工具实在太多,下面笔者这是简单的罗列了一下该工具集内的每一个工具的基本情况,希望在大家选择使用时有所帮助! 下面笔者将Windows Sysinte

qt-vs2012平台下将工具集改成VS2010 V100之后生成出错

问题描述 vs2012平台下将工具集改成VS2010 V100之后生成出错 vs2012平台下新建QT application工程,将工具集改成VS2010 V100之后生成出错,情况如下:1>qtmaind.lib(qtmain_win.obj) : error LNK2038: 检测到"_MSC_VER"的不匹配项: 值"1700"不匹配值"1600"(moc_rr.obj 中) 解决方案 工程属性->配置属性-> 清单工具

一个J2EE项目的最小工具集

j2ee|项目 Java世界的工具从来就乱花迷眼,但花哨的工具未必适合自己的团队.又一个项目快要结束之际,洗净铅华的总结出一些最必要的,能提供最大辅力加持的工具.参见<死亡中旅>2nd 第x章--最小工具集. 1.支持重构,TDD, Debug J2EE应用和Flying Error提示的IDE    a.重构:即使团队用的最多的只是Rename,Move,Extract Method等有限几个最基本的功能,但J2EE结构里牵一发动全身的事情太多了,重构会帮你把事情擦干净,形成依赖后,已不习惯

MongoDB实战(2)工具集与特殊魔术方法

一.MongoDB启动方式 MongoDB除了支持命令行的启动方式还支持配置文件启动通过读取启动配置文件的方式来启动数据库比方说配置文件如下 则可以使用如下命令 ./mongod -f /etc/mongodb.conf MongoDB参数说明 dbpath: 数据文件存放路径每个数据库会在其中创建一个子目录用于防止同一个实例多次运行的mongod.lock也保存在此目录中. logpath 错误日志文件 logappend 错误日志采用追加模式默认是覆写模式 bind_ip 对外服务的绑定ip

使用IBM Rational的统一的测试工具集测试并仿真Web Services

IBM Rational Test Workbench(RTW)是 IBM Rational 的统一的测试工具集,包括功能测试.性能测试 .接口测试等模块,满足客户多种类型的自动化测试需求.其中 Rational Integration Tester(以下简称 RIT)是接口测试工具,可以对包括 Web Services.HTTP.Socket.MQ.Database 等多种类型的接口直接进 行自动化的功能/性能测试测试.本文介绍如何通过 Rational Integration Tester

Oracle RAC集群体系结构学习

一. Oracle集群体系结构 Oracle RAC,全称是Oracle Real Application Cluster,即真正的应用集群 ,是oracle提供的一个并行集群系统,整个集群系统由Oracle Clusterware (集群就绪软件)和 Real Application Clusters(RAC)两大部分组成. oracle RAC的实质是位于不同操作系统的Oracle实例节 点同时访问同一个Oracle数据库,每个节点间通过私有网络进行通信,互相监控节点的运行状态,oracle

Web工程师的工具箱:进行开发调试的工具集

本文出自Ivan Zuzak 的<The Web engineer's online toolbox>,作者给了一个各种可以用来进行开发.测试.调试以及文档编排的在线工具集.我发现CSDN上已经有了这篇文章<Web工程师必备的18款工具>,但可惜的是这篇文章并不全(原文后来被更新到了33个工具),而且其中并没有包括原文评论中出现的所有工具,所以,我一并补全了更出来,一共40多个工具. Web工程师在线工具箱 1.RequestBin:允许你创建一个URL,利用这款工具进行收集请求,

Android兼容性 | NDK工具集更新须知

受 Android 平台其他改进的影响,Android M 和 N 中的动态链接器对于编写整洁且具有跨平台兼容性的本机代码提出了更为严格的要求;满足这些要求的本机代码才能顺利完成加载.为确保平稳过渡到较新的 Android 版本,应用的本机代码必须遵循这些规则和建议. 下面,我们将重申并详细说明与本机代码加载有关的各项变更及其影响,以及您可以采取哪些措施来避免出现问题. 所需工具:在 NDK 中,每个架构都有一个 <arch>-linux-android-readelf 二进制文件(如 arm