1 疑问点

P1页有句话说道:

在Oracle 11.2.0.3.0以上版本中,创建新表时默认一个区都不会分配。

其实SYS用户是不遵循这个规则的。

2 环境创建

以版本11.2.0.4.0为例子。

2.1 创建用户

授权,创建表空间,更改默认表空间。

SYS@zkm1> create user zkm identified by oracle;

User created.

SYS@zkm1> grant dba to zkm;

Grant succeeded.

SYS@zkm1> create tablespace tbs1 datafile '+data' size 10m;

Tablespace created.

SYS@zkm1> alter user zkm default tablespace tbs1;

User altered.

2.2 创建表test

新的用户zkm和sys用户下均创建表test。

SYS@zkm1> create table test(id int);

Table created.

SYS@zkm1> create table zkm.test(id int);

Table created.

SYS@zkm1> desc test
Name Null? Type
----------------------------------------- -------- ----------------------------
ID NUMBER(38) SYS@zkm1> desc zkm.test
Name Null? Type
----------------------------------------- -------- ----------------------------
ID NUMBER(38)

2.3 查看表的段信息

可以看到用户sys的表没有遵循延迟段创建的规则。

SYS@zkm1> set linesize 500
SYS@zkm1> select owner,segment_name from dba_segments where owner in ('SYS','ZKM') and segment_name='TEST'; OWNER SEGMENT_NAME
------------------------------ ---------------------------------------------------------------------------------
SYS TEST SYS@zkm1> insert into zkm.test values(1); 1 row created. SYS@zkm1> select owner,segment_name from dba_segments where owner in ('SYS','ZKM') and segment_name='TEST'; OWNER SEGMENT_NAME
------------------------------ ---------------------------------------------------------------------------------
ZKM TEST
SYS TEST SYS@zkm1> commit; Commit complete.

2.4 延迟段创建相关参数

默认是启用的,可以动态修改为禁用后,只对修改后的表起作用。

对于已经延迟段创建并且还没有insert过数据的表,exp是不导出这些表的,expdp则不受影响。

SYS@zkm1> show parameter deferred_segment_creation

NAME                                 TYPE        VALUE
------------------------------------ ----------- ------------------------------
deferred_segment_creation boolean TRUE
SYS@zkm1> alter system set deferred_segment_creation=false sid='*' scope=both; System altered. SYS@zkm1> create table zkm.test1(id int); Table created. SYS@zkm1> select owner,segment_name from dba_segments where owner='ZKM' and segment_name='TEST1'; OWNER SEGMENT_NAME
------------------------------ ---------------------------------------------------------------------------------
ZKM TEST1

关于延迟段创建-P1的更多相关文章

  1. oracle 11g使用deferred_segment_creation 延迟段创建特性时遇到的问题总结

    总结,下面是两个问题.问题1是用户可以在所有表空间创建表;问题2是exp不能导出空表 问题1: 版本:oracle 11.2.0.1.0 select * from v$version; 创建用户aa ...

  2. Oracle 11g新特性延迟段创建和truncate的增强

    下面测试Oracle 11g开始的新特性truncate的增强和延迟段空间创建. Oracle从11g开始,当用户创建一张空表的时候不会先分配段和空间,只有当对这张表插入第一行数据的时候才分配段和空间 ...

  3. Oracle 11g新特性 -- 延迟段

    11gR2之前的版本中,当创建一张表时,会自动分配段空间,这样做有几个弊端: 1. 初始创建表时就需要分配空间,自然会占用一些时间,如果初始化多张表,这种影响就被放大. 2. 如果很多表开始的一段时间 ...

  4. ora-01658 :无法为表空间USERS 中的段创建INITIAL区

    "CREATE INDEX "IDX_TS_BONUS_Q_201209_DS" ON "TS_BONUS_Q_201209" ("DS&q ...

  5. oracle学习 四(持续更新中)无法为表空间 MAXDATA 中的段创建 INITIAL 区

    解决建立表的时候出现的 ORA-01658: 无法为表空间 MAXDATA 中的段创建 INITIAL 区 出现这个问题是因为表空间的大小不足,可以给他扩容这样的话也会多出来一个数据文件.具体写法如下 ...

  6. ORA-01658: 无法为表空间 YJXT 中的段创建 INITIAL 区

    oracle 用imp导入数据的时候报错:遇到ORACLE 错误1658: 无法为表空间 MAXDATA 中的段创建 INITIAL 区 解决办法:需要添加数据文件而不是新增表空间,代码如下: alt ...

  7. ora-01658: 无法为表空间*****中的段创建 INITIAL 区

    ora-01658: 无法为表空间*****中的段创建 INITIAL 区 原因:表空间不足 增大表空间.如果表空间动态增长,则扩大表空间的最大值.

  8. imp导入数据的时候报错:ORA-01658: 无法为表空间 MAXDATA 中的段创建 INITIAL 区

    在oracle里创建表,报出错: ORA-01658: 无法为表空间space中的段创建 INITIAL 区: 或者: ORA-01658: unable to create INITIAL exte ...

  9. ORA-01658无法为表空间中的段创建INITIAL区

    导出空表设置时,提示错误是: ORA-01658无法为表空间中的段创建INITIAL区 查找解决方案为 表空间已满    设置表空间自动增长 即可 例:  alter database datafil ...

随机推荐

  1. java实现第三届蓝桥杯数据压缩

    数据压缩 某工业监控设备不断发回采样数据.每个数据是一个整数(0到1000之间).各个数据间用空白字符(空格,TAB或回车换行)分隔.这些数据以文本形式被存储在文件中. 因为大多数时候,相邻的采样间隔 ...

  2. [原创][开源] SunnyUI.Net 系列文章目录

    SunnyUI.Net, 基于 C# .Net WinForm 开源控件库.工具类库.扩展类库.多页面开发框架 Blog: https://www.cnblogs.com/yhuse Gitee: h ...

  3. Vue —— VueX精讲(1)

    大纲 这一讲我们最主要的就是学习vue中的数据管理VueX,这个是一个大杀器 一.回顾一些Promise相关的东西 Promise 有几个比较重要的方法,最重要的还是有一个叫做all的方法,这个也是非 ...

  4. js循环练习

    var a=1; while(a>0){ var b=prompt('input number'); if(b>a){ alert('big'); } else if(b<a){ a ...

  5. Spark Streaming + Kafka Integration Guide原文翻译及解析

    前面写了关于kafka和spark streaming的结合使用(https://www.cnblogs.com/qfxydtk/p/11662591.html),其具体使用用法其实来自于原文:htt ...

  6. vue-toy: 200行代码模拟Vue实现

    vue-toy 200行左右代码模拟vue实现,视图渲染部分使用React来代替Snabbdom,欢迎Star. 项目地址:https://github.com/bplok20010/vue-toy ...

  7. foreach 集合又抛经典异常了,这次一定要刨根问底

    一:背景 1. 讲故事 最近同事在写一段业务逻辑的时候,程序跑起来总是报:集合已修改:可能无法执行枚举操作,硬是没有找到什么情况下会导致这个异常产生,就让我来找一下bug,其实这个异常在座的每个程序员 ...

  8. 安装elasticsearch的坑

    elasticsearch启动报“此时不应有 \Common 原因 Java 环境变量出错 解决 修改 elasticsearch.bat , 添加一句 : SET params='%*' SET J ...

  9. 使用Vim写LaTeX代码(Vim+Vimtex+Skim)

    最近在写博客的时候发现对数学公式的支持并不好,于是就想寻找一个解决方案.我本身是一个爱折腾的人,有时尽管有现成的解决方案我有事也不愿意去用.于是多方查找资料,想寻求一个自定义的解决方案,最终把自己的目 ...

  10. 果然学习好是有道理的,学习Mysql与正则表达式笔记

    正则表达式是用来匹配文本的特殊的字符集合,将一个正则表达式与文本串进行比较,Mysql中用where子句提供支持,正则表达式关键字:regexp1.使用‘|’匹配两个串中的一个 2.使用‘[]’匹配几 ...