oracle 定期迁移分区表数据(不落地)

[oracle@SJ ~]$ cat /home/oracle/JY_SJ.sh
#!/bin/bash
source /home/oracle/.bash_profile
SDATE=$(date  +%Y%m)
TDATE=$(date -d "-1 month" +%Y%m)
SPNAME="P"${SDATE}
TPNAME="P"${TDATE}
#@/home/oracle/truncate.sql

sqlplus / as sysdba > /home/oracle/SJ_PAR_`date +%y%m%d%H`.log<<EOF
alter session set container=SJDB;
set feedback off heading off term off
set pages 0 trim on trims on lines 32767 long 999999
set echo off
spool SJ_PAR.sql

select count(*) from SJ.T_TEST_INF_SJ partition ($SPNAME);  
select count(*) from SJ.T_TEST_INF_JY partition ($TPNAME);

alter table SJ.T_TEST_INF_SJ truncate partition $TPNAME;
alter table SJ.T_TEST_INF_JY truncate partition $SPNAME;

select count(*) from SJ.T_TEST_INF_SJ partition ($SPNAME);
select count(*) from SJ.T_TEST_INF_JY partition ($TPNAME);

spool off
exit
EOF
logname=`date +%y%m%d%H`
impdp \'sys/SJ@SJDB as sysdba\' content=data_only logfile=$logname.log directory=SJ tables=SJ.T_TEST_INF_SJ:$TPNAME,SJ.T_TEST_INF_JY:$SPNAME remap_tablespace=SS_data:SJ_data,SS_idx:SJ_idx remap_schema=SS:SJ network_link=SJ_JY

 

posted @   钱若梨花落  阅读(287)  评论(0编辑  收藏  举报
编辑推荐:
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· DeepSeek 开源周回顾「GitHub 热点速览」
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
点击右上角即可分享
微信分享提示