ITPub博客

首页 > 数据库 > Oracle > oracle日常维护手册

oracle日常维护手册

原创 Oracle 作者:yhzq 时间:2007-08-22 16:37:48 0 删除 编辑

一、Unix操作系统检查

二、检查小型机状态

三、Oracle日常检查

[@more@]

一、Unix操作系统检查

1.检查oracle警告日志
#cat /oracle/admin/orcl/bdump/alert_orcl.log|grep -i ora-
#cat /oracle/admin/orcl/bdump/alert_orcl.log|grep -i err
#cat /oracle/admin/orcl/bdump/alert_orcl.log|grep -i fail

分析:查看有无“ORA-”,“Error”,“Failed”等出错信息,如果存在出错信息,需要
针对性检查原因,并予以解决。

2.检查unix系统日志
#tail -200 /var/opt/resmon/event.log
#tail -200 /var/log/messages
#tail -200 /var/log/secure

3.检查系统维护日志
# tail -200 /var/adm/syslog/syslog.log

分析:
该日志文件中包含一些重要的维护信息。系统管理员应该定期用more或者vi命令,检查该文件。系统管理员如果发现warning、error、failure以及一些不熟悉的信息,应该提高警惕。

4.检查文件系统使用情况
# bdf
分析: 系统中文间系统过满,有时会导致系统工作不正常。我们可以用该命令显示了文件系统的使用情况。如果发现某个文件系统过满,需要及时采取措施,或者删除无用的信息,或者扩大该文件系统。

5.检查集群状态
# cmviewcl –v

应该定期集群检查系统的运行情况。确认应用包、节点和网络均正常工作。

6.Uptime:检查系统是否发生异常重起
# uptime
5:29pm up 99 days, 23:24, 4 users, load average: 0.01, 0.01, 0.02

分析: 该命令显示了系统自从上次重启以来运行的时间。通过该命令,可以知道系统是否发生了异常的重启。

8.CPU,IO,内存检查
#top
#sar

注:每天分时段记录cpu平均和内存利用情况,以及观察峰值记录。

9.检查sam日志

$ cd /var/sam/log
$ tail -100 samlog

二、检查小型机状态

1、检查集群状态

#cmviewcl -v ,检查集群状态,集群是否停止

2.检查磁盘阵列柜通道状态

#Powermt display dev=all

#Powermt watch

四、Oracle日常检查

1.检查Oracle进程
#Ps –ef|grep “ora_”|grep –v grep
登陆到数据库所在的操作系统,用命令检测ORACLE后台进程

2.检查Oracle监听进程
$Lsnrctl status
$tail –f /oracle/product/10.2.0/db/network/log/listen.log
分析:“Services Summary”项表示Oracle的监听进程正在监听哪些数据库实例,输出显示中至少应该有“ORCL”这一项。

3.检查Oracle实例状态
$Sqlplus system/manager
Sql>Select instance_name,version,status,database_status from v$instance;

分析:其中“STATUS”表示Oracle当前的实例状态,必须为“OPEN”;“DATABASE_STATUS”表示Oracle当前数据库的状态,必须为“ACTIVE”。

$Sqlplus system/manager
Sql>Select name,log_mode,open_mode from v$database;

分析:其中“LOG_MODE”表示Oracle当前的归档方式。“ARCHIVELOG”表示数据库运行在归档模式下,“NOARCHIVELOG”表示数据库运行在非归档模式下。在我们的系统中数据库必须运行在归档方式下。

3.检查Oracle用户Email
#more /var/mail/oracle

4.检查Oracle日志文件
#cat oracle/admin/ORCL/bdump/alert_orcl.log|grep -i ora-
#cat oracle/admin/ORCL/bdump/alert_orcl.log|grep -i err
#cat oracle/admin/ORCL/bdump/alert_orcl.log|grep -i fail

5.检查Oracle核心转储目录
#cat ../admin/orcl/udump/*.trc |wc -l
#cat ../admin/orcl/cdump/*.trc|wc –l
注:每天产生跟踪文件超过10个以上时,数据库可能会发生down机现象。

6.检查Oracle控制文件状态
Sql>Select * from v$controlfile

7.检查Oracle在线日志状态
Select * from v$logfile

8.检查Oracle表空间状态
Select * from dba_tablespaces

9.检查Oracle所有数据文件状态
Select * from v$datafile

10.检查Oracle所有表,索引,过程,触发器,包等状态
Select owner,object_name,object_type
From dba_objects
Where owner != ‘system’
And owner != ‘sys’
And status != ‘valid’

11.检查Oracle所有回滚段状态
Sql>select segment_name,status from dba_rollback_segs;

12.检查Oracle表空间增长情况
sql>select A.tablespace_name,(1-(A.total)/B.total)*100 used_percent
from (select tablespace_name,sum(bytes) total from dba_free_space group by tablespace_name) A, (select tablespace_name,sum(bytes) total from dba_data_files group by tablespace_name) B where A.tablespace_name=B.tablespace_name;

13.检查剩余表空间
SELECT tablespace_name, max_m, count_blocks free_blk_cnt, sum_m
总空间,sum_m- sum_free_m 使用空间,
sum_free_m 剩余空间,to_char(100*sum_free_m/sum_m, '99.99') || '%' AS pct_free
FROM ( SELECT tablespace_name,sum(bytes)/1024/1024 AS sum_m
FROM dba_data_files GROUP BY tablespace_name),
( SELECT tablespace_name AS fs_ts_name, max(bytes)/1024/1024 AS max_m, count(blocks) AS count_blocks,
sum(bytes/1024/1024) AS sum_free_m FROM dba_free_space GROUP BY tablespace_name )
WHERE tablespace_name = fs_ts_name order by pct_free

14.检查缓冲区命中率databuffer
select name,value
from v$sysstat
where name in ('session logical reads',
'physical reads','physical reads direct',
'physical reads direct(lob)');
rem缓冲区命中率=1 - ((physical reads - physical reads direct - physical reads direct(lob) )/ session logical reads )
rem命中率高说明,在缓冲执行的效率高,性能好

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/732065/viewspace-964981/,如需转载,请注明出处,否则将追究法律责任。

下一篇: 增发申购
请登录后发表评论 登录
全部评论

注册时间:2008-04-02

  • 博文量
    14
  • 访问量
    766971