Oracle DBA 每天、每周、每月应该做的工作

      ㈠ 每天的工作
        
        ① 检查 alert.log
        
        ② 环境确认
           
           ● 数据库实例是否正常工作
           
              ▼ ps –ef|grep ora_
              ▼ select status from v$instance
     
           ● 监听器是否正常工作
              
              ▼ lsnrctl status 
              
           ● 表空间是否出故障
              
              ▼ select tablespace_name,status from dba_tablespace;
              
           ● 控制文件、日志文件是否正常
              
              ▼ v$controlfile
              ▼ v$log、v$logfile
              
        ③ 性能监测
           
           ● 按业务峰值情况,对数据库性能数据进行定时采集
           ● 检查数据库的主要性能指标
           ● 检查最消耗资源的SQL语句变化情况
           ● 检查是否有足够的资源、主要注意以下:
              
              ▼ 所有表空间的剩余空间情况 
              ▼ 识别出一些异常的增长 
              ▼ 检查CPU、内存、网络、存储等是否异常
     
              
        ④ 定时任务的检查
           
           每天检查晚间定时执行脚本
           
           ● 备份脚本日志
           ● 统计信息采集脚本日志
           ● 定时数据抽取/转换/装载脚本
           ● 日志文件整理脚本
     
     
        ⑤ 坚持每天看Oracle 官方文档一个小时 -_-#
        
        
        
      
      ㈡ 每周的工作
        
        ① 空间使用分析
           
           ● 监测数据量总体增长情况
           ● 按表空间分析使用率增长情况 
           ● 表空间碎片整理
              =>alter tablespace <tablespace_name> coalesce;
              
           ● 各segment的数据碎片、chained row/migrate row等问题
              根据具体情况制定相应的策略,同时也及时发现潜在的问题
      
        
        ② 索引碎片分析
           
           ● 监测索引的碎片情况,根据情况制定索引的重建频率以提高索引使用效率
              => analyze index <index_name> invalidate structure  
              => select name,del_lf_rows_len,lf_rows_len,(del_lf_rows_len/lf_rows_len)*100 from index_stats
                 索引碎片率(%) = (被删除的索引长度/索引总长)*100 
              => alter index <索引名> rebuild
              => alter index <索引名> coalesce
              
           ● 监测索引的使用情况,根据使用情况,删除未使用的索引,并添加能提高查询和处理性能的索引
             => alter index <索引名> monitoring usage
             => alter index <索引名> nomonitoring usage
             => select index_name,used from v$object_usage
             
        
        ③ 数据整理工作
           
           ● 清理和备份一周所产生的Alert日志、跟踪文件、dump文件
           ● 清理和备份过期的数据库性能数据,以保证数据库性能监控的连续性和有效性
           
           
                 
     
      ㈢ 每月的工作
     
        ● 全面分析一次STATSPACK报告/AWR 
        ● 数据库主要性能指标
        ● 数据库主要等待事件
        ● 最消耗内存资源的SQL语句
        ● 最消耗I/O资源的SQL语句
        ● 恢复演练以保证备份的有效性
        ..........
        ..........

        ..........

 

 

By David Lin

2013-06-14

Knowing youself is the height of wisdom

        

posted @ 2013-06-15 15:17  爱生活,爱编程  阅读(375)  评论(0编辑  收藏  举报