数据库是否为归档模式,可以使用archivelog list查看
数据库是否启用了force logging
这个新特性,其实还是比较实用的,建议开启,对于变更都能够及时统筹管理。所以这个特性mysql还是可以借鉴一下。
数据库的归档频率是否过高,每个小时的归档日志量是否过大。比如500M为一个基准。
内核参数设置的情况需要提前规律,是否存在不合理的情况,主要shmmax,shmmal等,还有对OLTP推荐使用的大页设置。
数据库中的组件状态是否都在valid,比如xdb,jvm等都需要检查这些组件是否正常。
有些参数尽管是新特性,但是在我所在的业务场景中还是不太推荐使用。比如
Sec_case_sensative --大小写敏感,默认是true,建议设置为false。
Segment_deferred --延迟段创建,默认是true,建议设置为false
Memory_target --自动内存管理,开启sga自动管理即可。开启会影响大页设置。
Filesystem_option --io相关的设置,在rhel6以上的环境建议设置为setall
表空间,临时表空间的使用情况,是否存在一定的可扩展空间。临时表空间可以反映出应用中的一些sql的使用情况。
系统表空间system的大小如果过大,需要考虑是否aud$的空间占用过大,可以调整审计策略或者清理部分的审计数据。
查看AWR保留的时间设置和快照生成频率,是否需要保留更长。生成频率默认是否需要设置为半个小时。
查看数据库中是否启用了资源管理,可以查看showparameter resource来查看是否启用。
是否启用了自动任务,比如统计信息自动收集,自动开启自动段优化管理。
查看数据库的数据文件状态,是否都为Online状态。
是否数据库日志存在ORA错误,对于ORA错误,需要查看都有哪些类型的错误,是否有ORA-600的错误。
数据库应用层面的scheduler和job是否正常运行。
是否存在KILLED,SNIP状态的session,KILLED状态的session需要查看是否持续时间过长,如果过长,需要从操作系统层面清理对应的绑定进程。
如果存在SNIP状态的session,应该是启用了资源管理,需要和应用端确认这样的配置是否需要,对于长连接来说还是不可取的。
数据库中是否存在失效的对象,需要查看dba_objects来进行简单的确认。
是否数据库中存在不可用的分区索引。
数据库密码是否遵循了安全的规范,是否在使用过于简单的密码和默认的密码。
数据库中是否存在额外的DBA账号,DBA账号都应该在可控范围之内。
在线日志大大小是否为默认的50M,一般来说这个大小还是不满足OLTP的业务需求的。
数据库中是否存在大量的并行session,这个并行度也需要综合考量,比如通过历史的监控信息等来确认。
系统是否有hotbackup的操作,这些数据文件的备份状态是否为active,如果持续时间过长,会有一定的风险。
为了统一管理,方便容灾切换,还是建议开启dgbroker来进行统一管理。
查看awr报告中的sql情况,查找资源消耗高的sql语句。