Oracle数据库数据恢复、性能优化

找回密码
注册
搜索
热搜: 活动 交友 discuz
发新帖

9

积分

0

好友

0

主题
1#
发表于 2012-8-9 22:06:35 | 查看: 4528| 回复: 3
关于空间回收请教
1.shrink space和move哪个更适合业务在线操作?2.alter table t1 deallocate unused 看文章,说是收缩HWM上面的未使用空间,不太理解,谁能给举个例子。
谢谢。
2#
发表于 2012-8-10 11:53:31
shrink space 更适合业务在线操作,不会导致业务中断;而move将会导致索引失效,并且你可能需要再次move回来,因为你不可能随便的将表移出原来的表空间吧;

至于 deallocate unused,自己动手做下试验就知道了。
比如手工分配之后alter table gtlions.text allocate extent;
alter table  gtlions.text deallocate unused;
使用此命令回收空间可以释放区内未使用的空间,但是频繁使用此命令可能会导致数据文件中产生碎片, 若要避免出现此问题 请为表空间设置MINIMUM EXTENT。

回复 只看该作者 道具 举报

3#
发表于 2012-8-10 11:58:14
可以通过以下脚本观察试验步骤(第3个回收试验)
  1. Select File_Id, Count(*) As Extents, Sum(Blocks) As Blocks
  2.   From Dba_Extents
  3. Where Owner = 'GTLIONS' And segment_name='EMP'
  4. Group By File_Id;
复制代码

回复 只看该作者 道具 举报

4#
发表于 2012-8-10 19:49:58
谢谢GT的释疑。

回复 只看该作者 道具 举报

您需要登录后才可以回帖 登录 | 注册

QQ|手机版|Archiver|Oracle数据库数据恢复、性能优化

GMT+8, 2024-11-16 02:26 , Processed in 0.071760 second(s), 21 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部
TEL/電話+86 13764045638
Email service@parnassusdata.com
QQ 47079569