ITPub博客

首页 > 数据库 > Oracle > Oracle之清理sysaux表空间数据(暴力)

Oracle之清理sysaux表空间数据(暴力)

原创 Oracle 作者:wzgchen 时间:2016-06-12 09:53:03 0 删除 编辑
查看在sysaux表空间中数据比较大的表:
select * from (select segment_name,PARTITION_NAME,segment_type,bytes/1024/1024 from dba_segments where tablespace_name='SYSAUX'  order by 4 desc)  where  rownum<=10;

查看要删除的表:
select table_name, num_rows from dba_tables where table_name in (select table_name from dba_tab_columns where COLUMN_NAME='SNAP_ID' and table_name like 'WRH$%') and num_rows>10000;


删除表:
begin
  for  v in 1..100  loop
  delete from  sys.WRH$_PARAMETER partition(WRH$_PARAME_3307383158_0) p where p.snap_id<=15182 and rownum<10001;
  commit;
  end loop;
  commit;
end;
/


select count(1),min(snap_id),max(snap_id) from WRH$_EVENT_HISTOGRAM ;

来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/91975/viewspace-2118773/ ,如需转载,请注明出处,否则将追究法律责任。

下一篇: MegaCLI Scripts
请登录后发表评论 登录
全部评论

注册时间:2015-05-01

  • 博文量
    383
  • 访问量
    213568