Oracle碎片拾掇全面解析(2)

来源:未知 责任编辑:责任编辑 发表时间:2014-01-26 22:01 点击:

  四、自由范畴的碎片拾掇

  表空间的 pctincrease 值为非 零

  可以将表空间的缺省储存参数 pctincrease 改成非 零 。正常将其设为 一 ,如:

  alter tablespace temp

  default storage(pctincrease 一);

  这么 SMON 便会将自由范畴自动归拢。也可以手工归拢自由范畴:

  alter tablespace temp coalesce;

  五、段的碎片拾掇

  我们晓得,段由范畴结成。在有点情况下,有必要对段的碎片开展拾掇。要查看段的相关信息,可查看数据字典 dba_segments ,范畴的信息可查看数据字典 dba_extents 。

  查询数据段

  select segment_name,tablespace_name,bytes,blocks from USER_EXTENTS;

  查询目录段

  select index_name,table_owner,table_name,tablespace_name from USER_EXTENTS;

  经过dba_segments查看段的信息

  select tablespacee_name,count(*) nobjects,round(sum(bytes)/1024/1204/1024.2) GB,sum(blocks),sum(extents) from

  dba_segments group by rollup(tablespace_name);

  如若段的碎片过剩,将其数据压缩到一个范畴的最简略步骤乃是用准确的储存参数将这个段重建,其后将旧表中的数据安插到新表,与此同时剔除旧表。这个进程可以用 Import/Export (输入 / 输出)工具来完成。

  Export ()下令有一个(压缩)标示,这个标示在读表时会挑动 Export 确定该表所分配的物理空间量,它会向输出转储资料写下一个新的初始化储存参数 -- 即是所有所分配空间。若这个表封闭, 则施用 Import ()工具从新生成。这么,它的数据会放入一个新的、较大的初始段中。比如:

  exp user/passWord file=exp.dmp comPRess=Y grants=Y indexes=Y

  tables=(table一,table二);

  若输出顺利,则从库中剔除已输出的表,其后从输出转储资料中输入表:

  imp user/password file=exp.dmp commit=Y buffer=64000 full=Y

发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
用户名: 验证码:点击我更换图片
最新评论 更多>>

推荐热点

  • Table函数使用简介
  • Oracle数据库Constraint约束的常用操作及异常处理
  • Bulk Collect性能分析(zz)
  • export/import的使用
  • OCP043第十五讲 Database Security
  • ORACLE10gr2数据导入MySQL方案
  • oracle 让sys用户可以使用isqlplus
  • 在oracle数据库下使用iSQL*Plus DBA访问数据库
  • Oracle行列转换小结
网站首页 - 友情链接 - 网站地图 - TAG标签 - RSS订阅 - 内容搜索
Copyright © 2008-2015 计算机技术学习交流网. 版权所有

豫ICP备11007008号-1