查看: 9651|回复: 5

[新特性] Oracle 11g 新特性:如何使用ADRCI

[复制链接]
论坛徽章:
116
ITPUB北京九华山庄2008年会纪念徽章
日期:2008-01-21 16:50:24马上有对象
日期:2014-02-19 11:55:14马上加薪
日期:2014-02-19 11:55:14沸羊羊
日期:2015-03-04 14:43:432015年新春福章
日期:2015-03-06 11:57:31喜羊羊
日期:2015-03-25 15:04:022010数据库技术大会纪念徽章
日期:2015-04-23 10:33:192011数据库大会纪念章
日期:2015-04-23 10:33:192012数据库大会纪念章
日期:2015-04-23 10:33:192013数据库大会纪念章
日期:2015-04-23 10:33:19
跳转到指定楼层
1#
发表于 2007-7-11 16:09 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
Oracle 11g 新特性:如何使用ADRCI  

相关文章: Oracle 11g alert文件的变化(后台报警日志)   http://www.itpub.net/showthread.php?s=&postid=8026251
-----shahand 20070711

一.关于 ADR Command Interpreter (ADRCI)
关于Automatic Diagnostic Repository (ADR)—
一个存放数据库诊断日志、跟踪文件的目录,称作ADR base,对应初始化参数DIAGNOSTIC_DEST,如果设置了ORACLE_BASE环境变量,
DIAGNOSTIC_DEST等于ORACLE_BASE,如果没有设置ORACLE_BASE,则等与ORACLE_HOME/log。
关于ADRCI
ADRCI Command-Line Utility 命令行工具,使用该工具查看ADR中的日志和跟踪信息,查看健康报告;还可以将相关错误日志和信息打包成zip文件,以便提供给oracle support分析。
在ADRCI工具中可以执行很多命令,另外可以象sqlplus一样执行脚本。

二.开始使用ADRCI
1.运行ADRCI,$ORACLE_HOME/bin/adrci
[php][root@ractest ~]# su - oracle
[oracle@ractest ~]$ which adrci
~/11g/bin/adrci
[oracle@ractest ~]$ adrci

ADRCI: Release 11.1.0.4.0 - Beta on Thu Jul 12 05:39:29 2007

Copyright (c) 1982, 2006, Oracle.  All rights reserved.

ADR base = "/home/oracle"
adrci>>
[/php]
退出ADRCI,在adrci>>提示符下敲入exit或者quit  , 回车
   

大小写敏感:在adrci中命令大小写不敏感

[php]
adrci>>SHOW traCEfile
     diag/rdbms/orcl/orcl/trace/orcl_ora_20187.trc
     diag/rdbms/orcl/orcl/trace/orcl_fbar_11388.trc

[/php]
但使用搜索串的时候是敏感的,比如:
              SHOW TRACEFILE %mmon%

2.如何得到帮助信息:
(1)得到adrci中的命令列表
[php]
adrci>>help

HELP [topic]
   Available Topics:
        CREATE REPORT
......
[/php]
(2)也可以使用adrci –help来得到adrci的命令使用和选项。如:
[php]
[oracle@ractest ~]$ adrci -help
Syntax:
   adrci [-help] [script=script_filename]
         [exec = "one_command [;one_command;...]"]

Options      Description                     (Default)
-----------------------------------------------------------------
script       script file name                (None)           
help         help on the command options     (None)           
exec         exec a set of commands          (None)           
-----------------------------------------------------------------

[/php]
(3)如何得到特定命令的帮助信息:
adrci>>HELP SHOW TRACEFILE

  Usage: SHOW TRACEFILE [file1 file2 ...] [-rt | -t]
                        [-i inc1 inc2 ...] [-path path1 path2 ...]
…………….
3.使用ADRCI进行批处理命令或者脚本
(1) 使用exec选项,用分号将命令隔开
     这里文档中有个小问题,文档中写ADRCI EXEC="COMMAND[; COMMAND]...",只能在windows平台这样写,在unix/linux平台下必须用小写来执行。
[php]
adrci>>show homes;show base; echo '20070712'
ADR Homes:
diag/rdbms/orcl/orcl
ADR base is "/home/oracle"
20070712
adrci>>
adrci>>
adrci>>exit
[oracle@ractest ~]$ adrci exec="show homes;echo '20070712';echo '';show base; "
ADR Homes:
diag/rdbms/orcl/orcl
20070712

ADR base is "/home/oracle"

