ITPUB论坛

 找回密码
 注册

QQ登录

只需一步,快速开始

返回列表 发新帖
更多
查看: 5674|回复: 61

system如何才能变小? [复制链接]

注册会员

快乐的野猪

精华贴数
0
技术积分
520
社区积分
4
注册时间
2006-9-13
论坛徽章:
0
发表于 2007-2-9 11:26:06 |显示全部楼层
我的杀千刀前任,将所有用户表都建立在System表空间了,现在System长到30G。
我尝试删除了一个大小8G的表的数据,令我奇怪的是,在控制台看到System表空间的used space仍旧是30G!
而在user表空间删除一个2G的表的数据,user表空间的used space立刻缩小2G。
请问,System表空间如何才能变小啊?

注册会员

龙战於野,其血玄黄

精华贴数
1
技术积分
6494
社区积分
283
注册时间
2006-8-28
论坛徽章:
21
蛋疼蛋
日期:2011-09-02 08:49:42
发表于 2007-2-9 11:29:58 |显示全部楼层
可能是空间没有释放
能重启不?~

呵呵 不过你那个前任也挺牛~厉害!

使用道具 举报

注册会员

高级会员

精华贴数
1
技术积分
5405
社区积分
81
注册时间
2006-5-18
论坛徽章:
19
生肖徽章:羊
日期:2006-09-06 21:18:482012新春纪念徽章
日期:2012-01-04 11:51:22ITPUB十周年纪念徽章
日期:2011-11-01 16:21:15CTO参与奖
日期:2009-02-12 11:45:48生肖徽章2007版:龙
日期:2008-12-16 14:04:412008北京奥运纪念徽章:篮球
日期:2008-10-24 13:29:382008北京奥运纪念徽章:沙滩排球
日期:2008-07-02 12:09:31生肖徽章2007版:鼠
日期:2008-01-02 17:35:53ITPUB新首页上线纪念徽章
日期:2007-10-20 08:38:44会员2007贡献徽章
日期:2007-09-26 18:42:10生肖徽章:虎
日期:2006-11-07 15:26:15生肖徽章:龙
日期:2006-09-07 17:01:36
发表于 2007-2-9 11:44:09 |显示全部楼层
如果在系统表空间加了用户数据后又产生了字典基表的数据量,这些数据就有可能放在系统表空间所在数据文件的后部分,这样的话即使你把原来的用户表drop或move,那么即使系统表空间实用百分比降下来也没法使手动让系统表空间所在数据文件收缩,move系统表又是危险的,所以如果可以停机是否考虑导出重建库,不过也许有更好的办法的,大家来谈

使用道具 举报

注册会员

快乐的野猪

精华贴数
0
技术积分
520
社区积分
4
注册时间
2006-9-13
论坛徽章:
0
发表于 2007-2-9 16:10:34 |显示全部楼层
天啦,求更好方法,还望各位老大救命啊!

使用道具 举报

注册会员

快乐的野猪

精华贴数
0
技术积分
520
社区积分
4
注册时间
2006-9-13
论坛徽章:
0
发表于 2007-2-14 09:42:10 |显示全部楼层
这个问题是这样的,由于system01.dbf是自动扩展的,所以不知道什么时候,这个表空间变的非常大了,而且后来我们对部分垃圾数据进行了清除。现在我们可以查到的信息是有两个block_id很大的block存在,在这两个block的block_id到密集区最大的block_id之间空闲了大量的物理空间,但是因为他们非常靠后,我们没有办法缩小这个表空间了。
我认为: 解决方案是把占用这两个block的表移到其他数据文件或者往前移,该如何实现呢?
高手哪里去了!

使用道具 举报

注册会员

老耿(OCM)

精华贴数
3
技术积分
7232
社区积分
179
注册时间
2004-8-28
论坛徽章:
19
数据库板块每日发贴之星
日期:2006-09-04 01:02:512011新春纪念徽章
日期:2011-02-18 11:43:352010新春纪念徽章
日期:2010-01-04 08:33:08生肖徽章2007版:虎
日期:2009-08-12 13:08:002009日食纪念
日期:2009-07-22 09:30:002009新春纪念徽章
日期:2009-01-04 14:52:28ITPUB新首页上线纪念徽章
日期:2007-10-20 08:38:44会员2007贡献徽章
日期:2007-09-26 18:42:10授权会员
日期:2006-11-24 16:34:00数据库板块每日发贴之星
日期:2006-09-29 01:03:17数据库板块每日发贴之星
日期:2006-09-28 01:02:21数据库板块每日发贴之星
日期:2006-09-22 01:04:01
发表于 2007-2-14 10:31:50 |显示全部楼层
没试过,不过你可以试一下,
alter table xxx move;
重建该表索引
alter index xyz rebuild;

使用道具 举报

注册会员

快乐的野猪

精华贴数
0
技术积分
520
社区积分
4
注册时间
2006-9-13
论坛徽章:
0
发表于 2007-2-14 10:37:47 |显示全部楼层
该作的都作了,现在是查到system表空间末尾有系统数据,所以不能回收
但是实际数据只有500M,现在它有10G大啊,如何把末尾的数据迁移或者前移,然后再回收个9G free space回来呢?大老们,没有办法吗?

使用道具 举报

注册会员

资深会员

精华贴数
0
技术积分
1792
社区积分
18
注册时间
2004-2-22
论坛徽章:
19
数据库板块每日发贴之星
日期:2006-03-21 01:01:20生肖徽章2007版:猴
日期:2008-01-02 17:35:53生肖徽章2007版:鸡
日期:2008-01-02 17:35:53会员2007贡献徽章
日期:2007-09-26 18:42:10生肖徽章:猪
日期:2007-05-22 13:44:25生肖徽章:狗
日期:2007-05-22 13:44:08生肖徽章:鸡
日期:2007-05-22 13:43:55生肖徽章:猴
日期:2007-05-22 13:43:41生肖徽章:羊
日期:2007-05-22 13:43:25生肖徽章:马
日期:2007-05-22 13:43:08生肖徽章:蛇
日期:2007-05-22 13:42:54生肖徽章:龙
日期:2007-05-22 13:42:39
发表于 2007-2-14 10:38:37 |显示全部楼层
在删除表数据的时候采用truncate
然后resize system表空间

使用道具 举报

注册会员

中级会员

精华贴数
0
技术积分
418
社区积分
1
注册时间
2005-3-3
论坛徽章:
0
发表于 2007-2-14 10:39:43 |显示全部楼层

这样行不?

exp
create database
imp

使用道具 举报

注册会员

快乐的野猪

精华贴数
0
技术积分
520
社区积分
4
注册时间
2006-9-13
论坛徽章:
0
发表于 2007-2-14 10:44:37 |显示全部楼层
exp
create database
imp
重建数据库当然行,但是不要忘记我是几百G的生产数据库,停机一天我申请不到啊。
有经验吗?如何不停机就可以回收system表空10G呢?

使用道具 举报

相关内容推荐
您需要登录后才可以回帖 登录 | 注册

TOP技术积分榜 社区积分榜 徽章 电子杂志 团队 统计 邮箱 虎吧 老博客 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档 | IT博客
CopyRight 1999-2011 itpub.net All Right Reserved. 北京皓辰网域网络信息技术有限公司版权所有 联系我们 网站律师 隐私政策 知识产权声明
京ICP证:060528号 北京市公安局海淀分局网监中心备案编号:1101082001 广播电视节目制作经营许可证:编号(京)字第1149号
  
回顶部