动态网站制作指南 [  QQ表情  ]
[ 投票调查 ]
[ 企业邮箱 ]
[ 网站空间 ]
网络编程 | 站长之家 | 网页制作 | 图形图象 | 操作系统 | 冲浪宝典 | 软件教学 | 网络办公 | 邮件系统 | 网络安全 | 认证考试 | 系统进程
ASP源码 | .Net源码 | PHP源码 | JSP源码 | JAVA源码 | CGI源码 | VB源码 | C++源码 | Delphi源码 | PB源码 | VF源码 | 汇编 | 服务器
电脑书籍下载:程序设计书籍 | 数据库教程书籍 | 平面与多媒体书籍 | 网络通讯书籍 | 系统管理书籍 | 网络安全书籍 | 认证考试书籍
Firefox | IE | Maxthon | 迅雷 | 电驴 | BitComet | FlashGet | QQ | QQ空间 | Vista | 输入法 | Ghost | Word | Excel | wps | Powerpoint
asp | .net | php | jsp | Sql | c# | Ajax | xml | Dreamweaver | FrontPages | Javascript | css | photoshop | fireworks | Flash | Cad | Discuz!
当前位置 > 网站建设学院 > 网络编程 > 数据库 > Oracle教程
Tag:注入,存储过程,分页,安全,优化,xmlhttp,fso,jmail,application,session,防盗链,stream,无组件,组件,md5,乱码,缓存,加密,验证码,算法,cookies,ubb,正则表达式,水印,索引,日志,压缩,base64,url重写,上传,控件,Web.config,JDBC,函数,内存,PDF,迁移,结构,破解,编译,配置,进程,分词,IIS,Apache,Tomcat,phpmyadmin,Gzip,触发器,socket
数据库:数据库教程,数据库技巧,Oracle教程,MySQL教程,Sybase教程,Access教程,DB2教程,数据库安全,数据库文摘
文章搜索服务
邮件订阅
输入你的邮件地址,
你将不会错过任何关于:
[ Oracle教程 ]的信息



本月文章推荐
.重建Oracle数据库控制文件的简单.
.Oracle 10G 最佳20位新特性:SQL.
.Oracle8i数据库中索引的维护.
.Oracle和DB2的联机热备份比较.
.在AIX 5L上快速部署Oracle.
.八个学习点帮助你全面认识Oracle.
.Oracle Optimizer:迁移到使用基于.
.Oracle9i进程的内存占用问题.
.Oracle巧取指定记录与巧用外关联.
.怎样制作可执行的java程序.
.哪些初始化参数影响Oracle系统性.
.在 .NET中使用Oracle数据库事务.
.dbms_job包的应用:在Oracle中实现.
.Oracle9i New Features.
.[Tip]你的Oracle是32位的还是64位.
.详细介绍Oracle 8i中怎样实现实时.
.说一说如何配置Oracle的MTS Part1.
.Oracle9i进程内存占用问题解决方.
.用最简单的方法复制或迁移Oracle.
.ORACLE入门之按用户名重建索引的.

2Gb or Not 2Gb

发表日期:2008-2-9 |



  
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*Loader和2Gb

在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函数不支持大文件。[BUG:749600]中报告了此错误,在Oracle 8.0.6和8.1.6版本中已经修正了。但是要注重在Oracle 8.1.5和别的任何补丁中都没有修改这个错误。另外即使已经有修正,但是仍然还会有大文件限制因为不是所有的代码都使用了这些CORE函数。

注重:[BUG:749600]虽然阐明了CORE函数,但是代码的某些部分仍然有问题。比如:SQL*Loader中输入文件的读取就没有使用CORE。

l         UTL_FILE包使用了上述的CORE函数,所以在没有修正的Oracle版本中仍然有2Gb限制。<Package:UTL_FILE>是一个答应在PL/SQL中进行文件存取的PL/SQL包。

 

特定平台中的大文件

下面是一些特定平台中关于大文件支持的参考资料。虽然我们已经努力使这些文章的资料始终保持更新,但是仍然建议在存取大文件时对每一个操作要小心谨慎地测试。

 

平台

参考

AIX (RS6000 / SP)

[NOTE:60888.1]

HP

[NOTE:62407.1]

Digital Unix

[NOTE:62426.1]

Sequent PTX

[NOTE:62415.1]

Sun Solaris

[NOTE:62409.1]

Windows NT

FAT文件系统支持最大4Gb的文件

NTFS文件系统理论上支持最大16Tb的文件

1.在NT的Oracle8上使用大文件之前请先参考[NOTE:67421.1]

2.Oracle8.1.6的DBVERIFY程序有问题(参考[BUG:1372172])

3.在8.1.6 / 8.1.7中自动扩展到4Gb时会出现问题导致数据库崩溃。(参考[BUG:1668488])
上一篇:SQLPlus命令使用指南(三) 人气:412
下一篇:2Gb or Not 2Gb 人气:313
浏览全部Oracle教程的内容 Dreamweaver插件下载 常用网页广告代码全集
  最新网站源码 最新软件下载
2008-7-25 WikyBlog v1.7.0.1 多国语言版
2008-7-25 乐彼网上开店系统(56770 Eshop)
2008-7-25 赛特网站管理系统sitecms v3.6.0
2008-7-25 Modoer多功能点评系统 v1.0.1 Bu
2008-7-25 Shangducms Teamsuit! v1.1.0 开
2008-7-25 幻影动漫网视频系统(Ppdong) v1.
2008-7-25 acteecompany企业网站建设系统 v
2008-7-25 恒浪整合管理系统 ims v4.1 ACCE
2008-7-25 艺术图库系统 v1.0 beta
2008-7-19 UltraEdit 简体中文增强版 14.10
2008-7-19 CentOS 5.2 i386 LiveCD
2008-7-19 Snapture多功能相机 v1.4
2008-7-19 iAcces中文输入法 v1.0Build016
2008-7-19 Cookbook烹饪秘籍 v2.5
2008-7-19 苹果专用DVD转换工具 v1.1.59汉化
2008-7-19 Modem修复软件ZiPhone修改版04.0
2008-7-19 AgileMessenger即时通讯工具美化
2008-7-19 Sketches画图软件 v0.7b6破解版


  发表评论
姓 名: 验证码:
内 容:
[ 汉字翻译拼音 ] [ 广告代码 ] [ 符号对照表 ] [ 进制转换 ] [ 经典小工具 ] [ 个税计算 ] [ 汉字简繁转换 ] [ 普通单位换算 ] [ 公制单位换算 ]
[ 生辰老黄历 ] [ 国内电话区号 ] [ 国家代码与域名缩写 ] [ 文字加密解密 ] [ 健康查询 ] [ 万年历 ] [ 手机号码查询 ] [ ip搜索 ] [ Google PR查询 ]
业务联系 | 广告刊登 | 频道合作 | 投稿荐稿 | 联系方式 | 加入收藏 | RSS订阅
Copyright © 2000-2008 www.knowsky.com All rights reserved | 网络实名:动态网站制作指南 | 沪ICP备05001343号