转至繁体中文版     | 网站首页 | 图文教程 | 资源下载 | 站长博客 | 图片素材 | 武汉seo | 武汉网站优化 | 
最新公告:     敏韬网|教学资源学习资料永久免费分享站!  [mintao  2008年9月2日]        
您现在的位置: 学习笔记 >> 图文教程 >> 数据库 >> ORACLE >> 正文
2Gb or Not 2Gb - File limits in Oracle (Part II)         ★★★★

2Gb or Not 2Gb - File limits in Oracle (Part II)

作者:闵涛 文章来源:闵涛的学习笔记 点击数:1296 更新时间:2009/4/22 22:07:58

2Gb or Not 2Gb - File limits in Oracle (Part II)

 

导出(Export)和2Gb

 

2Gb导出文件的大小

当编写大部分版本的Export时,在创建导出文件上都是使用了默认的文件操作API。这就意味着在很多平台上根本就没有可能导出2Gb或者大于2Gb的文件系统文件(file system file)。

但是仍然有一些可选项可以用于在Export时解决2Gb的限制:

 

ü         将大于2Gb的文件导出到裸设备上基本上是没有问题的,当然这首先要求裸设备的大小必须能够容纳整个导出文件。

ü         导出到一个允许压缩或者切割的命名管道中(适用Unix平台)。

参看“在Unix平台上导出大于2Gb文件的快速参考”一文 [NOTE:30528.1]。

ü         导出到磁带(适用大多数平台)

参看“在Unix系统中导出到磁带”一文[NOTE:30428.1]。(这篇文章同时页详细描述了如何导出到Unix管道和远程shell中)

ü         Oracle8i允许导出到多个小文件中,以替代单一的大文件。

 

其它的2Gb导出问题

Oracle允许区(extent)的尺寸最大为2Gb。但是不幸的是,在大多数的Oracle发行版中Export都存在这样一个问题,当你Export一个大文件,并且指定了COMPRESS=Y,那么就有可能在导出文件的NEXT存储子句中包含了一个大于2Gb的值。这样将会导致Import失败,即使是在Import时候指定了IGNORE=Y。Oracle已经在在[BUG:708790]中报告了这个问题,并且在[NOTE:62436.1]中提出了警告。

 

当Export碰到2Gb限制的时候,会报类似下面的错误:

. . exporting table                   BIGEXPORT

EXP-00015: error on row 10660 of table BIGEXPORT, 

       column MYCOL, datatype 96

EXP-00002: error in writing to export file

EXP-00002: error in writing to export file

EXP-00000: Export terminated unsuccessfully

 

在[BUG:185855]中提到了第二个问题,这个问题指出一个全库导出产生的CREATE TABLESPACE命令将在文件大小上使用BYTES为单位,如果文件大小超过2Gb,那么在导入的时候就会产生一个ORA-2237错误。这个问题可以通过在导入之前先以M为单位而不是BYTES为单位来创建表空间这样的方法来解决。[BUG:490837]也指出了相类似的问题。

 

导出到磁带

导出的时候VOLSIZE参数限制在4Gb以下,在有些平台上可能只有2Gb。

在Oracle8i中已经修正了这个问题。[BUG:490190]中对此问题有所描述。

 

SQL*Loader2Gb

在SQL*Loader试图打开一个超过2Gb的文件时,将会报以下错误:

       SQL*Loader-500: Unable to open file (bigfile.dat)

       SVR4 Error: 79: Value too large for defined data type

 

在[NOTE:30528.1]中的例子可以稍作修改以使在SQL*Loader中使用大的输入文件。

Oracle 8.0.6在SQL*Loader中已经对discard file和log file实现了大文件支持,但是对于输入的data file在各个平台上仍然时不一样的。[BUG:948460]中记录了输入文件大小限制的详细信息。[BUG:749600]则记录了最大的discard file文件大小。

 

Oracle和其它的2Gb问题

这个章节列举了其它各色2Gb问题。

 

l         Oracle 8.0.5版本以后在大部分的平台上Oracle都提供了64位的版本。从8.0.5的README文件中可以看到相应的介绍-[NOTE:62252.1]

l         DBV(数据库验证程序)可能无法扫描超过2Gb的数据文件,并会报DBV-100错误。在[BUG:710888]中报告了此错误。

l         如果要在Oracle中创建大于2Gb的文件, SQL命令行的"DATAFILE ... SIZE xxxxxx"子句部分必须以M或者K作单位来指定,否则将会报"ORA-02237: invalid file size"错误。在[BUG:185855]中报告了此错误。

l         在Oracle 7.3.4发行版以前表空间的限额不能超过2Gb。比如:

ALTER USER <username> QUOTA 2500M ON <tablespacename>

这样将会报" ORA-2187: invalid quota specification."错误。

在[BUG:425831]中报告了此错误。解决方法是如果一个用户需要超过2Gb的限额,那么就给他赋予UNLIMITED TABLESPACE权限。

l         如果spool的输出文件达到了2Gb,那么会出现错误。比如:SQLPLUS的命令spool。

l         在Oracle工具中的一些CORE函数

[1] [2]  下一页


[办公软件]如何在office(PowerPoint,Word,Excel)中制作带圈的…  [办公软件]批量删除Office文档(word,excle,powerpoint)中的超…
[办公软件]Office(Word,Excel)密码破解软件(Office Password…  [办公软件]在powerpoint中快速插入word表格
[办公软件]快速将Word文档转换为PPT演示文档  [办公软件]Word、Excel和PowerPoint文件格式兼容包(简体中文…
[办公软件]在Office(word,excel)中输入各级钢筋符号的方法  [办公软件]Office文档(Word,PPT)的作者、备注、最后修改时间…
[办公软件]让EXCEL,WORD时间自动更新  [网络安全]激活型触发式AutoRun.inf病毒和rose病毒的清除方案
教程录入:mintao    责任编辑:mintao 
  • 上一篇教程:

  • 下一篇教程:
  • 【字体: 】【发表评论】【加入收藏】【告诉好友】【打印此文】【关闭窗口
      注:本站部分文章源于互联网,版权归原作者所有!如有侵权,请原作者与本站联系,本站将立即删除! 本站文章除特别注明外均可转载,但需注明出处! [MinTao学以致用网]
      网友评论:(只显示最新10条。评论内容只代表网友观点,与本站立场无关!)

    同类栏目
    · Sql Server  · MySql
    · Access  · ORACLE
    · SyBase  · 其他
    更多内容
    热门推荐 更多内容
  • 没有教程
  • 赞助链接
    更多内容
    闵涛博文 更多关于武汉SEO的内容
    500 - 内部服务器错误。

    500 - 内部服务器错误。

    您查找的资源存在问题,因而无法显示。

    | 设为首页 |加入收藏 | 联系站长 | 友情链接 | 版权申明 | 广告服务
    MinTao学以致用网

    Copyright @ 2007-2012 敏韬网(敏而好学,文韬武略--MinTao.Net)(学习笔记) Inc All Rights Reserved.
    闵涛 投放广告、内容合作请Q我! E_mail:admin@mintao.net(欢迎提供学习资源)

    站长:MinTao ICP备案号:鄂ICP备11006601号-18

    闵涛站盟:医药大全-武穴网A打造BCD……
    咸宁网络警察报警平台