Chinaunix首页 | 论坛 | 博客
  • 博客访问: 2909551
  • 博文数量: 599
  • 博客积分: 16398
  • 博客等级: 上将
  • 技术积分: 6875
  • 用 户 组: 普通用户
  • 注册时间: 2009-11-30 12:04
个人简介

WINDOWS下的程序员出身,偶尔也写一些linux平台下小程序, 后转行数据库行业,专注于ORACLE和DB2的运维和优化。 同时也是ios移动开发者。欢迎志同道合的朋友一起研究技术。 数据库技术交流群:58308065,23618606

文章分类

全部博文(599)

文章存档

2014年(12)

2013年(56)

2012年(199)

2011年(105)

2010年(128)

2009年(99)

分类: Oracle

2012-11-21 10:47:10

 
在EXP导出的时候,RECORDLENGTH参数一般用来提高导出性能,此外这个参数还用来在32-bit 和 64-bit进行导入导出,
如果2个不同位数的平台这个参数设置的不一样可能会遇到EXP-00010错误。
这个参数的解释如下:
RECORDLENGTH.
The parameter RECORDLENGTH specifies the length, in bytes, of the file record. This parameter is necessary when you must transfer the export file to another operating system that uses a different default value. If you do not define this parameter, it defaults to your platform-dependent value for buffer size.
You can set RECORDLENGTH to any value equal to or greater than your system's buffer size (the highest value is 64 kb). Frequently used values for buffer size are: 512 bytes, 4096 (4 kb), 8192 (8 kb), 32768 (32 kb), 65535 (64 kb).

那么如何确定不同平台的这个参数默认值呢?
这个参数的默认值来自于文件/usr/include/stdio.h 中 参数BUFSIZ定义的值。
stdio.h文件是标准库文件,做C语言编程的人对这个文件都不会陌生。
在我的AIX 64位的平台下,这个参数的默认值是4K
如下:
#define FILENAME_MAX    255
#define BUFSIZ          4096
#define _P_tmpdir       "/tmp/"
阅读(3451) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~