Oracle教程学习之面试题08_描述Oracle现场运维日常工作(年月日)
描述Oracle现场运维每天每周每月的工作
1.Oracle DBA每天的工作
1.1.确认实例的状态是否正常:检查oracle后台进程,数据库是否是open状态,数据文件是否都处在online状态下
1.2.检查监听是否正常,告警日志alert.log中是否有报错,如果有错误(ORA-)记录到日报,并解决。
1.3.检查文件系统的使用情况,如果文件系统的剩余空间小于20%,删除一些不用的文件。检查表空间的剩余空间情况。
1.4.利用一些外部命令检查,检查数据库的性能是否有异常,top、vmstat、iostat、topas
1.5.检查数据库当日备份的有效性(检查备份日志)
1.6.协助开发人员、其它运维人员,协调第三方厂家,帮助开发人员优化SQL,解决开发人员遇到的一些数据库方面的问题
1.7.重点:按时按量完成领导临时交待的其它任务。
2.Oracle DBA每周的工作
2.1.每周生成awr,addm(statspack)检查load_profile,top 5 time events,SQL order by elapsed time等检查数据库性能是否有问题。
2.2.清理和备份一周所产生的Alert日志、跟踪文件、dump文件,清理和备份过期的数据库性能数据,以保证数据库性能监控的连续性和有效性
2.3.空间使用分析,监测数据量总体增长情况,按表空间分析使用率增长情况
3.Oracle DBA每月的工作
3.1.每月对表和索引进行analyze,消除行迁移,表空间碎片,对数据库进行一次全面的健康性检查。
3.2.每月的性能检查重点关注:数据库主要性能指标、数据库主要等待事件、最消耗内存资源的SQL语句
3.3.每月需要对备份的数据进行恢复演练以保证备份的有效性
4.oracle按每天,每周,每月,每季度,每年查询统计数据
风哥Oracle教程提示:
//按天统计
select count(dataid) as 每天操作数量, sum()
from tablename
group by trunc(createtime, 'DD'))
//按周统计
select to_char(date,'iw'),sum()
from tablename
group by to_char(date,'iw')
//按月统计
select to_char(date,'mm'),sum()
from tablename
group by to_char(date,'mm')
//按季统计
select to_char(date,'q'),sum()
from tablename
group by to_char(date,'q')
//按年统计
select to_char(date,'yyyy'),sum()
from tablename
group by to_char(date,'yyyy')