Check TPS of oracle database

 Check TPS of oracle database

SELECT

ROUND((commits.value + rollbacks.value) / elapsed.seconds, 0) AS transactions_per_second,

ROUND(network.value_MB / elapsed.seconds, 2) AS data_sent_per_second_bytes,

ROUND(read_stat.value_MB / elapsed.seconds, 2) AS data_read_per_second_bytes,

ROUND(write_stat.value_MB / elapsed.seconds, 2) AS data_written_per_second_bytes,

ROUND(elapsed.seconds,2) seconds_elapsed

FROM

(SELECT value FROM v$sysstat WHERE name = 'user commits') commits,

(SELECT value FROM v$sysstat WHERE name = 'user rollbacks') rollbacks,

(SELECT (SYSDATE - startup_time) * 86400 AS seconds FROM v$instance) elapsed,

(SELECT value/1024/1024 AS value_MB FROM v$sysstat WHERE name = 'bytes sent via SQL*Net to client') network,

(SELECT NVL(value, 0)/1024/1024 AS value_MB FROM v$sysstat WHERE name = 'physical read total bytes') read_stat,

(SELECT NVL(value, 0)/1014/1024 AS value_MB FROM v$sysstat WHERE name = 'physical write total bytes') write_stat;




the above sql assumes data read/written/sent over network after the startup of database

No comments:

Post a Comment