Tuesday, June 28, 2011

When is DISM enabled in Solaris

  • You can find out if ISM or DISM is enabled, by executing the following :
    • pmap -xs ora_<SID>_lgwr | grep -i ism
  • The algorithm for finding out if DISM will be enabled is as under:
    • Is memory_target or memory_max_target is set
      • Yes: enable DISM
      • No : Is the size of sga_max_size > size for all SGA components
        •  Yes : Enable DISM
        •  No : enable ISM
  • If you want to disable DISM, ensure that sga_max_size is set to a value less than the size of all SGA components
    • You can find the size of all SGA components as under:
      • select sum(value)/(1024*1024*1024) as totalMB from v$sga;
  • Info on sga_target and sga_max_size:
    • sga_target enables automatic SGA mangement. You do not need to set individual SGA buffers if you set sga_target. It can be dynamically increased to sga_max_size.
    • sga_max_size is the max size of the SGA. It is a static parameter. By default, Oracle sets sga_max_size to sga_target if sga_max_size is not set. Additonal info : http://forums.oracle.com/forums/thread.jspa?threadID=535400

Wednesday, June 8, 2011

Which CPU is servicing the interupts

Issue the mpstat  command. Refer to intr and xcal columns for interrupts. Usually when the value of these two columns are equal, it is network interrupt.

To find out which CPU is servicing network (NIC) and IO (HBA) interrupts you can also  invoke the following command

intrstat 10 10

Create Statspack

"snapshot" is  snapshot of database statistics and performance information as of a specific point in time.

There is no such thing as "comparing two snapshots". To get information about database activity and/or performance, you have to generate the StatsPack report for the duration between two snapshots.
Thus, for example, a StatsPack report for the duration between Snapshot 1 and Snapshot 2 shows activity and performance information for that time duration.

Script to take snapshot:

echo "connect to sql plus and taking a snap"

sqlplus "/nolog" << !
connect perfstat/perfstat
variable snap_before number ;
begin :snap_before :=statspack.snap; end;
/
print snap_before
!
sleep 60
echo "starting second snapshot"

sqlplus "/nolog" << !
connect perfstat/perfstat
variable snap_after number ;
variable snap_before number ;
begin
:snap_after := statspack.snap ;
end ;
end ;
/
print snap_after ;
begin
select :snap_after -1 into :snap_before from dual ;
end ;
/

define begin_snap=:snap_before
define end_snap=:snap_after
define report_name=snapshot
@$ORACLE_HOME/rdbms/admin/spreport

Cluster verification Utility

  • To view what prerequisites are failing
    • ./runcluvfy.sh comp sys -n  t5120-241-06,t5220-241-03 -p crs
  • To generated a fixup script in /tmp/ directory to fix the prerequisites that are failing
    • ./runcluvfy.sh stage -pre crsinst -fixup -fixupdir /tmp/ritu.sh  -n t5120-241-06,t5220-241-03
  • Additional commands:
    • ./runcluvfy.sh -help
    • ./runcluvfy.sh stage -list or stage -help
    •  ./runclvfy.sh comp -list or comp -help
    • System requirement verification
      • ./runcluvfy.sh comp sys -n {node list} -p {crs|database} -verbose
    • Storage verification
      • ./runcluvfy.sh comp ssa -n {node list}  -s {storageid_list] - verbose
  • Detailed Documentation: