Oracle12c 巡检实现性能可靠性(oracle12c 巡检)

Oracle12c巡检:实现性能可靠性

随着企业业务的不断扩展和发展,数据量不断增大,企业对于高性能、高可靠性的需求也日益增加。Oracle12c在数据库性能管理上做了不少改进,为企业优化性能、提高可靠性带来新的可能。本文将介绍如何利用Oracle12c实现数据库性能可靠性的方法。

一、利用AWR报告实现Oracle性能监控

Oracle Automatic Workload Repository(AWR)是Oracle自带的一个性能分析工具,有比较好的体现数据库性能和各类统计信息。获取AWR报告的方法:

1. 登录Oracle服务器,在sqlplus中使用,命令为:

sqlplus / as sysdba

2. 进入AWR查询模式:

@$ORACLE_HOME/rdbms/admin/awrrpt.sql

3. 根据提示,输入AWR报告所需的查询条件,包括:起始时间、终止时间、挂起时间和快照区间等信息。

4. 生成AWR报告,可以在$ORACLE_HOME/rdbms/admin/路径下找到。

二、AWR报告分析优化

AWR报告详细反应了数据库实例在一段时间内的性能状态,可以通过分析AWR报告来解决各类性能问题,例如:

1. 慢SQL语句的定位:在AWR报告中,查找Top 5 SQL语句,然后通过对这些语句的分析,可以找出慢SQL语句并进行优化。

2. 缓冲池问题的调整:在AWR报告中,查找Buffer Pool的数据信息,如果在其中发现大量的操作系统磁盘读取和写入,可能是缓冲池设置不当导致的,这时需要调整缓存池的大小和结构。

3. 锁问题的排查:在AWR报告中,查找锁等待的情况,如果锁等待时间突然变长,就要分析导致该情况的原因并进行调整。

4. 性能变化的监控:在AWR报告中,可以查看系统性能随时间的变化情况,及时发现性能下降的原因并进行优化。

三、AWR自动审计

在Oracle12c中,AWR已经具备自动审计的能力,针对一些长时间存在、频繁在线操作,导致数据库运行速度减缓的情况,通过配置dbms_scheduler的自动审计功能,可以容易地定位问题所在。例如:

EXEC DBMS_SCHEDULER.CREATE_SCHEDULE(SCHEDULE_NAME=>'Awr_Book',
REPEAT_INTERVAL=>'interval ' 2 ' hour',
START_DATE=> timestamp'2015-02-03 01:00:00.000');

BEGIN
DBMS_SCHEDULER.create_job(job_name=>'Run_Awr_Book',
job_type=>'STORED_PROCEDURE',
job_action=>'DBMS_WORKLOAD_REPOSITORY.create_snapshot',
number_of_arguments=>1,
start_date=>timestamp'2015-02-03 01:00:00.000',
repeat_interval=>'FREQ=DLY;BYHOUR=2;BYMINUTE=0',
end_date=>NULL,
comments=>'dly snapshot');
END;

四、利用DBMS_REPR存储过程实现Oracle12c巡检

Oracle12c中的DBMS_REPR存储过程可以实现数据库自动巡检,检查数据完整性。在检查过程中,如果发现数据不完整,会自动执行修复过程。

1. 创建ReprTable表:

CREATE TABLE reprtable
(id INTEGER,
column1 VARCHAR2(20),
column2 VARCHAR2(20),
column3 VARCHAR2(20));

2. 开始DBMS_REPR自动巡检:

BEGIN
DBMS_REPR.create_repr_handle('reprProd');
DBMS_REPR.ADD_REPR_OBJECT(handle_name => 'reprProd',object_type => 'TABLE', object_schema => 'me', object_name => 'reprtable');
DBMS_REPR.check_object('reprProd', 'me', 'reprtable', 'FULL');
END;

通过自动巡检,可以自动发现和修复数据库中的各种问题,保障数据库性能的稳定可靠。

综上所述,Oracle12c的性能可靠性提升给予了企业更多的利益,但是仅仅依靠Oracle自身的性能监控可能仍无法满足企业的整体数据库性能管理需求。如果您的企业需要更全面的数据库性能管理解决方案,请考虑使用更好的第三方数据库管理工具。


数据运维技术 » Oracle12c 巡检实现性能可靠性(oracle12c 巡检)