系统级alias vs Oracle ADR功能

本文涉及的产品
日志服务 SLS,月写入数据量 50GB 1个月
简介: Oracle在11g中推出的新特性ADR,即Automatic Diagnostic Repository 个人理解这个工具就是能够高效的把一些日志文件轻松管理起来。
Oracle在11g中推出的新特性ADR,即Automatic Diagnostic Repository
个人理解这个工具就是能够高效的把一些日志文件轻松管理起来。比如查看数据库alert日志就不必麻烦去到对应的路径下去找一圈,直接使用show alert即可,比如查看现在数据库中出现了哪些错误,直接通过show problem命令即可。
命令的使用也很方便。直接输入adrci就开启了专门的窗口来使用。如果不知道该使用哪些命令,直接使用help即可。
$ adrci
ADRCI: Release 11.2.0.1.0 - Production on Wed May 13 22:10:14 2015
Copyright (c) 1982, 2009, Oracle and/or its affiliates.  All rights reserved.
ADR base = "/u02/dg11g"
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
 There are other commands intended to be used directly by Oracle, type
 "HELP EXTENDED" to see the list
不过在使用之余,发现其实也可以有有更简洁的方式。
在这几天搭建data guard环境时,总是需要不断地在多个路径之间切换,如果使用adrci的时候就得先启用adrci命令界面,然后使用指定的命令去查看,感觉还是不够自主和方便。我们可以这么来玩。
首先来说一下需要使用的一个脚本。这个脚本可以显示出对应的诊断路径。
为了求得10g以后的兼容性,使用background_dump_dest这个参数也可以完全对应到对应的诊断路径。
假设脚本名为cdt.sh

TAB_OWNER=`sqlplus -silent / as sysdba set pagesize 0 feedback off verify off heading on echo off 
col owner_name format a20
col table_name format a30
select value from v\\$parameter where name='background_dump_dest';
exit; 
END` 

if [ -z "$TAB_OWNER" ]; then 
 echo "no object exists, please check again" 
 exit 0 
else 
   echo $TAB_OWNER
fi 

我们先来实现show alert的类似功能。
我们可以在系统级定义一个别名
alias cdt='cd  `ksh ~/cdt.sh` '

$ pwd
/home/ora11g
$ cdt
$ pwd
/u02/dg11g/diag/rdbms/dg11g/DG11G/trace

这个时候可以查看相关的trace日志,alert日志
再来几个使用的别名,
比如需要到参数文件的路径下。我们可以这么定义别名。
alias cdp='cd $ORACLE_HOME/dbs'

$ pwd
/home/ora11g
$ cdp
$ pwd
/u01/app/ora11g/product/11.2.0/dbhome_1/dbs

比如查看数据库错误,可以这么定义,我们可以更加灵活地把指定错误日志的前后几行内容。
alias showerr='grep -A3 -B3  ORA- `ksh ~/cdt.sh`/alert*|tail -50 '

显示内容如下,这样是不是也显示得挺清晰的。
[ora11g@oel1 ~]$ showerr
License high water mark = 2
All dispatchers and shared servers shutdown
ALTER DATABASE CLOSE NORMAL
ORA-1507 signalled during: ALTER DATABASE CLOSE NORMAL...
ARCH: Archival disabled due to shutdown: 1089
Shutting down archive processes
Archiving is disabled
--
space available in the underlying filesystem or ASM diskgroup.
Error 1034 received logging on to the standby
Errors in file /u02/ora11g/diag/rdbms/test11g/TEST11G/trace/TEST11G_arc1_31285.trc:
ORA-01034: ORACLE not available
PING[ARC1]: Heartbeat failed to connect to standby 'DG11G'. Error is 1034.
Wed May 13 15:06:01 2015
Starting background process CJQ0
--
所以综上所述,其实很多功能我们也可以自己试一试,没准也能更加方便我们的工作,不管怎么样,使用方便和快捷是我们的目标。