[/php]
(2) 使用script选项。adrci SCRIPT=adrci_script.txt
     但shahand使用的beta版似乎还有些问题。。。。好像没有任何结果一样
[php]
[oracle@ractest ~]$ cat /tmp/a
show homes;
[oracle@ractest ~]$ adrci script=/tmp/a
[oracle@ractest ~]$ cat /tmp/a
fadsfdsa
[oracle@ractest ~]$ adrci script=/tmp/a
[oracle@ractest ~]$ cat /tmp/a
show trace;
[oracle@ractest ~]$ adrci script=/tmp/a
[oracle@ractest ~]$ cat /tmp/a
SET HOMEPATH /home/oracle/diag/rdbms/orcl/orcl;show trace;
[oracle@ractest ~]$ adrci script=/tmp/a
[oracle@ractest ~]$
[/php]
三.使用ADRCI查看Oracle数据库后台报警日志(alert_sid.log)和跟踪文件
注意:以下大部分命令都需要用Ctrl+C 来结束,并返回到adrci命令行
1.查看完整alert信息:
adrci>>SHOW ALERT
2. 查看最新alert信息:
adrci>> SHOW ALERT –TAIL
查看最新20条alert信息:
adrci>> SHOW ALERT -TAIL 20
只查看600的错误
adrci>>SHOW ALERT -P "MESSAGE_TEXT LIKE '%ORA-600%'"
查看ORA-错误信息,注意这里的参数很好,比较人性化,可以帮助提供错误时间

[php]
adrci>>SHOW ALERT -P "MESSAGE_TEXT LIKE '%ORA-%'"   

ADR Home = /home/oracle/diag/rdbms/orcl/orcl:
*************************************************************************
2007-06-28 04:36:01.046000 +08:00
Errors in file /home/oracle/diag/rdbms/orcl/orcl/trace/orcl_ora_20222.trc:
ORA-00942: table or view does not exist
2007-07-03 08:19:52.641000 +08:00
ORA-1089 : opidrv aborting process

[/php]
再用以下该命令的帮助:

[php]adrci>>help show alert

  Usage: SHOW ALERT [-p <predicate_string>] [-tail [num]] [-v]
                    [-file <alert_file_name>]
  Purpose: Show alert messages.

  Options:
    [-p <predicate_string>]: The predicate string must be double quoted.
    The fields in the predicate are the fields in the alert message's
    XML schema. To get the field definitions, use command:
          "describe alert_ext".
[/php]
3.查看跟踪文件
常用的有:
(1)列出所有跟踪文件:                 SHOW TRACEFILE
(2)模糊查询跟踪文件,比如某个进程的,注意这里区分大小写        SHOW TRACEFILE %mmon%
(3)可以指定某个路径                         SHOW TRACEFILE %mmon% -PATH /home/steve/temp
(4)象ls那样按时间排序                   SHOW TRACEFILE -RT


四.其他体验和说明
1.关于在adrci中执行os命令,可以直接在adrci中执行os命令。所以当发出一个不存在的命令的时候,错误信息也就是系统返回的了。虽然信息有点怪  …明明在ksh下,却返回bash的错误。。。
[php]
adrci>>id                                        ----------shahand偶然试出来的,居然可以直接执行
uid=10000(oracle) gid=1001(dba) groups=1001(dba),1002(oinstall) context=user_u:system_r:unconfined_t
adrci>>host date
DIA-48415: Syntax error found in string [host date] at column [9]

adrci>>host
[oracle@ractest ~]$ exit
exit
adrci>>!                                          -------------这样不行
/bin/bash: -c: line 0: syntax error near unexpected token `newline'
/bin/bash: -c: line 0: `!'
Additional information: 512

adrci>>! date                                   -------------这就可以
Thu Jul 12 06:20:40 CST 2007
--------------------------------------------------------------------------------------
[oracle@ractest ~]$ ksh
$ adrci

ADRCI: Release 11.1.0.4.0 - Beta on Thu Jul 12 06:28:14 2007

Copyright (c) 1982, 2006, Oracle.  All rights reserved.

ADR base = "/home/oracle"
adrci>>abc
/bin/bash: abc: command not found     --------明明在ksh下,却返回bash的错误….
Additional information: 32512
adrci>>ksh
$ abc
ksh: abc: not found
$ exit

[/php]

2.确认了在adrci中使用的alert是log.xml,而非alert_orcl.log
对alert进行置空(> file),adrci不受影响;
对log.log进行置空,adrci返回的错误挺吓人的:internal error code,跟00600一个风格啊。。。   应该是某些tag找不到,就报这么狠的错误
[php]
adrci>>show alert

