oracle对一个大表的备份
业务介绍:
index_data_test一个有8亿行数据的表,有联合索引,其中有2014年(每天几百万,20150401日期字段)的数据(5亿行)和2015的数据(3亿行),下面是把2014年的数据备份到另外一个表里
以下是开发过程的主要流程:
v_flow:='1002';--备份物理网格数据
select count(1)
into v_flagnum
from index_data_test
where acct_date >= v_day_begin
and acct_date <= v_day_end;
--如果有需要备份的数据,才需要后续处理
if v_flagnum>0 then
begin
execute immediate 'drop table index_data_test_tmp1';
exception when others then
null;
end;
--将需要备份的数据存入临时表
v_flow:='100201';
execute immediate '
create table index_data_test_tmp1 nologging parallel 8 as
SELECT /*+ parallel(c,8) */
acct_date,
province_code,
eparchy_code,
city_code,
dgrid_id,
pgrid_id,
index_code,
dvalue,
ldvalue,
mtotalvalue,
lmdvalue
from index_data_test
where acct_date >='|| v_day_begin||' and acct_date <='|| v_day_end ;
begin
execute immediate 'drop table index_data_test_tmp2';
exception when others then
null;
end;
--备份最新数据
v_flow:='100202';
execute immediate '
create table index_data_test_tmp2 nologging parallel 8 as
SELECT /*+ parallel(c,8) */
acct_date,
province_code,
eparchy_code,
city_code,
dgrid_id,
pgrid_id,
index_code,
dvalue,
ldvalue,
mtotalvalue,
lmdvalue
from index_data_test
where acct_date > ' ||v_day_end ;
v_flow:='100202';
--插入到备份表
v_flow:='100203';
execute immediate '
INSERT INTO index_data_test_bak nologging
SELECT /*+ parallel(a,8) */
acct_date,
province_code,
eparchy_code,
city_code,
dgrid_id,
pgrid_id,
index_code,
dvalue,
ldvalue,
mtotalvalue,
lmdvalue
FROM index_data_test_tmp1 a ';
COMMIT;
--删掉正式表
execute immediate ' drop table index_data_test ';
--创建正式表
v_flow:='100204';
execute immediate '
create table index_data_test nologging parallel 8 as
SELECT /*+ parallel(c,8) */
acct_date,
province_code,
eparchy_code,
city_code,
dgrid_id,
pgrid_id,
index_code,
dvalue,
ldvalue,
mtotalvalue,
lmdvalue
from index_data_test_tmp2 ';
--给正式表创建索引
v_flow:='100205';
execute immediate '
create index PK_index_data_test_0655 on index_data_test (ACCT_DATE, PGRID_ID, INDEX_CODE)
tablespace GRID_INDX_02
pctfree 10
initrans 2
maxtrans 255
storage
(
initial 64K
next 1M
minextents 1
maxextents unlimited
)';
--删除临时表
execute immediate 'drop table index_data_test_tmp1';
execute immediate 'drop table index_data_test_tmp2';
else
--删除临时表
execute immediate 'drop table index_data_test_tmp1';
end if;
oracle对一个大表的备份相关推荐
- 给一个大表增加一个字段,带默认值
转载自:http://www.itpub.net/forum.php?mod=viewthread&tid=1083259&highlight= 给一个大表增加一个字段,给怎样操作. ...
- 在MySQL中如何有效的删除一个大表?
在MySQL中如何有效的删除一个大表? Oracle大表的删除: http://blog.itpub.net/26736162/viewspace-2141248/ 在DROP TABLE 过程中,所 ...
- MySQL把一个大表拆分多个表后,如何解决跨表查询效率问题
MySQL把一个大表拆分多个表后,如何解决跨表查询效率问题 参考文章: (1)MySQL把一个大表拆分多个表后,如何解决跨表查询效率问题 (2)https://www.cnblogs.com/lili ...
- 【Oracle批量更新】根据一个大表批量更新另一大表的方法比较
转载自:http://blog.csdn.net/onemetre/article/details/6525348 [问题]现在有两个千万级别的结构相同数据不同数据表T_SMS_PHONENO(目的表 ...
- excel将大表分解成小表,将小表合成一个大表
1.将一个十几几万行的表分解成小表 请用微软的excel 不要用wps 用excel打开改文件,按alt+f11,选择你要分解的主表 界面如图: 输入下面的代码 Sub cfb() Dim r, c ...
- Mysql给一个大表加一列_MySQL 大表添加一列的实现
问题参考自: https://www.zhihu.com/question/440231149 ,mysql中,一张表里有3亿数据,未分表,要求是在这个大表里添加一列数据.数据库不能停,并且还有增删改 ...
- oracle变更为大表分区表,叶摇 » Blog Archive » oracle把没有分区的普通大表改成分区表...
oracle把没有分区的普通大表改成分区表 1.根据要改成分区的表的结构创建一张一样结构的表: create table PARA_CELL_W_HIS_EXCHANGE ( START_TIME D ...
- 备份oracle中的大表
2019独角兽企业重金招聘Python工程师标准>>> 将原标进行rename操作:RENAME loganalysis to loganalysis_bak; 压缩备份表:alte ...
- 在oracle创建一个联系人表,Oracle EBS R12 客户表结构
R12 客户表结构 客户表/联系人/PARTY关联 HZ_PARTIES 客户账户表 HZ_CUST_ACCOUNTS 例子: SELECT hp.party_number --客户注册标识 , hp ...
最新文章
- 使用UEFI模式安装win10中的格式化磁盘问题
- 登录mysql出现/var/lib/mysql/mysql.sock不存在
- 箭头标线的类型和面积
- Python报错:UnicodeDecodeError: 'gbk' codec can't decode byte 0xae in position 199: illegal multibyte s
- Linux 进程(二) 进程地址空间
- platform(win32) 错误
- Nginx的应用之动静分离
- Element-UI-快速入门(极简教程)
- text 两端对齐 小程序_小程序实现文字两端对齐
- hadoop报错 java home_hadoop的常见报错日志以及解决方案
- ubuntu之anaconda之编辑器
- Android NDK升级17后编译提示找不到mips64el-linux-android-strip
- SEO专题之四:如何合理有效选定关键字
- Atitit.增强系统稳定性----虚拟内存的设置
- C语言学习资料----快速排序
- 98版五笔字型实用学习教程
- 免费机器视觉视频教程halcon-百度网盘
- html5的geolocation 定位误差大的解决办法
- DataSourceClosedException: dataSource already closed
- 计算机硬盘中病毒吗,硬盘中病毒能格式化吗
热门文章
- ros通过程序的方式发布导航的目标点
- 解决Jmeter5.2.1插件管理器Plugins Manager下载插件异常问题
- uniapp在hbuilder上真机运行iphone6的解决方案
- comodo多域名通配符ssl证书与comodo通配符证书、多域名证书对比
- 信息学奥赛一本通 1383:刻录光盘(cdrom) | 洛谷 P2835 刻录光盘
- 标题系统架构师和程序员到底差别在哪里
- 基于SSH2框架Struts2拦截器的登录验证实现 来自菠萝大象
- Airbnb个性化推荐
- 没出货和人气可能问题在直播流程上
- 如何开启 TCP Fast Open 功能