当前位置:  数据库>oracle

Oracle表空间过大时候的处理

    来源: 互联网  发布时间:2017-06-20

    本文导语: 先查看Oracle所有表空间的数据使用情况 SELECT Upper(F.TABLESPACE_NAME) "表空间名", D.TOT_GROOTTE_MB "表空间大小(M)", D.TOT_GROOTTE_MB - F.TOTAL_BYTES "已使用空间(M)", To_char(Round(( D.TOT_GROOTTE_MB - F.TOTAL_BYTES ) / D.TOT...

先查看Oracle所有表空间的数据使用情况

SELECT Upper(F.TABLESPACE_NAME)         "表空间名",
       D.TOT_GROOTTE_MB                 "表空间大小(M)",
       D.TOT_GROOTTE_MB - F.TOTAL_BYTES "已使用空间(M)",
       To_char(Round(( D.TOT_GROOTTE_MB - F.TOTAL_BYTES ) / D.TOT_GROOTTE_MB * 100, 2), '990.99')
       || '%'                           "使用比",
       F.TOTAL_BYTES                    "空闲空间(M)",
       F.MAX_BYTES                      "最大块(M)"
FROM   (SELECT TABLESPACE_NAME,
               Round(Sum(BYTES) / ( 1024 * 1024 ), 2) TOTAL_BYTES,
               Round(Max(BYTES) / ( 1024 * 1024 ), 2) MAX_BYTES
        FROM   SYS.DBA_FREE_SPACE
        GROUP  BY TABLESPACE_NAME) F,
       (SELECT DD.TABLESPACE_NAME,
               Round(Sum(DD.BYTES) / ( 1024 * 1024 ), 2) TOT_GROOTTE_MB
        FROM   SYS.DBA_DATA_FILES DD
        GROUP  BY DD.TABLESPACE_NAME) D
WHERE  D.TABLESPACE_NAME = F.TABLESPACE_NAME
ORDER  BY 1

–查询使用空间比较大的前15个表

select a.*
   from(
    select owner,segment_name,SEGMENT_TYPE, round(bytes/1024/1024/1024,2) all_size
      from dba_segments
      where SEGMENT_TYPE='TABLE'
     order by  all_size desc
   ) a where rownum  show parameter  audit_trail 

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
audit_trail                          string      DB

—-最后直接处理

(1) truncate table aud$ ; 释放SYSTEM表空间的大小

SQL> alter table xx_xlog enable row movement;
Table altered


SQL> alter table xx_xlog shrink space compact;
Table altered


SQL> alter table xx_xlog shrink space;
Table altered

释放表所占用空间的大小

确认以下表清单为不用保留数据表

truncate table JXNCPC.XX_XLOG reuse storage; 
truncate table JXPC141224.XX_XLOG  reuse storage;
truncate table TEST001.XX_XLOG  reuse storage;
truncate table NCJXPC2013.XX_XLOG  reuse storage;
truncate table NCJXPC2014.XX_XLOG  reuse storage;
truncate table NCJXPCTEMP.XX_XLOG  reuse storage;
truncate table NCJXPCERP.XX_XLOG  reuse storage;


alter table JXNCPC.XX_XLOG enable row movement;
alter table JXPC141224.XX_XLOG enable row movement;
alter table TEST001.XX_XLOG enable row movement;
alter table NCJXPC2013.XX_XLOG  enable row movement;
alter table NCJXPC2014.XX_XLOG  enable row movement;
alter table NCJXPCTEMP.XX_XLOG  enable row movement;
alter table NCJXPCERP.XX_XLOG enable row movement;




alter table JXNCPC.XX_XLOG shrink space compact; 
alter table JXPC141224.XX_XLOG  shrink space compact;
alter table TEST001.XX_XLOG  shrink space compact;
alter table NCJXPC2013.XX_XLOG  shrink space compact;
alter table NCJXPC2014.XX_XLOG  shrink space compact;
alter table NCJXPCTEMP.XX_XLOG  shrink space compact;
alter table NCJXPCERP.XX_XLOG  shrink space compact;




alter table JXNCPC.XX_XLOG shrink space; 
alter table JXPC141224.XX_XLOG  shrink space;
alter table TEST001.XX_XLOG  shrink space;
alter table NCJXPC2013.XX_XLOG  shrink space;
alter table NCJXPC2014.XX_XLOG  shrink space;
alter table NCJXPCTEMP.XX_XLOG  shrink space;
alter table NCJXPCERP.XX_XLOG  shrink space;



----
truncate table JXNCPC.SM_OPERATELOG;
truncate table JXPC141224.SM_OPERATELOG; 
truncate table TEST001.SM_OPERATELOG;    
truncate table NCJXPCTEMP.SM_OPERATELOG;     
truncate table NCJXPCERP.SM_OPERATELOG;  
truncate table NCJXPC2013.SM_OPERATELOG;     
truncate table NCJXPC2014.SM_OPERATELOG;    

释放表存储空间


    
 
 

您可能感兴趣的文章:

  • 我在安装oracle的时候出现了这个错误,请懂行人赐教~~附图!~~
  • Oracle针对数据库某一行进行操作的时候,如何将这一行加行锁
  • Linux上管理本机Oracle的时候出现找不到ServiceName的错误
  • 在linux下装oracle9i到了最后时候,提示/tmp空间不够了,怎么增加,谢谢!
  • 安装oracle9的时候字符无法显示??
  • 为什么在编译java程序的时候出现oracle.jdbc.driver不存在?急!!!
  • RedHat AS 4 安装oracle9i的时候,执行Disk1下的runInstaller后提示正在初始化虚拟机,请等待后就再无反应
  • 用jsp + oracle开发时候的一个棘手问题,请帮忙!谢谢
  • 在Redhat7.2+Oracle8i如果硬件配置中用P4处理器,对oracle的安装有没有影响(100分)
  • Oracle控制文件多元化处理
  • 关于ORACLE中执行批处理的问题
  • oracle删除文件后数据库启动不了的处理方法
  • MS Server和Oracle中对NULL处理的一些细节差异
  • ORACLE DATAGUARD中手工处理日志v$archive_GAP的方法
  • Oracle 10g中用FIRALL处理非连续数组
  • 重新安装主机后ORACLE DB的处理
  • 轻轻松松学会在Oracle中实现时间相加处理
  • Linux系统下导出ORACLE数据库出现Exporting questionable statistics.错误 处理
  • 处理Oracle数据库中杀不掉的锁
  • oracle 11g导出数据时报ORA 1455错误的处理方法
  • redhat 下 oracle proc 预处理总是留下 tpXXXXXX 的临时文件
  • Oracle时间精确到时、分、秒处理方案
  • 一次Oracle故障处理过程
  • Oracle 插入超4000字节的CLOB字段的处理方法
  • Oracle 10g中用FORALL处理非连续数组
  • Oracle对于死锁的处理方法
  • Oracle中关于处理小数点位数的几个函数
  • SQL Server和Oracle并行处理比较分析
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • oracle查看表空间已分配和未分配空间的语句分享
  • shell脚本操作oracle删除表空间、创建表空间、删除用户
  • oracle 创建表空间步骤代码
  • oracle增加表空间大小两种实现方法
  • RedHat8上解压Oracle9磁盘丢失磁盘空间,请大虾帮忙!
  • ORACLE数据库空间整理心得
  • oracle9i 在 redhat7.3 上安装临时目录空间不够.
  • Oracle 10g创建表空间和用户并指定权限
  • Linux下Oracle传输表空间高手支招
  • Oracle释放undo表空间
  • oracle 创建表空间详细介绍
  • 查看修改Oracle10G归档日志空间的限制
  • [小技巧]手工扩大Oracle数据库表空间的方法
  • Oracle回滚段空间回收步骤
  • Oracle数据库手工扩大表空间的方法
  • Oracle tablespace表空间调整
  • 新手求助:RedHat安装oracle 11g 检测空间不足
  • HTML标签参考手册 iis7站长之家
  • Oracle 10g表空间创建的完整步骤
  • oracle表空间中空表统计方法示例介绍
  • Oracle 12c发布简单介绍及官方下载地址
  • 在linux下安装oracle,如何设置让oracle自动启动!也就是让oracle那个服务自动启动,不是手动的
  • oracle 11g最新版官方下载地址
  • 请问su oracle 和su - oracle有什么不同?
  • Oracle 数据库(oracle Database)Select 多表关联查询方式
  • 虚拟机装Oracle R12与Oracle10g
  • Oracle数据库(Oracle Database)体系结构及基本组成介绍
  • Oracle 数据库开发工具 Oracle SQL Developer
  • 如何设置让Oracle SQL Developer显示的时间包含时分秒
  • Oracle EBS R12 支持 Oracle Database 11g
  • Oracle 10g和Oracle 11g网格技术介绍


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3