ADR Home = /home/oracle/diag/rdbms/orcl/orcl:
*************************************************************************
DIA-48001: internal error code, arguments: [17183], [0x84B178C], [], [], [], [], [], []
DIA-48154: reached end of file for alert log
DIA-48102: encountered the end-of-file when reading the file


[/php]
3.在adrci中不能使用退格(backspace)怎么办
跟sqlplus一样,有下面几种选择:
用del键;
使用Ctrl+backspace;
使用Ctrl+u删除整行(bash下);
在os命令行下stty erase ^h  (可以直接写到oracle的.profile/.bash_profile下面)

4.另外adrci一个重要的功能是查看Incident和对Incident打包的功能。本文没有涉及到该部分内容。

全文完
论坛徽章:
124
生肖徽章:马
日期:2007-09-26 12:36:24生肖徽章:马
日期:2007-09-26 17:03:45生肖徽章:马
日期:2007-09-26 17:03:35生肖徽章:马
日期:2007-09-26 17:02:38生肖徽章:马
日期:2007-09-26 17:02:07生肖徽章:马
日期:2007-09-26 17:02:01生肖徽章:马
日期:2007-09-26 17:02:00生肖徽章:马
日期:2007-09-26 17:01:53生肖徽章:马
日期:2007-09-26 12:38:07生肖徽章:马
日期:2007-09-26 12:37:55
2#
发表于 2007-7-11 16:12 | 只看该作者
学习,少花了不少时间去看呀。

使用道具 举报

回复
论坛徽章:
116
ITPUB北京九华山庄2008年会纪念徽章
日期:2008-01-21 16:50:24马上有对象
日期:2014-02-19 11:55:14马上加薪
日期:2014-02-19 11:55:14沸羊羊
日期:2015-03-04 14:43:432015年新春福章
日期:2015-03-06 11:57:31喜羊羊
日期:2015-03-25 15:04:022010数据库技术大会纪念徽章
日期:2015-04-23 10:33:192011数据库大会纪念章
日期:2015-04-23 10:33:192012数据库大会纪念章
日期:2015-04-23 10:33:192013数据库大会纪念章
日期:2015-04-23 10:33:19
3#
 楼主| 发表于 2007-7-12 10:18 | 只看该作者
up

使用道具 举报

回复
论坛徽章:
124
生肖徽章:马
日期:2007-09-26 12:36:24生肖徽章:马
日期:2007-09-26 17:03:45生肖徽章:马
日期:2007-09-26 17:03:35生肖徽章:马
日期:2007-09-26 17:02:38生肖徽章:马
日期:2007-09-26 17:02:07生肖徽章:马
日期:2007-09-26 17:02:01生肖徽章:马
日期:2007-09-26 17:02:00生肖徽章:马
日期:2007-09-26 17:01:53生肖徽章:马
日期:2007-09-26 12:38:07生肖徽章:马
日期:2007-09-26 12:37:55
4#
发表于 2007-7-12 16:11 | 只看该作者
最初由 Kamus 发布
[B]Great,有测试版本就是好啊,不过相信正式版应该很快大家都可以拿到手了 [/B]


有内部消息不。

使用道具 举报

回复
论坛徽章:
39
开发板块每日发贴之星
日期:2005-04-29 01:02:052011新春纪念徽章
日期:2011-01-25 15:42:152011新春纪念徽章
日期:2011-01-25 15:42:332011新春纪念徽章
日期:2011-01-25 15:42:562011新春纪念徽章
日期:2011-02-18 11:43:33管理团队成员
日期:2011-05-07 01:45:08ITPUB十周年纪念徽章
日期:2011-11-01 16:19:412012新春纪念徽章
日期:2012-01-04 11:49:542012新春纪念徽章
日期:2012-02-13 15:11:182012新春纪念徽章
日期:2012-02-13 15:11:18
5#
发表于 2007-7-24 01:19 | 只看该作者
太好了

使用道具 举报

回复
论坛徽章:
31
NBA常规赛纪念章
日期:2008-04-18 19:48:162011新春纪念徽章
日期:2011-02-18 11:43:36ITPUB十周年纪念徽章
日期:2011-11-01 16:21:152012新春纪念徽章
日期:2012-01-04 11:51:22
6#
发表于 2007-8-27 10:21 | 只看该作者
学习!

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 未成年人举报专区 
京ICP备16024965号-8  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表