码迷,mamicode.com
首页 > 其他好文 > 详细

11g参数之deferred_segment_creation

时间:2014-11-20 15:18:41      阅读:219      评论:0      收藏:0      [点我收藏+]

标签:blog   io   ar   使用   sp   数据   on   2014   log   

deferred_segment_creation   

布尔型

默认值为true

这个参数10gR2中是没有的,11g中才有

从字面意思也可以看出来,当这个参数设置为true时,当创建一个表的时候,不给它分配segment,即不分配空间,当向这个表中插入第一条数据的时候才开始分配segment。

设置为true的优点:在创建一系列表的时候,若事先已知许多表并没有数据,可以指定这个参数为true。这样可以节省空间,也可以增加建表速度。

缺点:使用exp导出的时候,不会导出没有segment分配的表。使用expdp可以导出空表。

查看该参数当前设置可以使用

show parameter deferred_segment_creation

这个参数可以动态修改,使用

alter system/session set deferred_segment_creation=true/false;

更改后,之前延迟分配segment的表并不会受到影响,仍然为空表。

查询某schema中所有未分配segment的表可以使用以下语句

select *
  from user_tables 
 where segment_created = 'NO'
若想为这些未分配segment的表分配空间,可以使用语句

select 'alter table ' || table_name || ' allocate extent;'
  from user_tables
 where segment_created = 'NO'

为所有空表分配segment,之后就可以进行exp导出了。

如果表插入数据后被truncate,则会保留segment。


11g参数之deferred_segment_creation

标签:blog   io   ar   使用   sp   数据   on   2014   log   

原文地址:http://blog.csdn.net/jx_jy/article/details/41311769

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!