spool healthcheck.log
set echo off
whenever sqlerror continue;
prompt
prompt
prompt ################################################################
prompt Number of Datafiles:
select count(*) from dba_data_files;
prompt
prompt
prompt ################################################################
prompt Number of Tablespaces:
select count(*) from v$tablespace;
prompt
prompt
prompt ################################################################
prompt Disk Space (of all dbfiles):
select sum(bytes)/1024/1024 as "sum(bytes)" from dba_data_files;
prompt
prompt
prompt ################################################################
prompt Redo Log Size:
select group#,bytes/1024/1024 from v$log;
prompt
prompt
prompt ################################################################
prompt Archiving Enabled:
Archive log list;
prompt
prompt
prompt ###############################################################
prompt UPDATE:
select * from v$version;
prompt
prompt
prompt ################################################################
prompt INSTALL OPTION:
Col parameter for a50
Col value for a10
Select * from v$option where value='TRUE';
prompt
prompt
prompt ################################################################
prompt parameter:
show parameter
prompt
prompt
prompt ################################################################
prompt SGA:
SELECT pool, round( pool_bytes / 1048576 ),round( 100 * pool_bytes / total_sga, 2 ) percent
FROM
( SELECT sum( bytes ) total_sga FROM v$sgastat ),
( SELECT nvl( pool, name ) pool, SUM( bytes ) pool_bytes
FROM v$sgastat
GROUP BY nvl( pool, name ) )
ORDER BY 3 DESC;
prompt
prompt
prompt ################################################################
prompt SGA used:
select pool,name,bytes from v$sgastat;
prompt
prompt
prompt ################################################################
prompt Number of control files:
select name,status from v$controlfile;
prompt
prompt
prompt ################################################################
prompt Number of redo log members per group:
col member format a50
select group#,status,member from v$logfile;
prompt
prompt
prompt ################################################################
prompt temp Tablespaces:
SELECT tablespace_name, contents, extent_management
FROM dba_tablespaces WHERE CONTENTS= 'TEMPORARY';
prompt
prompt
SELECT username, default_tablespace, temporary_tablespace
FROM dba_users
WHERE temporary_tablespace = 'SYSTEM';
prompt
prompt
prompt ################################################################
prompt system Tablespaces:
SELECT username, default_tablespace
FROM dba_users
WHERE default_tablespace = 'SYSTEM'
AND username not in ( 'SYS', 'SYSTEM' );
prompt
prompt
prompt ################################################################
prompt TABLESPACE USAGE:
col f.tablespace_name format a15
col d.tot_grootte_mb format a10
col ts-per format a15
select upper(f.tablespace_name) "ts-name",
d.tot_grootte_mb "ts-bytes(m)",
d.tot_grootte_mb - f.total_bytes "ts-used (m)",
f.total_bytes "ts-free(m)",
to_char(round((d.tot_grootte_mb - f.total_bytes) / d.tot_grootte_mb * 100,
2),
'990.99') "ts-per"
from (select tablespace_name,
round(sum(bytes) / (1024 * 1024), 2) total_bytes,
round(max(bytes) / (1024 * 1024), 2) max_bytes
from sys.dba_free_space
group by tablespace_name) f,
(select dd.tablespace_name,
round(sum(dd.bytes) / (1024 * 1024), 2) tot_grootte_mb
from sys.dba_data_files dd
group by dd.tablespace_name) d
where d.tablespace_name = f.tablespace_name
order by 5 desc;
prompt
prompt
prompt ################################################################
prompt data segment:
SELECT DISTINCT (a.tablespace_name)
FROM dba_tables a, dba_indexes b
WHERE a.owner = b.table_owner
AND a.table_name = b.table_name
AND a.tablespace_name = b.tablespace_name
AND a.tablespace_name not in ( 'SYSTEM', 'SYCRM1UX' );
prompt
prompt
prompt ################################################################
prompt index:
SELECT owner || '.' || index_name AS "OWNER.INDEX_NAME", blevel
FROM dba_indexes
WHERE blevel >= 4
ORDER BY blevel DESC;
prompt
prompt
prompt ################################################################
prompt BACKUP MODE:
select set_stamp,
backup_type,
to_char(start_time,'yyyymmdd hh24:mi:ss')
from v$backup_set where start_time > sysdate - 5 order by start_time;
prompt
prompt
prompt ################################################################
prompt Tablespaces Fragmentation:
select tablespace_name,
sqrt(max(blocks)/sum(blocks))*(100/sqrt(sqrt(count(blocks)))) fsfi
from dba_free_space
where tablespace_name in (select tablespace_name
from dba_tablespaces
where extent_management != 'LOCAL')
group by tablespace_name
order by 2 desc;
select segment_name,segment_type,next_extent,pct_increase,extents
from dba_segments where extents > 1000;
prompt ################################################################
prompt
prompt
prompt ################################################################
prompt OBJECT INVALID
select owner,
object_type,
count(object_type)
from dba_objects where status='INVALID' group by owner,object_type;
prompt
spool off
|