linux下oracle调试小知识

1、oracle 安装下的/u01/diag/rdbms/orcl/HOF/incident目录下是什么文件?
答:每当一个错误发生的时候,oracle会创建一个incident,并且分配一个INCIDENT_ID号,同时在ADR HOME的INCIDENT目录中创建相应的INCIDENT 目录,每个错误号一个INCIDENT目录,目录被命名为incdir_<INCIDENT_ID>。在incident 目录下含有相应的DUMP文件。

2、oracle 安装下的/u01/diag/rdbms/orcl/HOF/tarce目录下是什么文件?
答:tarce文件是oracle数据库在运行时产生的日志;跟踪文件(trace file)能提供调试信息,服务器遇到问题时,它会生成一个包含大量诊断信息的跟踪文件。
可以查询出30天前的tarce文件,并删除。
$find trace -ctime +30 |more
$find trace -ctime +30 |xargs rm -f

3、oracle数据库恢复报ORA-00283,ORA-01610错误原因
SQL> recover database;  
ORA-00283: recovery session canceled due to errors  
ORA-01610: recovery using the BACKUP CONTROLFILE option must be done  
原因:
导致恢复报ORA-01610的原因有 :
1.如果你在一次恢复中先是使用了recover database using backup controlfile命令,那么再一次执行recover database时必须也加上backup controlfile
2.你所恢复的数据库曾经被resetlogs打开过
3.你恢复使用的控制文件比恢复出来的数据文件要老(比如你restore的控制文件是5月10号的,restore的数据文件是5月10号之后的)
解决方法:加上using backup controlfile
SQL> recover database using backup controlfile;  

4、/dev/shm是什么作用?
答:/dev/shm是一个临时文件系统(tmpfs),/dev/shm通常用做共享内存。

5、redo.log是什么?
在Oracle数据库中,有一种日志文件叫做重做日志文件,他就是大家俗称的:redolog。在redolog中又分为两种:在线重做日志与归档日志。
1)ONLINE Redo log
在线重做日志(online redo log )主要用于:Oracle数据库所在服务器突然掉电、突然重启或者执行shutdown abort等命令使得在服务器重新启动之后,Oracle数据库没有办法正常的启动实例。此时,在线重做日志就派上了用场,Oracle会使用在线重做日志,把数据库恢复到服务器掉电前的那一个时刻,从而使得数据库能正常的启动起来 。
在Oracle数据库中,默认情况下,至少会有两个重做日志组,而且每个组里面至少包含了一个重做日志文件。日志组不会自动增加,在一个写满之后,会自动去写下一个。在下一个被写满之后会又从第一个开始写起。
2)Archive redo log
归档日志(archive log)主要用于硬件级别的错误:磁盘的坏道导致无法读写、写入的失败、磁盘受损导致数据库数据丢失。这就要使用归档日志文件,通过归档日志文件,把数据库恢复到归档日志所在的时间点上然后再通过在线重做日志文件把数据库恢复到当前的时间点上。
对于归档日志文件,可以理解为在线重做日志文件的备份。即当一个重做日志文件被填满了之后,归档日志文件就会把其备份保留一份。(因为上面说了,在线重做日志文件会自动的覆盖)所以,归档日志文件就是旧的在线日志文件的备份。

转自:https://blog.csdn.net/heshushun/article/details/79773746

posted @ 2019-07-04 09:29  小时候挺菜  阅读(506)  评论(0编辑  收藏  举报