`
wh870712
  • 浏览: 40333 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
文章分类
社区版块
存档分类
最新评论

表记录删除之后,表空间清理释放过程

阅读更多
以CMS的t_cms_send_content_log举例:

CMS_DATA表空间默认空闲:1015.0625
插入1W条数据之后,CMS_DATA空闲:1011.875,空间被占用:3.1875

1.采用delete操作删除表记录:
delete from  t_cms_send_content_log;
commit;
delete之后,表空间占用大小无变化,数据未释放
空间无变化,CMS_DATA空闲:1011.875,空间仍然被占用:3.1875

2.采用truncate table 操作删除表记录:
Truncate table   t_cms_send_content_log;
Truncate之后,表空间CMS_DATA 被释放,回复空闲到默认:1015.0625

3.进行表空间碎片整理
ALTER TABLESPACE CMS_DATA COALESCE;
ALTER TABLESPACE CMS_INDX COALESCE;
碎片整理之后,表空间占用没有变化

3.创建新的CMS_DATA_1、CMS_INDX_1表空间和原有表空间相同大小,将该表切换到新表空间,再切换回来。
(1)赋予CMS的dba操作权限:
(2)切换表所属空间,到新建表空间:
alter table t_cms_send_content_log move tablespace CMS_DATA_1;
执行:
select tablespace_name,sum(bytes)/1024/1024 from dba_free_space
    group by tablespace_name
CMS_DATA 目前空闲:1014.875,3.0的空间被释放。
CMS_DATA_1 空闲:1023.9375

(3)恢复到原有表空间:
alter table t_cms_send_content_log move tablespace CMS_DATA;
CMS_DATA 目前空闲:1014.8125,约3.0的空间被释放。
CMS_DATA_1 空闲:1023.9375

(4)重建索引
查看unusable 状态的索引,
select  *   from user_indexes where status = 'UNUSABLE';
重建查询结果中的索引
Alter index 索引名称 rebuild
Alter index 索引名称 UNUSABLE   --索引重置为不可用


结论:
1. 对无用日志表,全表删除记录时。建议采用truncate table进行操作。表空间可以得到即时释放。
2. 定期做表空间碎片整理
3. 通过切换表空间delete数据可以得到释放。


记录删除后,表空间依然没有释放,不能重用!
以下SQL命令可以释放删除后的空间:
truncate table tabname;
alter table tabname move tablespace tbsname;
alter index indname rebuild on tablespace tbsname;
或者exp后在imp


create table tnamenew as select * from tnameold;
truncate table tnameold;
insert into tnameold (select * from tnamenew);
分享到:
评论
1 楼 baeqiuzhu 2012-06-04  
我使用了一下 Truncate table   t_cms_send_content_log;把数据全部都删掉了 呜呜

相关推荐

    oracle定时删除表空间的数据并释放表空间

    本文将深入探讨如何在Oracle环境中实现定时删除表空间的数据并释放空间,主要涵盖以下几个关键知识点: 1. **Oracle 表空间(Tablespaces)**:表空间是Oracle数据库中存储数据的基本单位,它由一个或多个数据文件...

    空间清理软件

    【空间清理软件】是一种专为优化计算机存储空间而设计的应用程序。它的工作原理是通过智能扫描技术,系统地检查和分析计算机硬盘上的各个文件、文件夹以及软件的安装位置,以便用户能清晰地了解哪些资源占用了大量的...

    易语言历史记录清理

    易语言是一种专为中国人设计的编程语言,它以简体中文作为编程语句...通过学习和理解这些知识点,开发者可以构建出一个实用且安全的易语言历史记录清理工具,帮助用户释放存储空间,保护隐私,同时提高软件的使用效率。

    清理SQL Server日志释放文件空间的方法

    总之,清理SQL Server日志文件释放空间是一个需要谨慎操作的过程,涉及到数据库的恢复模式、日志备份和文件管理等多个方面。正确理解和运用这些知识,可以帮助我们更有效地管理和优化数据库的存储空间。

    最强历史记录清理工具

    清理历史记录的过程通常涉及到多次擦除,这是因为简单的删除操作并不能彻底消除数据。数据碎片可能仍然存在于硬盘上,通过专业工具仍有可能恢复。因此,“最强历史记录清理工具”采用安全的擦除算法,确保清理后的...

    易语言清理历史记录

    在实现这一功能时,易语言程序员需要考虑的细节包括错误处理(例如,如果清理过程中遇到无法删除的文件应如何处理)、资源管理(确保程序在清理后释放所有占用的资源)以及用户友好的交互设计。此外,为了提高效率,...

    删除空余文件,释放空间

    ### 删除空余文件,释放空间 在日常使用电脑的过程中,随着时间的推移,我们的电脑硬盘上会积累大量的临时文件、缓存文件以及其他不再使用的文件。这些文件不仅占用宝贵的磁盘空间,还可能导致系统运行速度变慢。...

    巧妙清理系统垃圾 磁盘空间释放方法全功略.docx

    【标题】: "巧妙清理系统垃圾 磁盘空间释放方法全功略" 【描述】: "本文档详细介绍了如何清理Windows操作系统中的垃圾文件,以释放磁盘空间,提高系统性能。" 【标签】: "磁盘清理", "系统优化", "Windows优化" *...

    清理QQ聊天记录和QQ信息小工具

    这款小工具的主要功能是帮助用户清理他们的QQ聊天记录和相关个人信息,以保护隐私或者释放存储空间。以下是关于这个工具及其涉及的技术点的详细说明: 首先,VB是一种基于事件驱动的编程语言,由微软公司开发,它...

    win7一键清除垃圾_bat批处理脚本_简单清理win7下的临时文件和缓存_

    在这个场景中,`win7一键清除垃圾.bat` 文件就是一个批处理脚本,用于自动清理Windows 7中的临时文件和缓存,从而释放磁盘空间,提升系统效率。 批处理脚本通常由一系列DOS命令组成,例如`del`, `rd`, `for`, `if`...

    U盘记录清理.zip

    U盘记录清理工具的主要作用是帮助用户删除U盘上的临时文件、系统日志、访问历史等信息,以保护隐私和优化存储空间。 描述中的“非常好用的U盘记录清理工具”提示我们,这个工具可能具有易用性高、清理效果显著的...

    清理C盘空间的20多种方法

    - **效果**:删除缓存、cookies、历史记录等,可以释放少量空间,并有助于保护隐私。 #### 2. 清除Outlook的临时文件 - **操作说明**:在使用Outlook打开附件时,文件会被临时存储在`OLK70`文件夹内,通常路径为`C:...

    VC清理历史记录小软件

    例如,清除浏览器缓存可以释放磁盘空间,减少因过多临时文件导致的系统缓慢。同时,删除不再需要的系统日志和应用日志,可以降低硬盘负担,提升系统响应速度。 在实际操作中,用户应定期运行这类软件,并注意保持...

    QQ聊天记录中的图片怎样清理.docx

    系统会快速扫描并删除所选聊天记录中的图片,释放出相应的硬盘空间。待清理过程完成后,会显示“清理完成”的提示,这时你可以点击“关闭”按钮,结束清理操作。 需要注意的是,执行此操作会永久删除指定聊天记录中...

    如何迅速清理C盘空间

    ### 如何迅速清理C盘空间 #### 知识点概览 本文主要介绍了针对Windows操作系统中C盘空间的快速清理方法。通过详细的操作步骤指导,帮助用户有效地释放C盘存储空间,进而提升系统的运行效率。文章涵盖了手动清理、...

    深层电脑痕迹清理 适合涉密场所使用

    7. **临时文件清理**:定期清理系统和应用程序产生的临时文件,释放磁盘空间,同时减少暴露信息的风险。 该工具的"保密检查"功能是其一大亮点,它能够按照特定的安全标准或政策,进行全面的隐私检查,确保符合保密...

    分析Sybase的数据空间占用为何如此之大

    **解决方法二**:通过执行`sp_spaceused`系统存储过程,可以检查特定表(如`PHONE_INFO`)以及整个数据库的空间使用情况。这样可以确定问题是否仅限于特定表,还是涉及到数据库的其他部分。根据结果,可能需要进一步...

    阿里云mysql空间清理的方法

    4. 释放空间:删除数据后,使用OPTIMIZE TABLE命令整理表空间,释放被删除数据占用的空间。 5. 监控磁盘空间:在清理过程中,实时监控磁盘空间的使用情况,确保有足够的空间来支持OPTIMIZE TABLE命令的执行。 6. ...

    DB2 归档日志清理

    7. **检查磁盘空间变化**:利用`df -h`命令来查看磁盘空间的变化情况,确认日志清理是否成功释放了足够的空间。 8. **启动应用服务器**:最后,通过`cisfe`账户或者进入bin目录执行`./cisfemainstart`命令重新启动...

    谈如何释放C盘空间27招具体优化技巧!.doc

    7. **删除系统备份文件**:通过命令行输入`sfc.exe /purgecache`来立即清除"Windows 文件保护"文件高速缓存,释放空间。 8. **删除不必要的DLL文件**:可以考虑删除`x:\windows\system32\dllcache`下的DLL文件,...

Global site tag (gtag.js) - Google Analytics