欢迎来到Doc100.Net免费学习资源知识分享平台!
您的位置:首页 > 程序异常 >

oracle 大数据量备份跟清理

更新时间: 2014-01-05 02:10:05 责任编辑: Author_N1

 

Oracle 大数据量备份和清理
问题是这样的,有一张表,存量20亿,事实上,有10亿的数据是不会被查询到的,但是又不能说直接删掉这10亿条记录。所以,这里就涉及到两个问题:
1、10亿的记录怎么做备份比较好?
2、10亿的记录怎么做删除比较好?

首先,同一个磁盘空间上,不具备一次性备份10亿的存储空间,肯定需要分多次备份。

我现在考虑到的问题

1、删除10亿的数据,会产生归档日志。如果要关闭归档模式,好像是需要重启数据库?
2、备份10亿数据,比较好的参考方式:expdb。另外两种exp和spool方式,只能作为备用。
3、有同学推荐使用goldengate软件工具。这个工具,是否比expdb效率更高?


大侠们,出来吧!20亿的数据量,是不是很刺激?来玩一下吧……

至于为什么要设计一个单表来存储20多亿的数据,就不要嘲笑了,我也想不明白当时的设计者是不是诚心的……

--参考方法--
可否分区解决?
--参考方法--
另外加磁盘空间,加数据库文件,加表空间,加表,再把数据导过去,再把本表数据删掉
其实只要空间,你慢慢导过去应该不是问题
--参考方法--
http://blog.csdn.net/yuzhenhuan01/article/details/6620853

看看这个对你是否有用吧
--参考方法--
1:创建一个新的分区表

2:设置新表,原表分别 nologging
alter table tablename no logging;

3:insert into 新表;

insert 可以分批写入到新表

delete from 原表的数据。

4:然后原表,新表 恢复logging;
alter table  tablename logging;
上一篇:上一篇
下一篇:下一篇

 

随机推荐程序问答结果

 

 

如对文章有任何疑问请提交到问题反馈,或者您对内容不满意,请您反馈给我们DOC100.NET论坛发贴求解。
DOC100.NET资源网,机器学习分类整理更新日期::2014-01-05 02:10:05
如需转载,请注明文章出处和来源网址:http://www.doc100.net/bugs/t/6421/
本文WWW.DOC100.NET DOC100.NET版权所有。