DBAtlas · データベース運用アトラス

スタンバイで転送/適用ラグ、適用速度、Data Guardプロセスを測定

OracleData Guard

コマンド

-- Run on the standby:
SELECT name, value, unit, time_computed, datum_time
FROM   v$dataguard_stats
WHERE  name IN ('transport lag','apply lag','apply finish time','estimated startup time');

-- Redo apply rate (KB/s):
SELECT item, units, sofar, total, TO_CHAR(timestamp,'YYYY-MM-DD HH24:MI:SS') AS ts
FROM   v$recovery_progress
WHERE  item IN ('Active Apply Rate','Average Apply Rate','Maximum Apply Rate','Last Applied Redo')
ORDER  BY start_time DESC, item;

-- Transport and apply processes (12.2+; replaces v$managed_standby):
SELECT name, role, action, thread#, sequence#, block#, delay_mins
FROM   v$dataguard_process
ORDER  BY role;

概要

スタンバイがプライマリからどれだけ遅れているか(転送ラグ=未受信のREDO、適用ラグ=未適用のREDO)、バックログがいつ適用されるか、適用速度、どのプロセスがどのシーケンスを処理しているかを表示する。

使用する場面

RPO/RTO監視に。ラグアラート時に問題がネットワーク(転送)にあるか、スタンバイのI/O/CPU(適用)にあるかの判別に。

注意

読み取り専用。datum_timeが古い(time_computedより大きく遅れている)場合、スタンバイはプライマリからデータを受信しておらず、ラグの値は信頼できない。DelayMinsが設定されているか確認する。意図的な遅延は適用ラグとして見える。

DBAtlas で開く →

関連項目