我想知道是否有任何查询显示重做日志组保留和可用的空间?
因为我只找到了这个查询
SELECT
a.GROUP#,
a.THREAD#,
a.SEQUENCE#,
a.ARCHIVED,
a.STATUS,
b.MEMBER AS REDOLOG_FILE_NAME,
(a.BYTES/1024/1024) AS SIZE_MB
FROM v$log a
答案 0 :(得分:0)
没有这样的查询知道重做日志文件中使用了多少空间。充其量,你可以知道他们被切换的频率。
联机重做日志文件以循环方式使用。一旦他们使用了所有分配的空间,他们就会从头开始覆盖(如果数据库处于存档日志模式,则在归档当前的重做日志文件之后)。
答案 1 :(得分:0)
重做日志缓冲区每3秒刷新一次,当1/3满时或提交时刷新。 Oracle会将缓冲区写入重做日志,并在完成时切换。您必须将重做日志大小设置得足够高,这样您就不会经常使用交换机。在繁忙的生产系统上每隔几分钟进行一次切换是可以接受的。
我在查看重做日志时发现此查询很有用:
select a.group#, a.status, b.member
from
v$log a, v$logfile b
where a.group#=b.group#
祝你好运!
答案 2 :(得分:0)
从这里:https://oraclespin.com/2008/03/20/how-full-is-the-current-redo-log-file/
SELECT le.leseq "Current log sequence No",
100*cp.cpodr_bno/le.lesiz "Percent Full",
cp.cpodr_bno "Current Block No",
le.lesiz "Size of Log in Blocks"
FROM x$kcccp cp, x$kccle le
WHERE le.leseq =CP.cpodr_seq
AND bitand(le.leflg,24) = 8;
祝你好运!