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;