hunter 发表于 2015-1-7 19:13:09

数据库非常卡_awr

centos 5.9

oracle 10.2.0.1_x64

数据库非常卡,请帮忙看看awr

yangyanfei 发表于 2015-1-8 22:44:58

1 AAS 比较高有一定负载
2 主要等待事件latch: cache buffers chains 平均等待事件174 ms 有热块 大量的逻辑读
3 log file sync 比较严重

建议:
1 优化 bv9ujsxxgx961        SELECT "ACLASS", "SERIALNO", "PARENT", "ANSWER", "SAVETYPE" FROM "RESULTMULTIEXPAND" "A1" WHERE "PARENT"=:1 AND "ACLASS"=205 AND "SAVETYPE"=1 AND TO_NUMBER("SERIALNO")=:2 AND "ANSWER" IS NOT NULL 减少buffer gets
  主要的热快应该在RESULTMULTIEXPAND表上
2 系统i/o性能较差 检查logfile i/o是否存在问题

Maclean Liu(刘相兵 发表于 2015-1-11 15:10:43

redo/s 并不多 user commit/s也不算高, 但是

latch: cache buffers chains & log file sync 平均等待较高

SELECT "ACLASS", "SERIALNO", "PARENT", "ANSWER", "SAVETYPE" FROM "RESULTMULTIEXPAND" "A1" WHERE "PARENT"=:1 AND "ACLASS"=205 AND "SAVETYPE"=1 AND TO_NUMBER("SERIALNO")=:2 AND "ANSWER" IS NOT NULL


针对如上语句执行:   SELECT *
    FROM (SELECT '1.v$sql'||'实例号:'||GV$SQL.inst_id source,
                 SQL_ID,
                 plan_hash_value,
                 TO_CHAR (FIRST_LOAD_TIME) begin_time,
                 '在cursor cache中' end_time,
                 executions "No. of exec",
                 (buffer_gets / executions) "LIO/exec",
                 (cpu_time / executions / 1000000) "CPUTIM/exec",
                 (elapsed_time / executions / 1000000) "ETIME/exec",
                 (disk_reads / executions) "PIO/exec",
                 (ROWS_PROCESSED / executions) "ROWs/exec"
            FROM Gv$SQL
           WHERE sql_id = '&A'
          UNION ALL
          SELECT '2.sqltuning set' source,
                 sql_id,
                 plan_hash_value,
                 'JUST SQLSET NO DATE' begin_time,
                 'JUST SQLSET NO DATE' end_time,
                 EXECUTIONS "No. of exec",
                 (buffer_gets / executions) "LIO/exec",
                 (cpu_time / executions / 1000000) "CPUTIM/exec",
                 (elapsed_time / executions / 1000000) "ETIME/exec",
                 (disk_reads / executions) "PIO/exec",
                 (ROWS_PROCESSED / executions) "ROWs/exec"
            FROM dba_sqlset_statements
           WHERE SQL_ID = '&A'
          UNION ALL
          SELECT '3.dba_advisor_sqlstats' source,
                 sql_id,
                 plan_hash_value,
                 'JUST SQLSET NO DATE' begin_time,
                 'JUST SQLSET NO DATE' end_time,
                 EXECUTIONS "No. of exec",
                 (buffer_gets / executions) "LIO/exec",
                 (cpu_time / executions / 1000000) "CPUTIM/exec",
                 (elapsed_time / executions / 1000000) "ETIME/exec",
                 (disk_reads / executions) "PIO/exec",
                 (ROWS_PROCESSED / executions) "ROWs/exec"
            FROM dba_sqlset_statements
           WHERE SQL_ID = '&A'
          UNION ALL
          SELECT DISTINCT
                 '4.dba_hist_sqlstat' || '实例号:' || SQL.INSTANCE_NUMBER
                    source,
                 sql_id,
                 PLAN_HASH_VALUE,
                 TO_CHAR (s.BEGIN_INTERVAL_TIME ,'YYYY-MM-DD hh24:mi:ss') begin_time,
                 TO_CHAR (s.END_INTERVAL_TIME,'YYYY-MM-DD hh24:mi:ss') end_time,
                 SQL.executions_delta,
                 SQL.buffer_gets_delta
                 / DECODE (NVL (SQL.executions_delta, 0),
                           0, 1,
                           SQL.executions_delta)
                    "LIO/exec",
                 (SQL.cpu_time_delta / 1000000)
                 / DECODE (NVL (SQL.executions_delta, 0),
                           0, 1,
                           SQL.executions_delta)
                    "CPUTIM/exec",
                 (SQL.elapsed_time_delta / 1000000)
                 / DECODE (NVL (SQL.executions_delta, 0),
                           0, 1,
                           SQL.executions_delta)
                    "ETIME/exec",
                 SQL.DISK_READS_DELTA
                 / DECODE (NVL (SQL.executions_delta, 0),
                           0, 1,
                           SQL.executions_delta)
                    "PIO/exec",
                 SQL.ROWS_PROCESSED_DELTA
                 / DECODE (NVL (SQL.executions_delta, 0),
                           0, 1,
                           SQL.executions_delta)
                    "ROWs/exec"
            FROM dba_hist_sqlstat SQL, dba_hist_snapshot s
           WHERE     SQL.INSTANCE_NUMBER = s.INSTANCE_NUMBER
                 AND SQL.dbid = (SELECT dbid FROM v$database)
                 AND s.snap_id = SQL.snap_id
                 AND sql_id IN ('&A'))
ORDER BY source, begin_time DESC;

sunguo40 发表于 2015-1-13 21:36:15

awr真是个高端玩意
页: [1]
查看完整版本: 数据库非常卡_awr