设为首页 加入收藏

TOP

Oracle中deferred_segment_creation的用法以及exp时解决办法
2015-07-24 11:48:18 来源: 作者: 【 】 浏览:4
Tags:Oracle deferred_segment_creation 用法 以及 exp 解决 办法

SYS@ORCL>show parameter segment

NAME TYPE VALUE
------------------------------------ ----------- ------------------------------
deferred_segment_creation boolean TRUE
rollback_segments string
transactions_per_rollback_segment integer 5

deferred_segment_creation参数,在11.2.0.4g才有的参数,
创建一个表,在没有插入数据时是否分配空间,为true时,不分配空间,但在sys用户下不支持;
deferred_segment_creation=ture;
1.在sys用户下,创建一个没有数据的表时,同时自动分配空间;
2.在普通用户下,创建一个没有数据的表时,不会分配空间;

查看sql语句,是否已经分配空间;
select dbms_metadata.get_ddl('TABLE','T1') from dual;
--设置输出格式(set long 99999)

deferred_segment_creation在11.2.0.4版本的Oracle数据库新增参数,默认是true。

这会导致在exp时,没有segment的对象不会导出。

解决:

(1)设置deferred_segment_creation的值为false
此方法只对以后的表有效,之前的表还是没分配空间。

(2) 创建表的时候声明立即创建Segment

create table table_name segment creation immediate;

(3)对于已经创建但是还没有Segment的表来说,
可以执行alter table table_name allocate extent来使其创建出分配空间,
当然也可以插入一条数据,使其创建分配空间;

】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇Oracle事务原理探究2--读书笔记五 下一篇Oracle性能分析11:系统统计信息

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·Announcing October (2025-12-24 15:18:16)
·MySQL有什么推荐的学 (2025-12-24 15:18:13)
·到底应该用MySQL还是 (2025-12-24 15:18:11)
·进入Linux世界大门的 (2025-12-24 14:51:47)
·Download Linux | Li (2025-12-24 14:51:44)