今天在公司中碰到访问表数据(test 表)速度非常慢,简单的一个select 语句花了10多分钟, 后来查询一下表的数据量,一共有278万多条数据,而且这个数据表的数据大都过期了,对于现在的业务没什么用。可悲的是这个表竟然也没做分区,也许是前人设计时欠缺了考虑。因为这个表的访问非常频繁,适成的整个系统卡住的现象,必须马上解决。当然解决的办法就是把没用的过期的数据删除掉,但是表的数据量这么大,直接delete掉过期的数据行肯定要花很多时间,而且也会产生很多不必要的undo,redo信息。

所以我采用 create table test_temp as select * from test t where t.add_data >= '20100817000000', 这样重新建立一个表test_temp只保存最近一天的数据也就几十条而已,然后重命名原来test表为testold表,表test_temp为test表,,再把相关的存储过程,存储函数重新编译一下,并重新建立索引,做表分析,删除原来testold表。 哇,大功告成,访问速度快了。不过,后来发现这个做法产生了两个问题:

1. test_temp表直接建立在默认的system表空间,这是非常不好的,所以采用这种方法记得指定表空间,语法如下: create table T tablespace ts as ........(ts为指定的表空间)

2.原来test表里面的一个约束可能不会移动test_temp表上,比如字段默认值,这个就可能对现在系统DML操作造成影响,所以一定要记住检查一下各个约束,对加上约束。笔者就是出现这个情况,导致部份DML失败。

转载于:https://www.cnblogs.com/kundij/archive/2010/08/18/1802019.html

oracle删除大表的数据的方法相关推荐

  1. [原]Oracle删除大表并回收空间的过程

    近日在查询某项日志的时候,发现查询非常缓慢,根据以往的经验这是由于某个日志表过大引起的,为了加快查询,决定将大部分的历史数据迁移到另外一个表中,本文主要记录删除这个大表的过程,就解决问题而言还有很多方 ...

  2. oracle的删除的row如何,Oracle 删除大表中部分数据

    需求: 项目中有一张表大概有7000多万条数据,造成表空间已满,需要清理部分数据,打算清理3000万. 2B 做法: delete from table_name where ID > '400 ...

  3. mysql快速删除大表数据部分数据_mysql删除大表的部分数据

    mysql删除大表的部分数据 好久没写博客.最近项目要上线.下班时间还得陪着老妈.实在没时间更新. 今天有人提了一个问题,  www.2cto.com 一个表有1亿6000万的数据,有一个自增ID.最 ...

  4. MySQL删除或清空表内数据的方法

    MySQL删除或清空表内数据的方法 一.使用MySQL清空表数据命令:truncate SQL语法为: truncate table 表名 注意: truncate该命令会直接将数据表内数据清空: t ...

  5. MySQL删除或清空表中数据的方法

    原标题:MySQL删除或清空表中数据的方法 要想把MySQL中的数据删除或清空,可以通过两种方法来实现:DELETE语句和TRUNCATE TABLE语句. DELETE语句可以将表中所有记录都删除, ...

  6. mysql删除表中所有数据_MySQL删除或清空表中数据的方法

    原标题:MySQL删除或清空表中数据的方法 要想把MySQL中的数据删除或清空,可以通过两种方法来实现:DELETE语句和TRUNCATE TABLE语句. DELETE语句可以将表中所有记录都删除, ...

  7. oracle两张表 比较好,比较Oracle两张表的数据是否一样

    比较Oracle两张表的数据是否一样 爱搞机 2008-10-21 11:00 在某些情况下,我们会需要比较两张表的数据是否一样. 假设有两张表A与表B他的字段相同,但是当中的数据可能不同,而且有些字 ...

  8. mysql数据库truncate 夯住_MySQL如何优雅的删除大表实例详解

    前言 删除表,大家下意识想到的命令可能是直接使用DROP TABLE "表名",这是初生牛犊的做法,因为当要删除的表达空间到几十G,甚至是几百G的表时候.这样一条命令下去,MySQ ...

  9. mysql 大表 备份_MySQL大表备份的简单方法

    MySQL大表备份是一个我们常见的问题,下面就为您介绍一个MySQL大表备份的简单方法,希望对您学习MySQL大表备份方面能有所帮助. 这里所说的大表是超过4G以上的表,我目前见到过最大为60多G的单 ...

最新文章

  1. 函数||值传递||函数的常见样式||函数的声明||函数的分文件编写
  2. TK:vtkCellTreeLocator用法实战
  3. 概念设计师凌云:《蜘蛛侠:平行宇宙》和《证人》美术浅析
  4. 2018/3/1 省选模拟考试 50分
  5. 【广搜】Keyboarding
  6. java激光推送ios_关于ios极光推送server端注意的地方
  7. python函数的嵌套和递归_Python通过递归函数输出嵌套列表元素
  8. 跨境电商shopify独立站如何引流量
  9. Ubuntu18.04LTS搭建nodejs环境和webStorm
  10. WIN2003 IIS6.0+PHP+ASP+MYSQL优化配置
  11. 动态规划入门G - Super Jumping! Jumping! Jumping! (有关最优子序列的一个相关题目)...
  12. session和cookie的内部原理
  13. SPSS22.0简体中文破解版(32位/64位)使用方法
  14. Unit3D--人机交互入门
  15. html上下两个箭头符号怎么打出来,双横向箭头符号怎么打,双横向箭头符号怎么打...
  16. 职业理想规划计算机专业,计算机专业的职业生涯规划书范文
  17. numpy和pandas简单使用
  18. 备份 mysql 数据库
  19. 探究文件上传安全:upload-labs靶场的绕过技巧
  20. SublimeText——快捷键

热门文章

  1. Java项目:宿舍寝室维修上报管理系统(java+SpringBoot+FreeMarker+Mysql)
  2. 如何用计算机求锐角三角比,9.3用计算器求锐角三角比教学案
  3. Angular应用开发中遇到的问题
  4. 《深入理解计算机系统》第十章——系统级I/0
  5. vue中点击第一次没有触发按钮怎么操作_vue如何触发某个元素的单击事件?
  6. UIActivityViewController使用
  7. 基于Vue的小日历(支持按周切换)
  8. a different object with the same identifier value was already associated with the session
  9. sdut AOE网上的关键路径(spfa+前向星)
  10. ie和firefox操作table对象的异同