oracle数据库表空间巡检脚本

#!/bin/bash
source /home/oracle/.bash_profile
sqlplus -S /nolog > checktablespace.log <<EOF
conn system/test
set linesize 500;
set heading off;
set pagesize 0;
set feedback off;
SELECT sysdate,a.tablespace_name “表空间名”,
total / (1024 * 1024 * 1024) “表空间大小(G)”,
free / (1024 * 1024 * 1024) “表空间剩余大小(G)”,
(total – free) / (1024 * 1024 * 1024) “表空间使用大小(G)”,
ROUND((total – free) / total, 4) * 100 “使用率%”
FROM (SELECT tablespace_name, SUM(bytes) free
FROM DBA_FREE_SPACE
GROUP BY tablespace_name) a,
(SELECT tablespace_name, SUM(bytes) total
FROM DBA_DATA_FILES
GROUP BY tablespace_name) b
WHERE a.tablespace_name = b.tablespace_name
order by “使用率%” desc;
quit
EOF

cat checktablespace.log|grep -v “SYSAUX” | awk ‘ $7 >95 {print $3,”使用率为:”,$7}’ > checktablespace1.log

本文版权归 飞翔沫沫情 作者所有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出 原文链接 如有问题, 可发送邮件咨询,转贴请注明出处:https://www.fxkjnj.com/275/

发表评论

登录后才能评论