Sql * load 的用法(二)

2014-11-24 12:57:21 · 作者: · 浏览: 1
n. All rights reserved.

达到提交点,逻辑记录计数2

达到提交点,逻辑记录计数3

已经成功!我们可以通过日志文件来分析其过程:resulthis.out内容如下:

SQL*Loader: Release 8.1.6.0.0 - Production on 星期二1月8 10:31:57 2002

(c) Copyright 1999 Oracle Corporation. All rights reserved.

控制文件: result.ctl

数据文件: result.csv

错误文件: result.bad

废弃文件: 未作指定

:

(可废弃所有记录)

装载数: ALL

跳过数: 0

允许的错误: 50

绑定数组: 64 行,最大65536 字节

继续: 未作指定

所用路径: 常规

表RESULTXT

已载入从每个逻辑记录

插入选项对此表INSERT生效

列名 位置 长度 中止 包装数据类型

------------------------------ ---------- ----- ---- ---- ---------------------

RESULTID FIRST * , CHARACTER

WEBSITE NEXT * , CHARACTER

IPPORT NEXT * , CHARACTER

STATUS NEXT * WHT CHARACTER

表RESULTXT:

3 行载入成功

由于数据错误, 0 行没有载入。

由于所有WHEN 子句失败, 0 行没有载入。

由于所有字段都为空的, 0 行没有载入。

为结合数组分配的空间: 65016字节(63行)

除绑定数组外的内存空间分配: 0字节

跳过的逻辑记录总数: 0

读取的逻辑记录总数: 3

拒绝的逻辑记录总数: 0

废弃的逻辑记录总数: 0

从星期二1月 08 10:31:57 2002开始运行

在星期二1月 08 10:32:00 2002处运行结束

经过时间为: 00: 00: 02.70

CPU 时间为: 00: 00: 00.10(可

六、并发操作

  sqlldr userid=/ control=result1.ctl direct=true parallel=true

sqlldr userid=/ control=result2.ctl direct=true parallel=true

sqlldr userid=/ control=result2.ctl direct=true parallel=true

当加载大量数据时(大约超过10GB),最好抑制日志的产生:

SQL>ALTER TABLE RESULTXT nologging;

这样不产生REDO LOG,可以提高效率。然后在CONTROL文件中load data上面加一行:unrecoverable

此选项必须要与DIRECT共同应用。

在并发操作时,ORACLE声称可以达到每小时处理100GB数据的能力!其实,估计能到1-10G就算不错了,开始可用结构

相同的文件,但只有少量数据,成功后开始加载大量数据,这样可以避免时间的浪费。