deferred_segment_creation 参数

一、导入时少表

    1.Oracle 11g EXP导出,再IMP导入时,发现导入后,出现少表,有一些数据为空的表结构没有被导入,原因是于导出时,这些空表没有被导出。

二、查阅资料

   1.从网上翻看各类资料,产生“导入时少表”的原因,在于Oracle 11g 的参数  “deferred_segment_creation”。

   2.”deferred_segment_creation”参数

       ①从字面上的意思“延迟段创建”,在oracle11g中,创建了一个数据表,如果刚刚创建出来的时候没有数据加入,Oracle不会创建对应的‘段’结构,也就不会分配对应的空间,Oracle 11g版本之前的版本(oracle 10g\oracle 9i),数据表创建的同时,就发生了空间的Segment分配的过程。

       ②作用:节省对象空间大小。

       ③默认值:‘true’,安装oracle11g之后,此参数的默认为打开状态。

       ④查看参数的方法:

SQL>show parameter deferred_segment_creation;
       NAME                                 TYPE        VALUE
-------------------------------    ----------- ------------------------------
deferred_segment_creation            boolean     TRUE

       ⑤配置参数为‘false’:

             alter system set  deferred_segment_creation=false;

            参数修改之后,只会对这之后的创建表有影响(无论空表还是非空表都会分配segment),之前已经存在的表都不会改变。

       ⑥更改受参数影响的表

            1)select ‘alter  table  ’||table_name||  ‘allocate extent ;’  from  user_tables   where num_rows=0 ;得出 ‘'alter table 表名  allocate extent;”语句。

            2)执行‘'alter table 表名  allocate extent;”语句。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/8043290/viewspace-1661496/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/8043290/viewspace-1661496/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值