这篇东西是我看到EYGLE的《DBA日常工作职责 - 我对DBA的七点建议》()后的一些想法。
在我理解,当系统已实施上线后,对数据库的维护阶段,DBA最基本的工作有二:维护数据库的可靠性(保证数据的安全,备份和恢复方面);维护数据库的可用性(保证数据库有较高的性能,优化方面)。
通过等待事件来决定优化方向是最基本的方法。在我们维护数据库的时候,有时有这样的情况,数据库一直是好好的,而突然有用户抱怨数据库慢,而alert.log里面没有明显报错。这时我们往往就会通过查询v$session_wait(在10g以后也可查询v$session)来看问题出在哪里。更多的时候我们通过查看awr report来主动了解性能的状况,寻找优化的空间。这两种方法的原理其实是一样的。在数据库的维护阶段的优化,最能产生收益的恐怕是SQL tuning . 然后再考虑application,memory , IO , Architecture tuning等等 (系统的架构阶段刚好相反)
所以,DBA的日常工作至少应该包括以下几项
1 ) 每个月做一次备份与恢复的演练
2 ) 每天看一个AWR REPORT和ADDM REPORT ,了解数据库的状况
3 ) 每天熟悉和优化一个SQL语句
阅读(986) | 评论(0) | 转发(0) |