[20131109]deferred segment creation与12c的exp命令.txt

[20131109]deferred segment creation与12c的exp命令.txt

参考链接:http://space.itpub.net/267265/viewspace-713311

昨天想导出一些数据在自己的12c测试环境,发现具有段延迟建立特性的表使用exp也能导出。

例子如下:
SCOTT@test01p> @ver
BANNER                                                                               CON_ID
-------------------------------------------------------------------------------- ----------
Oracle Database 12c Enterprise Edition Release 12.1.0.1.0 - 64bit Production              0

SCOTT@test01p> create table t ( a number);
Table created.

SCOTT@test01p> select DBMS_METADATA.get_ddl ('TABLE','T') from dual;
DBMS_METADATA.GET_DDL('TABLE','T')
-------------------------------------------------------------------------

  CREATE TABLE "SCOTT"."T"
   (    "A" NUMBER
   ) SEGMENT CREATION DEFERRED
  PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255
 NOCOMPRESS LOGGING
  TABLESPACE "USERS"

--SEGMENT CREATION DEFERRED说明表具有段延迟建立特性。

d:\tools\rlwrap>exp scott/tiger@test01p tables=(t) file=t.dmp
Export: Release 12.1.0.1.0 - Production on Sat Nov 9 22:26:23 2013
Copyright (c) 1982, 2013, Oracle and/or its affiliates.  All rights reserved.

Connected to: Oracle Database 12c Enterprise Edition Release 12.1.0.1.0 - 64bit Production
With the Partitioning, OLAP, Advanced Analytics and Real Application Testing options
Export done in ZHS16GBK character set and AL16UTF16 NCHAR character set

About to export specified tables via Conventional Path ...
. . exporting table                              T          0 rows exported
Export terminated successfully without warnings.

--说明12c可以导出,这样看来前面的版本应该算BUG。

做一个move看看
参考链接:http://space.itpub.net/267265/viewspace-713311
SCOTT@test01p> alter table t move tablespace users;
Table altered.

SCOTT@test01p> select  table_name ,segment_created from user_tables where table_name='T';
TABLE_NAME SEG
---------- ---
T          NO

SCOTT@test01p> select  segment_name ,segment_type ,bytes from user_segments where segment_name='T' and segment_type='TABLE';
no rows selected

--看来11G遇到的问题都是bug。看看11.2.0.3问题还存在吗?

SCOTT@test> @ver
BANNER
--------------------------------------------------------------------------------
Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production

SCOTT@test> create table t ( a number);

Table created.

SCOTT@test> select DBMS_METADATA.get_ddl ('TABLE','T') from dual;
DBMS_METADATA.GET_DDL('TABLE','T')
------------------------------------------------------------------

  CREATE TABLE "SCOTT"."T"
   (    "A" NUMBER
   ) SEGMENT CREATION DEFERRED
  PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255
 NOCOMPRESS LOGGING
  TABLESPACE "USERS"

$ exp scott/btbtms tables=(t) file=t.dmp
Export: Release 11.2.0.3.0 - Production on Mon Nov 11 09:09:08 2013
Copyright (c) 1982, 2011, Oracle and/or its affiliates.  All rights reserved.

Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options
Export done in ZHS16GBK character set and AL16UTF16 NCHAR character set

About to export specified tables via Conventional Path ...
. . exporting table                              T          0 rows exported
Export terminated successfully without warnings.

--可以发现t也被导出!

--做一个move看看
SCOTT@test> alter table t move tablespace users;
Table altered.

SCOTT@test> select  table_name ,segment_created from user_tables where table_name='T';
TABLE_NAME SEG
---------- ---
T          NO

SCOTT@test> select  segment_name ,segment_type ,bytes from user_segments where segment_name='T' and segment_type='TABLE';
no rows selected

--做一个imp导入看看。
SCOTT@test> rename t to tx;
Table renamed.

$ imp scott/btbtms full=y file=t.dmp
Import: Release 11.2.0.3.0 - Production on Mon Nov 11 09:12:24 2013
Copyright (c) 1982, 2011, Oracle and/or its affiliates.  All rights reserved.

Connected to: Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Production
With the Partitioning, OLAP, Data Mining and Real Application Testing options

Export file created by EXPORT:V11.02.00 via conventional path
import done in ZHS16GBK character set and AL16UTF16 NCHAR character set
. importing SCOTT's objects into SCOTT
. importing SCOTT's objects into SCOTT
. . importing table                            "T"          0 rows imported
Import terminated successfully without warnings.

SCOTT@test> desc t;
Name  Null?    Type
----- -------- ---------
A              NUMBER

SCOTT@test> select  segment_name ,segment_type ,bytes from user_segments where segment_name='TX' and segment_type='TABLE';
no rows selected

SCOTT@test> select  segment_name ,segment_type ,bytes from user_segments where segment_name='T' and segment_type='TABLE';
no rows selected

