设为首页 收藏本站
查看: 658|回复: 0

[经验分享] Oracle数据库巡检

[复制链接]

尚未签到

发表于 2018-9-5 10:33:19 | 显示全部楼层 |阅读模式
  select inst_id,status,count(*) from gv$session group by inst_id,status order by status;
  $ORACLE_HOME\rdbms\admin\spreport.sql
  Oracle数据库巡检
  一、操作系统检查
  1.操作系统资源使用情况top/topas/iostat/vmstat 重点关注CPU/内存/交换的使用情况
  2.操作系统空间使用情况df -h/-g      重点关注数据库目录空间(du -sh *)(du -sm *)
  3.操作系统告警日志
  HP: cat /var/adm/syslog/syslog.log
  AIX:errpt | more
  LINUX: cat /var/log/messages
  SUN:cat /var/log/messages
  Windows:事件查看器,查看事件内容
  4.uptime查看操作系统是否有重启过特别是rac如有重启重点检查grid的alert日志查明原因
  二、集群检查
  1.检查集群状态crs_stat -t
  2.检查集群中数据库的状态crsctl status res -t
  3.检查service状态(grid:lsnrctl status),如都飘在一个检点上需要reload到对应节点(srvctl -h)

  srvctl>  4.检查集群alert日志  10g:$CRS_HOME/log/{hostname}/alert{hostname}.log11g:$ORACLE_HOME/log/{hostname}/alert{hostname}.log
  5.ASM磁盘空间是否正常
  select name,total_mb,free_mb from v$asm_diskgroup;
  6.检查磁盘状态
  select name,path,STATE,MODE_STATUS from v$asm_disk;
  三、数据库检查
  1.重点表空间使用情况确保使用率在85%以内
  2.资源使用情况select * from v$resource_limit;(set linesize 300;set pagesize 300;)
  3.闪回使用情况
  select flashback_on from v$database;
  查询视图v$recovery_file_dest视图来了解其位置和最大的大小
  select * from v$recovery_file_dest;
  使用v$flash_recovery_area_usage确定闪回恢复区中的文件使用明细
  select * from v$flash_recovery_area_usage;
  4.11g的新客户检查新特性是否关闭
  是否开启审计show parameter audit_trail   (db 开   none 关)
  如开启询问是否有特许需求可以关闭
  alter system set audit_trail=none scope=spfile sid='*';
  truncate table sys.aud$;
  select OWNER,SEGMENT_NAME,SEGMENT_TYPE,TABLESPACE_NAME,BYTES/1024/1024 MB from dba_segments where SEGMENT_TYPE='TABLE' and SEGMENT_NAME='AUD$';
  5.清理监听日志             (win: > listener.log    server 2008 R2 : echo " " > log.xml)
  10g及10g以前:$ORACLE_HOME/network/log
  11g以后:$ORACLE_BASE/diag/tnslsnr/{hostname}/listener/trace
  lsnrctl status查看监听日志目录
  10g: $ORACLE_HOME/network/admin/log/    11g:/oracle/gridbase/diag/tnslsnr/s1-11g/listener/alert/log.xml
  LSNRCTL> set
  LSNRCTL> set current_listener LISTENER
  Current Listener is LISTENER
  LSNRCTL> set log_status off
  LSNRCTL> set log_status on
  LSNRCTL> exit
  11g LISTENER_SCAN1
  LSNRCTL> set current_listener LISTENER_SCAN1
  6.检查数据库告警日志
  10g以前:$ORACLE_BASE/admin/{SID}/bdump
  D:\ORACLE\PRODUCT\10.2.0\ADMIN\{SID}\BDUMP
  11g:$ORACLE_BASE/diag/rdbms/{DB_NAME}/{SID}/trace
  7.查看数据库等待事件
  --查看整体数据库的等待事件情况
  select event,count(*) from gv$session_wait where wait_class'Idle' group by event;
  8.收集awr报告
  (1)获取AWR报告
  SQL>@ /rdbms/admin/awrrpt.sql     (退出sqlplus即可看到AWR报告)
  询问客户高峰期时间点,截取1-2小时的报告
  四、备份检查
  1.确定是否存在逻辑或物理备份并查看备份情况(需检查备份日志)
  2.如存在dbra或dg需检查同步情况
  切日志,查看备库是否应用正常
  select THREAD#,max(sequence#) from v$archived_log group by thread#;  主机
  select THREAD#,max(sequence#) from v$archived_log where applied='YES' group by thread#;  备库
  select THREAD#,max(sequence#) from v$archived_log group by thread#;  备库
  备机空间检查
  3.ogg同步情况检查
  [oracle@localhost odc12]$ ps -ef | grep mgr
  oracle    8492     1  0 Mar17          00:02:29 ./mgr PARAMFILE /odc12/dirprm/mgr.prm REPORTFILE /odc12/dirrpt/MGR.rpt PROCESSID MGR USESUBDIRS
  oracle   26085     1  0 Mar22          00:00:15 ./mgr PARAMFILE /odc/dirprm/mgr.prm REPORTFILE /odc/dirrpt/MGR.rpt PROCESSID MGR PORT 7809
  cd /odc12
  ./ggsci
  info all
  ggserr.log
  五、跑巡检脚本
  六、信息收集打包
  1.操作系统日志
  2.集群alert日志      grid用户(/oracle/grid/crs_1($ORACLE_HOME)/log/zjrac1)
  3.数据库alert日志
  4.巡检脚本输出内容
  mkdir
  表空间检查
  set feed off
  set linesize 100
  set pagesize 200
  column "USED (MB)" format a10
  column "FREE (MB)" format a10
  column "TOTAL (MB)" format a10
  column PER_FREE format a10
  --spool tablespace.alert
  SELECT F.TABLESPACE_NAME,
  TO_CHAR ((T.TOTAL_SPACE - F.FREE_SPACE),'999,999') "USED (MB)",
  TO_CHAR (F.FREE_SPACE, '999,999') "FREE (MB)",
  TO_CHAR (T.TOTAL_SPACE, '999,999') "TOTAL (MB)",
  TO_CHAR ((ROUND ((F.FREE_SPACE/T.TOTAL_SPACE)*100)),'999')||' %' PER_FREE,
  TO_CHAR (T.MAX_SPACE,'999,999') "MAXEXTEND (MB)"
  FROM (
  SELECT TABLESPACE_NAME,
  ROUND (SUM (BLOCKS*(SELECT VALUE/1024
  FROM V$PARAMETER
  WHERE NAME = 'db_block_size')/1024)
  ) FREE_SPACE
  FROM DBA_FREE_SPACE
  GROUP BY TABLESPACE_NAME
  ) F,
  (
  SELECT TABLESPACE_NAME,
  ROUND (SUM (BYTES/1048576)) TOTAL_SPACE,
  ROUND (SUM (MAXBYTES/1048576)) MAX_SPACE
  FROM DBA_DATA_FILES
  GROUP BY TABLESPACE_NAME
  ) T
  WHERE F.TABLESPACE_NAME = T.TABLESPACE_NAME
  order by PER_FREE asc;
  表空间:
  select tpsname,status,mgr,maxsize,c_userd,max_used from (
  SELECT  d.tablespace_name  tpsname,d.status status,
  d.segment_space_management mgr, d.contents type,
  TO_CHAR(NVL(trunc(A.maxbytes / 1024 / 1024), 0),'99G999G990') maxsize,
  TO_CHAR(NVL((a.bytes - NVL(f.bytes, 0)) / a.bytes * 100, 0),'990D00') c_userd,
  TO_CHAR(NVL((a.bytes - NVL(f.bytes, 0)) / a.maxbytes * 100, 0),'990D00') max_used
  FROM sys.dba_tablespaces d,
  (SELECT tablespace_name,sum(bytes) bytes,SUM(case autoextensible when  'NO'  then BYTES when  'YES' then MAXBYTES else null end ) maxbytes   FROM dba_data_files  GROUP BY tablespace_name) a,
  (SELECT tablespace_name,SUM(bytes) bytes, MAX(bytes) largest_free   FROM dba_free_space   GROUP BY tablespace_name) f
  WHERE d.tablespace_name = a.tablespace_name   AND d.tablespace_name = f.tablespace_name(+)
  )
  where max_used>80
  order by max_used desc;
  其它:
  SQL> select file_name,bytes/1024/1024,maxbytes/1024/1024,AUTOEXTENSIBLE from dba_data_files;


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.iyunv.com/thread-563470-1-1.html 上篇帖子: Oracle-day02 中 下篇帖子: Oracle-day02 下
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表