相关实践学习
日志服务之使用Nginx模式采集日志
本文介绍如何通过日志服务控制台创建Nginx模式的Logtail配置快速采集Nginx日志并进行多维度分析。
目录
相关文章
|
开发框架 Oracle 关系型数据库
ASP.NET实验室LIS系统源码 Oracle数据库
LIS是HIS的一个组成部分,通过与HIS的无缝连接可以共享HIS中的信息资源,使检验科能与门诊部、住院部、财务科和临床科室等全院各部门之间协同工作。 
131 4
|
Oracle 关系型数据库 数据库
Win11系统如何安装Oracle数据库(超级详细)
Win11系统如何安装Oracle数据库(超级详细)
1126 0
|
Oracle 关系型数据库 Java
实时计算 Flink版产品使用问题之如何实现Oracle到其他系统的实时同步
实时计算Flink版作为一种强大的流处理和批处理统一的计算框架,广泛应用于各种需要实时数据处理和分析的场景。实时计算Flink版通常结合SQL接口、DataStream API、以及与上下游数据源和存储系统的丰富连接器,提供了一套全面的解决方案,以应对各种实时计算需求。其低延迟、高吞吐、容错性强的特点,使其成为众多企业和组织实时数据处理首选的技术平台。以下是实时计算Flink版的一些典型使用合集。
|
Oracle 关系型数据库 Unix
SAP系统拷贝 UNIX + Oracle
SAP系统拷贝 UNIX + Oracle
93 1
|
SQL 缓存 Oracle
Oracle系统全局区:数据王国的“大舞台”
【4月更文挑战第19天】Oracle的系统全局区(SGA)是数据库实例的核心内存区域,包含共享信息和数据结构,对并发访问和性能优化至关重要。SGA包括共享池(存放SQL和PL/SQL代码)、缓冲区缓存(存储数据块以减少I/O)和重做日志缓冲区(记录数据库更改以保证一致性)。还有大型池和Java池等组件,共同确保数据库高效稳定运行。了解SGA的结构和调优对DBA和开发者至关重要。
|
Oracle 关系型数据库 Linux
RHEL7.9系统下一键脚本安装Oracle 11gR2单机版本
RHEL7.9系统下一键脚本安装Oracle 11gR2单机版本
658 1
|
Oracle Java 关系型数据库
JSP struts2工资管理系统myeclipse开发oracle数据库bs框架java编程网结构
JSP 工资管理系统是一套完善的struts2设计系统MVC结构,对理解JSP java编程开发语言有帮助,系统具有完整的源代码和数据库,开发环境为TOMCAT7.0,Myeclipse8.5开发,数据库为Oracle10g,使用java语言开发,系统主要采用B/S模式开发。
114 1
|
Oracle 关系型数据库 数据管理
.NET医院检验系统LIS源码,使用了oracle数据库,保证数据的隔离和安全性
LIS系统实现了实验室人力资源管理、标本管理、日常事务管理、网络管理、检验数据管理(采集、传输、处理、输出、发布)、报表管理过程的自动化,使实验室的操作人员和管理者从繁杂的手工劳作中解放出来,提高了检验人员的工作效率和效益,降低了劳动成本和差错发生率。
127 0
|
运维 Oracle 关系型数据库
医院检验科LIS系统源码,oracle数据库、报告管理、质控管理
医院检验科LIS系统源码,oracle数据库、报告管理、质控管理
176 0
|
Oracle Java 关系型数据库
JSP停车场车位管理系统myeclipse开发oracle数据库BS模式java编程网
JSP 停车场车位管理系统是一套完善的web设计系统,对理解JSP java编程开发语言有帮助servlet+bean+dao (mvc模式开发),系统具有完整的源代码和数据库,开发环境为TOMCAT7.0,Myeclipse8.5开发,数据库为Oracle 10g,使用java语言开发系统主要采用B/S模式开发。
100 0