--可以发现t表结构导入(没有记录).但是没有建立数据段。

总结:
可以发现每一个新特性的出现,总是意味着一堆bug的出现。使用新特性要注意。

时间: 2024-09-17 14:20:37

[20131109]deferred segment creation与12c的exp命令.txt的相关文章

[20111214]汇总11GR2 Deferred Segment Creation一些相关信息.txt

11G R2引入了Deferred Segment Creation的新特性,在建立空表时并不分配空间.这样对于一些系统能节省许多空间.但是也可能遇到一些问题,我把这段时间看到关于这个方面的信息做一个汇总. 1.sys用户不受这个限制: 测试例子:sqlplus sys as sysdbaSQL> create table t1 (a number);Table created.SQL> select  table_name ,segment_created from user_tables

[20130524]11G的Deferred segment creation的问题.txt

[20130524]11G的Deferred segment creation的问题.txt 11G的Deferred segment creation是一个非常好的特性,有这个特性也产生一些问题. 自己以前写的链接:http://space.itpub.net/267265/viewspace-716102http://space.itpub.net/267265/viewspace-695835http://space.itpub.net/267265/viewspace-713311htt

Oracle 11gR2新特性--延迟段创建(Deferred Segment Creation)

Oracle 11gR2新特性--延迟段创建(Deferred Segment Creation) 真题1. 什么是延迟段创建(Deferred Segment Creation)? 答案:在Oracle 11.2中,当创建一个空表或者空分区时,为了加快创建速度,Oracle并不会立即分配初始段和空间,实际的表段(Table Segement)被延迟到第一行数据插入时创建.延迟段创建特性通过DEFERRED_SEGMENT_CREATION参数控制,默认为TRUE,表示开启该功能.延迟段创建可以

[20120927]deferred segment creation与system,sys用户.txt

[20120927]deferred segment creation与system,sys用户.txt 今天看了一篇blog,才知道sys,system用户不能使用deferred segment creation. http://blog.tanelpoder.com/2010/07/11/dropping-and-creating-tables-in-read-only-tablespaces-what/ 自己重复了测试: SQL> select * from v$version ; BA

导入-请教下oracle的EXP命令

问题描述 请教下oracle的EXP命令 我用exp system/oracle file=test.dmp full=y 命令导出整个数据库..然后用imp导入.. 发现数据没导入...想问下exp的full=y所备份的数据库是不是不包含表里面的数据??还是 我imp错了?? 对于项目上线来说...数据库的迁移一般用什么方法来做?? 解决方案 不加导出当前用户,加了导出全库所有的.如果是在线项目,看数据库文件大小一般就能知道是否包含了数据. 一般都是exp和imp方式 解决方案二: http:

通过exp命令对Oracle数据库进行备份操作(提供两种情况的备份:备份本地,备份远程的数据库)

通过exp命令可以对Oracle数据库进行备份操作,其命令含义是:exp 用户名/密码@数据库所在ip地址:数据库端口号/数据库的service-name file=存储到的位置 exp MISPS/MISPS@orcl file=d:\MISPS.dmp 远程导出的方法 exp MISPS/MISPS@10.12.10.111:1521/cipaspd.css.com file=d:\MISPS.dmp BUFFER=5000 FULL=Y 其中FULL=Y表示备份所有(包括数据库结构,用户等

[20170620]11G 12c expand sql text.txt

[20170620]11G 12c expand sql text.txt --//原来写的脚本只能分别在11g,12c单独使用.上午花一点点时间.把两者整合起来. --//讨论链接:http://www.itpub.net/thread-2088981-1-1.html --//再次感谢solomon_007的指点: set long 20000 set serveroutput on declare     L_sqltext clob := null;     l_version varc

[20170114]12c varchar2类型直方图.txt

[20170114]12c varchar2类型直方图.txt --我曾经提到慎用nvarchar2数据类型,链接:http://blog.itpub.net/267265/viewspace-2120925/ --我那里提到数据类型nvarchar2类型,因为1个字符占用2个字节,这样如果前面16个字符重复很多,直方图的建立就是鸡肋, --毫无用处(因为分析仅仅对前面32个字节有效),12c 直方图支持更多类型: 高度直方图,频率直方图.混和类型(HYBRID). --看看12c关于直方图方面

[20170603]12c Top Frequency histogram.txt

[20170603]12c Top Frequency histogram.txt --//个人对直方图了解很少,以前2种直方图类型对于目前的许多应用来讲已经足够,或者讲遇到的问题很少. --//抽一点点时间,简单探究12c Top Frequency histogram. --//以前的频率直方图Frequency histogram,受限bucket(桶的大小),如果有255个不同值,oracle分析后不会建立频率直方图,而是建立高 --//度直方图.这样的情况会导致一些流行值的统计在显示执