免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
12下一页
最近访问板块 发新帖
查看: 5936 | 回复: 11

减少表空间占用 [复制链接]

论坛徽章:
0
发表于 2010-05-25 10:30 |显示全部楼层
当前数据量大小在3g左右,原来分配的表空间是5g;在一次调度任务中发生了意外的错误,写了大量的系统日志,表空间被自动增长到了9g左右。对数据进行了清理,目前的数据量依然保持在3g左右(在非压缩的情况下备份出来的数据大小就是3g),但恢复数据到另外一台服务器,必须分配9g以上的表空间,否则会提示表空间不足。也就是说3g的表空间分布在了9g的表空间中,产生了碎片?
现在想做的事情是:对碎片尽心压缩,将占用的表空间调回到5g一下,怎么做?

论坛徽章:
59
2015七夕节徽章
日期:2015-08-24 11:17:25ChinaUnix专家徽章
日期:2015-07-20 09:19:30每周论坛发贴之星
日期:2015-07-20 09:19:42ChinaUnix元老
日期:2015-07-20 11:04:38荣誉版主
日期:2015-07-20 11:05:19巳蛇
日期:2015-07-20 11:05:26CU十二周年纪念徽章
日期:2015-07-20 11:05:27IT运维版块每日发帖之星
日期:2015-07-20 11:05:34操作系统版块每日发帖之星
日期:2015-07-20 11:05:36程序设计版块每日发帖之星
日期:2015-07-20 11:05:40数据库技术版块每日发帖之星
日期:2015-07-20 11:05:432015年辞旧岁徽章
日期:2015-07-20 11:05:44
发表于 2010-05-25 10:49 |显示全部楼层
使用企业管理器可能对表空间进行压缩处理 。

论坛徽章:
0
发表于 2010-05-25 12:43 |显示全部楼层
使用企业管理器可能对表空间进行压缩处理 。
renxiao2003 发表于 2010-05-25 10:49


怎么调,能否说详细一点?

论坛徽章:
0
发表于 2010-05-25 13:12 |显示全部楼层
表空间可以resize的,网上搜索一下

论坛徽章:
0
发表于 2010-05-25 13:23 |显示全部楼层
表空间可以resize的,网上搜索一下
dream_land 发表于 2010-05-25 13:12



我resize的时候报错说:ORA-27059 无法减小文件大小 O/S-ErrorOS 112) 磁盘空间不足。

对于我的问题,我的理解是存储的文件被分散到了9g的表空间上,我首先需要做的是进行碎片整理,就如同windows的磁盘碎片整理一样,然后才是resize表空间,不知道我的理解对不对、Oracle是不是这样的解决思路?

论坛徽章:
59
2015七夕节徽章
日期:2015-08-24 11:17:25ChinaUnix专家徽章
日期:2015-07-20 09:19:30每周论坛发贴之星
日期:2015-07-20 09:19:42ChinaUnix元老
日期:2015-07-20 11:04:38荣誉版主
日期:2015-07-20 11:05:19巳蛇
日期:2015-07-20 11:05:26CU十二周年纪念徽章
日期:2015-07-20 11:05:27IT运维版块每日发帖之星
日期:2015-07-20 11:05:34操作系统版块每日发帖之星
日期:2015-07-20 11:05:36程序设计版块每日发帖之星
日期:2015-07-20 11:05:40数据库技术版块每日发帖之星
日期:2015-07-20 11:05:432015年辞旧岁徽章
日期:2015-07-20 11:05:44
发表于 2010-05-25 14:41 |显示全部楼层
打开企业管理器。进入表空间管理,然后对表空间容量进行管理。

论坛徽章:
0
发表于 2010-05-25 15:33 |显示全部楼层
打开企业管理器。进入表空间管理,然后对表空间容量进行管理。
renxiao2003 发表于 2010-05-25 14:41


感谢回复,依照你的提示,那里确实可以修改。不过看到我的表空间占用率是90%。但实际上我的数据量就3g多,而表空间的总容量是9g。

论坛徽章:
0
发表于 2010-05-26 09:25 |显示全部楼层
table & index 已经extended,所以即使清理了(delete)数据,table & index占用的extent都不会释放,
rebuild index会减少index使用的extent,table可以shrink一下,但table要做得彻底的话,只有exp-truncate table-imp

论坛徽章:
0
发表于 2010-05-26 09:34 |显示全部楼层
再补充一下:
这样处理完也不可能缩小到3G,
1. exp时,index只是一个语句,所以dump文件的大小与index无关
2.tablespace的缩小,要看extent的分布,即使数据只有3G,但有一个extent在文件的最后,那么datafile也是无法缩小的
所以针对LZ的问题,数据要移到另一台服务器上,建议用exp-imp的方式

论坛徽章:
0
发表于 2010-05-28 10:13 |显示全部楼层
被使用过的表空间即使表或索引删除了也不会释放的吧?
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP