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实现蓝桥杯VIP算法训练 预测身高

    试题 算法训练 预测身高 资源限制 时间限制:1.0s 内存限制:256.0MB 问题描述: 生理卫生老师在课堂上娓娓道来: 你能看见你未来的样子吗?显然不能.但你能预测自己成年后的身高,有公式: 男 ...

  2. java实现矩形区域的交和并

    在编写图形界面软件的时候,经常会遇到处理两个矩形的关系. 如图[1.jpg]所示,矩形的交集指的是:两个矩形重叠区的矩形,当然也可能不存在(参看[2.jpg]).两个矩形的并集指的是:能包含这两个矩形 ...

  3. java代码(12) ---CollectionUtils工具类

    CollectionUtils工具类 CollectionUtils工具类是在apache下的,而不是springframework下的CollectionUtils 个人觉得在真实项目中Collec ...

  4. Navicat 连接远程服务器端MySQL

    Navicat是一个很好的操作各种数据库的图形化工具,我用它在本地连接过MySQL.SQL Server.SQLite,用它操作数据库确实非常方便.快捷,再搭配SQL语句,是一个很好的选择了. 废话不 ...

  5. Liunx常用运维命令整理记录

    前言 作为后端开发者,掌握一些常用的运维命令也是很有必要的,本文记录常用Liunx运维命令 基本命令 目录切换 cd base-admin/ 切换到当前目录下的base-admin目录 cd .. 切 ...

  6. ElasticSearch系列之(一):介绍、安装(Docker、Windows、Linux)

    1.介绍 Elasticsearch是一个基于Lucene的搜索服务器.它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口.Elasticsearch是用Java语言开发的,并 ...

  7. 性能测试之 JVM 概念认识

    无论什么语言,在程序运行过程中,都需要对内存进行管理,要知道计算机/服务器的内存不是无限的.例如:C语言中需要对对象的内存负责,需要用delete/free来释放对象:那JAVA中,对象的内存管理是由 ...

  8. Vue封装公共组件TarBar

    github:https://github.com/zwnsyw/TabBar 一.实现简单思路 1.在页面底部有一个单独的TabBar组件1.1自定义TabBar组件,在APP中使用1.2让TabB ...

  9. Spring Cloud 系列之 Alibaba Nacos 注册中心(一)

    前言 从本章节开始,我们学习 Spring Cloud Alibaba 相关微服务组件. Spring Cloud Alibaba 介绍 Spring Cloud Alibaba 致力于提供微服务开发 ...

  10. 1.react的基础

    1.react:专注于UI得一个js库 2.选择使用框架得原因: 写起来简单方便了,但是从稳定性上考虑得话还是原生js要稳定,所以也有很多公司直接使用原生js,但是从开发周期上来说时间会长 之前再写页 ...