crontab gather stats

$ cat gather_stat.sh
export ORACLE_SID=orcl

export ORACLE_BASE=/opt/oracle

export ORACLE_HOME=/opt/oracle/product/10.2.0.5

export PATH=/opt/oracle/product/10.2.0.5/bin:/usr/local/bin:/bin:/usr/bin:.

sqlplus sys/sys as sysdba << EOF > /home/oracle/gather_stat.log

@$1

@/home/oracle/gather.sql

exit

EOF
++++++++++++++++++++++++++++++++++++++++++

$ cat stats_gather.sql
set pages 100

set lines 250

set echo off feedback off heading off

spool gather.sql

select 'SET ECHO ON FEEDBACK ON TIMING ON' FROM DUAL;

select 'exec dbms_stats.gather_table_stats (ownname => ''' || owner ||''', tabname => '''||table_name||''', estimate_percent => DBMS_STATS.AUTO_SAMPLE_SIZE, cascade => TRUE,method_opt => '''||' FOR ALL COLUMNS SIZE AUTO'''||', degree => 8);' from  dba_tables
where owner in ('DFIADMIN', 'S3PUBLISH');

spool off

+++++++++++++++++++++++++++++++++++++++++++++++++

#gather stats for schema in database orcl
* 5 * * 0 /home/oracle/gather_stat.sh /home/oracle/stats_gather.sql > /home/oracle/gather_stat.log



Comments

Popular posts from this blog

Installing DBMS_JAVA package in Oracle and calling UTL_DBWS web services through Oracle database

stick the job to the specific instance in Oracle RAC

finding fragmentation at table level and tablespace level in Oracle and steps to remove them