数据库和表空间数据移动
[@more@]数据库和表空间数据移动
跨平台可传输表空间
在数据仓库之间简单的数据分布
允许数据库从一个平台到另一个平台的迁移
最小兼容水平
源数据库和目标数据库必须兼容到10.0.0或者更高
数据文件头是platform-aware
在Oracle中有不同的endian的区别,不同的平台有不同的endian,究竟什么是endian,在网上找到关于Big-endian和Little-endian的区别,其实Big-endian和Little-endian就是字节排序。
Big-Endian 和 Little-Endian 字节排序
必须注意的是:表中一个Word的长度是16位,一个Byte的长度是8位。如果一个数超过一个Word的长度,必须先按Word分成若干部分,然后每一部分(即每个Word内部)按Big-Endian或者Little-Endian的不同操作来处理字节。一个例子:如果我们将0x1234abcd写入到以0x0000开始的内存中,则结果为 |
疑问:为什么要以一个Word为基础单位来分割而不是一个DoubleWord或者Byte?究竟就是这么定义的还是跟具体的CPU有关,跟具体的模式(比如说16位模式、32位模式、64位模式的LE和BE定义会不同)有关?我实在是不清楚,望知道的大侠不吝指点,也希望有这方面资料(文章、代码)的朋友贴一些上来。 网友“问题男”回复: 目前的存储器,多以byte为访问的最小单元,于是endian的问题应运而生了,当一个逻辑上的整理必须分割为物理上的若干单元时就存在了先放谁后放谁的问题 存在“如果说"跟word或者说字长根本就没关系",假设有一数据文件里面有N多数顺序排布,如果想以Little-Endian format读入内存某区域,那么应该怎么读?怎么排?”这样的问题是由于对于endian的实质理解的偏差,endian指的是当物理上的最小单元比逻辑上的最小单元小时,逻辑到物理的单元排布关系。这里的“有一数据文件里面有N多数顺序排布”,这个“有一数据”显然不是逻辑上的最小单元,而其中的“N多数”的一个才是逻辑最小单元,于是可应用楼主表格中的原则排列,而“N多数”之间的顺序则是由这“N多数”的宿主决定的,比如是你写的程序,这个顺序由你决定 刚才谈到了,endian指的是当物理上的最小单元比逻辑上的最小单元小时,逻辑到物理的单元排布关系。咱们接触到的物理单元最小都是byte,在通信领域中,这里往往是bit,不过原理也是类似的。 实践可以给你更多的经验,比如在一个嵌入式系统的通信协议中,从底层射频驱动到上层的协议栈全部需要实现,那么很可能遇到多个endian的问题,底层的bit序、协议层的byte序、应用层的byte序,这些都是不同的概念 网友“rovershen ”回复: 没记错的话,除了moto的68K系列和dec的sparc是big endian外,常见的cpu都是little endian。ARM同时支持big和little,实际应用中通常使用little endian。我所说的指针转换,实际上指编译器的隐式处理。 假设有个32位的整数,地址是0x10000000,现在要将它作为16位整数处理,忽略高位,如果是little endian,则直接从0x10000000取得,而如果是big endian,则要从0x10000002取得。 网友“穿越无边”回复: 这两个术语来自于 Jonathan Swift 的《《格利佛游记》其中交战的两个派别无法就应该从哪一端--小端还是大端--打开一个半熟的鸡蛋达成一致。:) 在那个时代,Swift是在讽刺英国和法国之间的持续冲突,Danny Cohen,一位网络协议的早期开创者,第一次使用这两个术语来指代字节顺序,后来这个术语被广泛接纳了 摘自《深入理解计算机系统》 很好的一本书:) |
“endian”这个词出自《格列佛游记》。小人国的内战就源于吃鸡蛋时是究竟从大头(Big-Endian)敲开还是从小头(Little-Endian)敲开,由此曾发生过六次叛乱,其中一个皇帝送了命,另一个丢了王位。 我们一般将endian翻译成“字节序”,将big endian和little endian称作“大尾”和“小尾”。 |
可以通过查询视图v$transportable_platform来确定当前数据库的endian。例如在Windows平台上可以看到他的时litter。
SQL> SELECT tp.endian_format 2 FROM v$transportable_platform tp, 3 v$database d 4 WHERE tp.platform_name = d.platform_name 5 SQL> / ENDIAN_FORMAT -------------- Little |
来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/222350/viewspace-907890/,如需转载,请注明出处,否则将追究法律责任。
转载于:http://blog.itpub.net/222350/viewspace-907890/