#!/usr/bin/ksh
# whatasmm ()
#------------------------------------------------------------------------------#
#    Module Name:  whatasmm                                                    #
#                                                                              #
#    Purpose:      Report on the Database ASMM Parameters.                     #
#                  (Automated SGA Memory Management)                           #
#    Maintenance                                                               #
#    Date          Author        Description                                   #
#    -----------   ------------  --------------------------------------------  #
#    10-Oct-2009   M.Barone      Module design/creation                        #
#------------------------------------------------------------------------------#
{
        DIRNAM=$(dirname $0)
        ORASID=$(echo $CONTEXT_NAME | cut -f1 -d'_')
        HNAME=$(uname -n)
                
	clear
	echo
	echo  " #--------------------------------------------------------#"
	echo  " # whatasmm:              Oracle Database ASMM Parameters #"
	echo  " #--------------------------------------------------------#"
	echo
	echo  " Connecting as SYSDBA"
	sleep 2

	clear
	ORANAM=${ORASID}
	
#------------------------------------------------------------------------------#
#  SQL*Plus ("Here-Document")                                                  #
#------------------------------------------------------------------------------#
sqlplus  -s  /nolog  <<-END_FILE

	CONNECT /  AS SYSDBA

        clear   BREAKS
        clear   BUFFER
        clear   COLUMNS
        clear   COMPUTES
        clear   SCREEN
        clear   SQL
        clear   TIMING

        set     feedback        off
        set     flush           on
        set     heading         on
        set     pause           off
        set     space           1
        set     termout         on
        set     verify          on
        set     linesize        80
        set     pagesize        999

        SPOOL /tmp/whatasmm_$$.txt

	CLEAR SCREEN

	prompt ================================================================
	prompt == Automated SGA Memory Management -- Dynamic Parameters      ==
	prompt ================================================================
        BREAK   ON  REPORT
	COMPUTE SUM LABEL 'Total'       OF pvalu      ON REPORT

        COLUMN  datevalue       NOPRINT NEW_VALUE       DATEVAR
        COLUMN  timevalue       NOPRINT NEW_VALUE       TIMEVAR
        COLUMN  pname   FORMAT  A32          Heading 'Initialization|Parameter'
        COLUMN  pvalu	FORMAT  999999999999 Heading 'Initialization|Value'
        COLUMN  isses	FORMAT  A10          Heading 'Session|Modifiable'
        COLUMN  issys	FORMAT  A10          Heading 'System|Modifiable'
        COLUMN  isins	FORMAT  A10          Heading 'Instance|Modifiable'

        TTITLE	CENTER  'Automated SGA Memory Mgt (ASMM) - Dynamic Parms'  -
		LEFT    DATEVAR                                            -
                RIGHT   'Page:'         FORMAT 999 SQL.pno      skip 1	   -
                LEFT    TIMEVAR						   -
                CENTER  'whatasmm -- Sorted by ASMM Parameter'	skip 2

        SELECT  TO_CHAR(sysdate, 'DD-MON-YY')	datevalue,
		TO_CHAR(sysdate, 'HH24:MI:SS')  timevalue,
		name			pname,
		TO_NUMBER(value)	pvalu,
		isses_modifiable	isses,
 		issys_modifiable	issys,
 		ISMODIFIED		isins
	FROM	v\$parameter
	WHERE	name		IN 	('shared_pool_size', 'large_pool_size',
					 'java_pool_size', 'db_cache_size') 
	ORDER  BY  name;

	prompt
	prompt 

	prompt ================================================================
	prompt == Automated SGA Memory Management -- Manual Parameters       ==
	prompt ================================================================
        BREAK   ON  REPORT
	COMPUTE SUM LABEL 'Total'       OF pvalu      ON REPORT

        COLUMN  datevalue       NOPRINT NEW_VALUE       DATEVAR
        COLUMN  timevalue       NOPRINT NEW_VALUE       TIMEVAR
        COLUMN  pname   FORMAT  A32          Heading 'Initialization|Parameter'
        COLUMN  pvalu	FORMAT  999999999999 Heading 'Initialization|Value'
        COLUMN  isses	FORMAT  A10          Heading 'Session|Modifiable'
        COLUMN  issys	FORMAT  A10          Heading 'System|Modifiable'
        COLUMN  isins	FORMAT  A10          Heading 'Instance|Modifiable'

        TTITLE	CENTER  'Automated SGA Memory Mgt (ASMM) - Manual Parms'   -
		LEFT    DATEVAR                                            -
                RIGHT   'Page:'         FORMAT 999 SQL.pno      skip 1	   -
                LEFT    TIMEVAR						   -
                CENTER  'whatasmm -- Sorted by ASMM Parameter'	skip 2

        SELECT  TO_CHAR(sysdate, 'DD-MON-YY')	datevalue,
		TO_CHAR(sysdate, 'HH24:MI:SS')  timevalue,
		name			pname,
		TO_NUMBER(value)	pvalu,
		isses_modifiable	isses,
 		issys_modifiable	issys,
 		ISMODIFIED		isins
	FROM	v\$parameter
	WHERE	name	IN 	('db_keep_cache_size', 'db_recycle_cache_size',
				 'log_buffer', 'streams_pool_size')
	  OR	name 	LIKE	 'db_%_cache_size'
	ORDER  BY  name;

        EXIT;
END_FILE

print
print "Please see /tmp/whatasmm_$$.txt"
print
}
