- ubuntu12.04环境下使用kvm ioctl接口实现最简单的虚拟机
- Ubuntu 通过无线网络安装Ubuntu Server启动系统后连接无线网络的方法
- 在Ubuntu上搭建网桥的方法
- ubuntu 虚拟机上网方式及相关配置详解
CFSDN坚持开源创造价值,我们致力于搭建一个资源共享平台,让每一个IT人在这里找到属于你的精彩世界.
这篇CFSDN的博客文章教你怎样用Oracle方便地查看报警日志错误由作者收集整理,如果你对这篇文章有兴趣,记得点赞哟.
在网上查了几天的资料,尝试综合清除告警日志内容及建外部表的方式来解决这一问题.
一:备份并清除告警日志内容 。
将每天的告警日志备份好,然后进行清除.
1:备份报警日志 。
在$ORACLE_HOME/SID/bdump/ 目录下, 按日期备份alert_ORACLE_你的实例名.LOG这个文件,如:alert_ORACLE_orcl_201408111639_bak.LOG.
2:清除日志内容 。
打开报警日志文件,用true > 文件名 可清除掉里面的内容 。
具体示例: 假如,我现在第一次进行该设置,我先把现有的告警日志进行备份,如:
--备份文件名称:今天16点24分前的告警日志信息 。
1
|
[oracle@rac2 bdump]$
cp
alert_orcl2.log alert_orcl2_before_201408111624_bak.log
|
-清空报警日志 。
1
|
[oracle@rac2 bdump]$
true
> alert_orcl2.log
|
现在告警日志是空的。 切换下归档日志,检查报警日志里是否出现了新内容:
1
2
|
SQL> alter system switch logfile;
System altered.
|
则现在alert_orcl2.log记录的是2014年8月11日16点24分后至你下次对报警日志进行备份,截取前的信息.
二:建外部表查看报警日志错误 。
如果已建立了一个用户,并赋相应的权限,所以直接建立目录对象并建立外部表就可以了.
1.建立目录对象 。
1
2
3
|
SQL> conn test / 123<br>Connected.
SQL>
create
directory bdump
as
'/oracle/u01/app/oracle/admin/db2/bdump'
;
Directory created.
|
2.建立外部表 。
1
2
3
4
5
6
7
8
9
|
SQL> create table alert_log(
text varchar2(400)
)organization external
(
type
oracle_loader
default directory bdump
access parameters
(records delimited by newline
)location(
'alert_db2.log'
)
);
|
3.测试首先查看能否查到alert_db2.log的内容 。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
SQL>
select
* from alert_log where rownum < 10;
TEXT
--------------------------------------------------------------------------------
Thu Jun 11 00:51:46 2009
Starting ORACLE instance (normal)
Cannot determine all dependent dynamic libraries
for
/proc/self/exe
Unable to
find
dynamic library libocr10.so
in
search paths
RPATH =
/ade/aime1_build2101/oracle/has/lib/
:
/ade/aime1_build2101/oracle/lib/
:
/a
de
/aime1_build2101/oracle/has/lib/
:
LD_LIBRARY_PATH is not
set
!
The default library directories are
/lib
and
/usr/lib
Unable to
find
dynamic library libocrb10.so
in
search paths
Unable to
find
dynamic library libocrutl10.so
in
search paths
9 rows selected.
|
测试成功 然后我们测试查报警信息'ORA-%' 。
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
|
SQL>
select
* from alert_log where text like
'ORA-%'
;
TEXT
--------------------------------------------------------------------------------
ORA-00202: control
file
: '
/oracle/u01/app/oracle/product/10
.2.0
/db2/dbs/cntrldb2
.dbf'
ORA-27037: unable to obtain
file
status
ORA-205 signalled during: ALTER DATABASE MOUNT...
ORA-00301: error
in
adding log
file
'
/home/oracle/oracle/oradata/testdb/redo01
.l
og' -
file
cannot be created
ORA-27040:
file
create error
ORA-1501 signalled during: CREATE DATABASE db2
ORA-00200: control
file
could not be created
TEXT
--------------------------------------------------------------------------------
ORA-00202: control
file
: '
/oracle/u01/app/oracle/product/10
.2.0
/db2/dbs/cntrldb2
.dbf'
ORA-27038: created
file
already exists
ORA-1501 signalled during: CREATE DATABASE db2
ORA-00200: control
file
could not be created
ORA-00202: control
file
: '
/oracle/u01/app/oracle/product/10
.2.0
/db2/dbs/cntrldb2
.dbf'
ORA-27038: created
file
already exists
ORA-1501 signalled during: CREATE DATABASE db2
|
--假如,你的报警日志文件只包含今天的信息(可以通过备份并清除告警日志内容实现),则通过外部表可以查到当天产生了哪些错误.
最后此篇关于教你怎样用Oracle方便地查看报警日志错误的文章就讲到这里了,如果你想了解更多关于教你怎样用Oracle方便地查看报警日志错误的内容请搜索CFSDN的文章或继续浏览相关文章,希望大家以后支持我的博客! 。
我是一名优秀的程序员,十分优秀!