Oracle_SQL_EXPDP01

/*
Filename    : dbinfo.sql
Author      :
Description : collects info about a database for documentation
*/
set feedback off
set termout off
set pagesize 100
set linesize 75
spool ${backupdir}/dbinfo.${filename}
--
-- *************    NAME/VERSIONS    **************
--
set heading off
set verify off
column today NEW_VALUE p_currdate noprint
select TO_CHAR(SYSDATE,'fmMonth ddth, yyyy') today
from   dual;
clear breaks
clear computes
clear columns
set heading off
column name heading '' justify center format a74
select   'Database Name (SID): ' || name "name"
from     v$database;
prompt
prompt
prompt Version/SGA Information:
set heading off
select * from v$version;
column sgatot justify left format 9,999,999,999,999
select   'Total System Global Area as of &p_currdate.:' hd1,
         sum(value) sgatot, 'bytes' hd2
from     v$sga;

--
-- *************    DATABASE USER INFO    **************
--
prompt
prompt
prompt Database user info:
set heading on
column useranme format a15 heading 'USERNAME'
column password format a30 heading 'PASSWORD'
column  default_tablespace format a19 heading 'DEFAULT_TABLESPACE'
select username,password,default_tablespace from dba_users;
clear columns

--
-- *************    TABLESPACES/DATAFILES    **************
--
prompt
prompt
prompt Tablespaces and Datafiles:
clear breaks
clear computes
clear columns
set heading on
column tablespace_name heading 'Tablespace' justify left format a10
column file_id heading 'File|ID' justify center format 999
column file_name heading 'Datafile' justify center format a45 word_wrapped
column size Heading 'Size|in MB.' justify center format 999,990.99
break on tablespace_name skip 1 on report skip 2
compute sum label 'TS SIZE:' of size on tablespace_name
compute sum label 'DB SIZE:' of size on report
select tablespace_name,
       file_id,
       file_name,
       bytes/1024/1024 "size"
from dba_data_files
order by tablespace_name, file_id, file_name;

--
-- *************    SPACE USAGE    **************
--
prompt Space usage (as of &p_currdate.):
prompt

clear breaks
clear computes
clear columns
set heading on
column tablespace_name heading 'Tablespace' justify left format a20
column tbsize heading 'Size|in MB.' justify left format 999,990
column tbused heading 'Used|in MB.' justify right format 999,990
column tbfree heading 'Free|in MB.' justify right format 999,990
column tbusedpct heading '' justify left format a6
column tbfreepct heading '' justify left format a6
break on report
compute sum label 'Totals:' of tbsize tbused tbfree on report
select    t.tablespace_name,
          ROUND(a.bytes) tbsize,
          NVL(ROUND(b.bytes),0) tbused,
          '(' || TO_CHAR(ROUND(100*(NVL(b.bytes,0)/NVL(a.bytes,0))))
            || '%)' tbusedpct,
          NVL(ROUND(c.bytes),0) tbfree,
          '(' || TO_CHAR(ROUND(100*(NVL(c.bytes,0)/NVL(a.bytes,0))))
            || '%)' tbfreepct
from      dba_tablespaces t,
          ( select tablespace_name,
                   sum(bytes)/1024/1024 bytes
             from  dba_data_files
             group by tablespace_name) a,
          ( select e.tablespace_name, sum(e.bytes)/1024/1024 bytes
             from  dba_extents e
             group by e.tablespace_name ) b,
          ( select f.tablespace_name, sum(f.bytes)/1024/1024 bytes
             from  dba_free_space f
             group by f.tablespace_name ) c
where     t.tablespace_name = a.tablespace_name(+) and
          t.tablespace_name = b.tablespace_name(+) and
          t.tablespace_name = c.tablespace_name(+);
--
-- *************    REDO LOG FILES    **************
--
prompt
prompt
prompt Online Redo Logfiles:
clear breaks
clear computes
clear columns
column member heading 'Logfile' justify center format a50 word_wrapped
column group heading 'Group|Number' justify center format 99
column size heading 'Size|in MB.' justify center format 990.99
select f.member "member",
       f.group# "group",
       l.bytes/1024/1024 "size"
from v$logfile f, v$log l
where f.group#=l.group#
order by f.group#,f.member;
--
-- *************    CONTROL FILES    **************
--
prompt
prompt
prompt Control files:
clear breaks
clear computes
clear columns
column name heading 'File Name' format a60 word_wrapped
select name from v$controlfile;
--
-- *************    ROLLBACK SEGMENTS    **************
--
prompt
prompt
prompt Rollback Segments (sizes as of &p_currdate.):
clear breaks
clear computes
clear columns
set heading on
column tablespace_name heading 'Tablespace' justify left format a10
column segment_name heading 'Seg|Name' justify center format a7
column status heading 'Status' justify center format a8
column initial_extent heading 'Initial|(in M)' justify center format 99,990.9
column next_extent heading 'Next|(in M)' justify center format 99,990.9
column min_extents heading 'Min|Ext' justify center format 99,990
column max_extents heading 'Max|Ext' justify center format 9999999990
column pct_increase heading 'Pct|Inc' justify center format 990
column rbsize heading 'Curr Size|(in M)' justify left format 999,990
break on tablespace_name skip 1 on report skip 2
select    r.tablespace_name,
          r.segment_name,
          r.status,
          r.initial_extent/1024/1024 "initial_extent",
          r.next_extent/1024/1024 "next_extent",
          r.min_extents,
          r.max_extents,
          r.pct_increase,
          sum(e.bytes)/1024/1024 "rbsize"
from      dba_rollback_segs r, dba_extents e
where     e.segment_name = r.segment_name
group by  r.tablespace_name, r.segment_name, r.status,
          r.initial_extent/1024, r.next_extent/1024,
          r.min_extents, r.max_extents, r.pct_increase;
--
-- *************    PARAMETERS    **************
--
prompt
prompt Parameters (non-defaults):
clear breaks
clear computes
clear columns
column name heading 'Name' format a35 word_wrapped
column pvalue heading 'Value' format a35 word_wrapped
select name, rtrim(value) "pvalue"
from v$parameter
where isdefault = 'FALSE'
order by name;
spool off

请使用浏览器的分享功能分享到微信等