摘要:
适用于表空间监控需要扩容数据文件的场景。若表空间占用较小,考虑80%告警;若表空间占用较大,则可以考虑90%再进行告警,因为90%,可能还有大几百G的剩余可用空间。
select ts#,
tablespace_name,
sum(BYTES),
sum(MAXBYTES),
sum(free),
round(sum(BYTES) / sum(MAXBYTES) * 100, 2) AS "使用率%"
from (
select ts.ts#,
ts.NAME as tablespace_name,
dfe.FILE#,
dfe.NAME,
round((ddf.BYTES / 1024 / 1024 / 1024), 2) as BYTES,
round(ddf.MAXBYTES / 1024 / 1024 / 1024, 2) as MAXBYTES,
decode(ddf.INCREMENT_BY, 1, 'YES', 'NO') INCREMENT_BY,
dfe.CREATION_TIME,
round(dfe.CREATE_BYTES / 1024 / 1024 / 1024, 2) as CREATE_BYTES,
round((ddf.MAXBYTES - ddf.BYTES) / 1024 / 1024 / 1024, 2) as free
from v$tablespace ts
join v$datafile dfe
on dfe.TS# = ts.TS#
join dba_data_files ddf
on ddf.FILE_ID = dfe.FILE#
--where ts.ts# = 6
where ddf.autoextensible = 'YES'
)
group by ts#, tablespace_name
--having round(sum(BYTES) / sum(MAXBYTES) * 100, 2)>85 --超过80的
order by round(sum(BYTES) / sum(MAXBYTES) * 100, 2) DEsc
-- order by tablespace_name
;
复制
Linux环境下,可结合shell脚本加钉钉、邮件等方式进行告警
最后修改时间:2024-08-21 16:25:09
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。