核三通用数据库表定期优化性能shell执行脚本(纯个人整理,不涉及公司机密)

fx.sh内容(注意修改自己的路径)

#!/usr/bin/sh 


umask 022
export PS1="`/usr/bin/hostname`-> "
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=$ORACLE_BASE/11gr2
export ORA_GRID_HOME=/u01/app/crs_home/
export ORACLE_OWNER=oracle
export ORACLE_SID=qhwxora1
export PATH=$PATH:$ORACLE_HOME/bin:$ORA_GRID_HOME/bin:/sbin:/usr/sbin:/bin:/usr/local/bin:.
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$ORACLE_HOME/rdbms/lib:/lib:/usr/lib
export CLASSPATH=$ORACLE_HOME/JRE:$ORACLE_HOME/jlib:$ORACLE_HOME/rdbms/jlib:$ORACLE_HOME/network/jlib
export NLS_LANG=american_america.ZHS16GBK
export ORACLE_PATH=/home/oracle
export ORACLE_UNQNAME=qhwxora
EDITOR=vi
export EDITOR

nohup sqlplus system/Qsc01Hj @/backup/dmp/fx.sql >/backup/dmp/fx.log &

fx.sql内容(事件表应该是通用的,各别表注意剔除)

select to_char(sysdate,'yyyymmdd hh24:mi:ss') from dual;

alter TRIGGER XXSI.TRG_DROP_TABLE disable;

truncate table XXSI.ze21;
truncate table XXSI.transaction_log;

  delete XXSI.delete_log where operate_id<(select max(operate_id) from  XXSI.delete_log)-1000000;
  commit;
 delete   XXSI.ze31 where aae036<sysdate-150;
     commit;
  delete   XXSI.ze32 where  baz001<(select max(baz001) from  XXSI.za76 )-100000;
     commit;

exec dbms_stats.gather_table_stats('XXSI','ZE31',CASCADE=>TRUE);

。。。
exec dbms_stats.gather_table_stats('XXSI','ZE32',CASCADE=>TRUE);
alter TRIGGER XXSI.TRG_DROP_TABLE enable;
exit;

select to_char(sysdate,'yyyymmdd hh24:mi:ss') from dual;

exit;

猜你喜欢

转载自blog.csdn.net/viviliving/article/details/82795951