oracel 学习之:sqluldr2使用

2023-11-22 02:08
文章标签 学习 使用 sqluldr2 oracel

本文主要是介绍oracel 学习之:sqluldr2使用,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

                                                                                       sqluldr2
  
简单介绍
简介:
Sqluldr2:专业用于大数据量导出工具之一,效率比普通导出快70%。 ( Sqlldr:专业用于导入的工具之一,请注意两个工具的区别。),在使用时,最好用磁盘写入速度快,网络好,网速快的做。
内部实现
[sql] view plain copy print ?
  1. #include <stdio.h>  
  2. #include "sqluldr2.h"  
  3.    
  4. void main()  
  5. {  
  6.  void *h = NULL;  
  7.  SQLULDR2HandleAlloc(&h);  
  8.   if(h != NULL)  
  9.   {  
  10.      SQLULDR2HandleSetAttr(h, "USER=SYS");  
  11.      SQLULDR2HandleSetAttr(h, "QUERY=SELECT * FROM TAB");  
  12.      SQLULDR2HandleExecute(h);  
  13.      SQLULDR2HandleFree(h);  
  14.   }  
  15. }  
  16.    
#include <stdio.h>
#include "sqluldr2.h"
void main()
{
void *h = NULL;
SQLULDR2HandleAlloc(&h);
if(h != NULL)
{
SQLULDR2HandleSetAttr(h, "USER=SYS");
SQLULDR2HandleSetAttr(h, "QUERY=SELECT * FROM TAB");
SQLULDR2HandleExecute(h);
SQLULDR2HandleFree(h);
}
}


工具列表:
针对不同平台用不同的导出工具:
Windows:     sqluldr2.exe
Linux(32位): sqluldr2_linux32_10204.bin
Linux(64位):   sqluldr2_linux64_10204.bin
使用说明 (Windows平台 ):
使用sqluldr2的步骤:
1.打开运行àcmd进入到sqluldr2.exe的当前目录
2.参数介绍
User=用户/密码@tns
Query=”查询语句”
File= 导出的路径
Head= 输出信息时,yes表示要表头,no表示不要表头
注意:想查看更多参数,请输入 sqluldr2 help=yes
[sql] view plain copy print ?
  1. C:\Users\meng\Desktop\sqluldr2>sqluldr2.exe help=yes  
  2.   
  3.   
  4. SQL*UnLoader: Fast Oracle Text Unloader (GZIP, Parallel), Release 4.0.1  
  5. (@) Copyright Lou Fangxin (AnySQL.net) 2004 - 2010, all rights reserved.  
  6.   
  7.   
  8. License: Free for non-commercial useage, else 100 USD per server.  
  9.   
  10.   
  11. Usage: SQLULDR2 keyword=value [,keyword=value,...]  
  12.   
  13.   
  14. Valid Keywords:  
  15.    user    = username/password@tnsname  
  16.    sql     = SQL file name  
  17.    query   = select statement  
  18.    field   = separator string between fields  
  19.    record  = separator string between records  
  20.    rows    = print progress for every given rows (default, 1000000)  
  21.    file    = output file name(default: uldrdata.txt)  
  22.    log     = log file name, prefix with + to append mode  
  23.    fast    = auto tuning the session level parameters(YES)  
  24.    text    = output type (MYSQL, CSV, MYSQLINS, ORACLEINS, FORM, SEARCH).  
  25.    charset = character set name of the target database.  
  26.    ncharset= national character set name of the target database.  
  27.    parfile = read command option from parameter file  
  28.    read    = set DB_FILE_MULTIBLOCK_READ_COUNT at session level  
  29.    sort    = set SORT_AREA_SIZE at session level (UNIT:MB)  
  30.    hash    = set HASH_AREA_SIZE at session level (UNIT:MB)  
  31.    array   = array fetch size  
  32.    head    = print row header(Yes|No)  
  33.    batch   = save to new file for every rows batch (Yes/No)  
  34.    size    = maximum output file piece size (UNIB:MB)  
  35.    serial  = set _serial_direct_read to TRUE at session level  
  36.    trace   = set event 10046 to given level at session level  
  37.    table   = table name in the sqlldr control file  
  38.    control = sqlldr control file and path.  
  39.    mode    = sqlldr optionINSERT or APPEND or REPLACE or TRUNCATE  
  40.    buffer  = sqlldr READSIZE and BINDSIZE, default 16 (MB)  
  41.    long    = maximum long field size  
  42.    width   = customized max column width (w1:w2:...)  
  43.    quote   = optional quote string  
  44.    data    = disable real data unload (NOOFF)  
  45.    alter   = alter session SQLs to be execute before unload  
  46.    safe    = use large buffer to avoid ORA-24345 error (Yes|No)  
  47.    crypt   = encrypted user information only (Yes|No)  
  48.    sedf/t  = enable character translation function  
  49.    null    = replace null with given value  
  50.    escape  = escape character for special characters  
  51.    escf/t  = escape from/to characters list  
  52.    format  = MYSQL: MySQL Insert SQLs, SQL: Insert SQLs.  
  53.    exec    = the command to execute the SQLs.  
  54.    prehead = column name prefix for head line.  
  55.    rowpre  = row prefix string for each line.  
  56.    rowsuf  = row sufix string for each line.  
  57.    colsep  = separator string between column name and value.  
  58.    presql  = SQL or scripts to be executed before data unload.  
  59.    postsql = SQL or scripts to be executed after data unload.  
  60.    lob     = extract lob values to single file (FILE).  
  61.    lobdir  = subdirectory count to store lob files .  
  62.    split   = table name for automatically parallelization.  
  63.    degree  = parallelize data copy degree (2-128).  
  64.    hint    = MySQL SQL hint for the Insertfor example IGNORE.  
  65.    unique  = Unique Column List for the MySQL target table.  
  66.    update  = Enable MySQL ON DUPLICATE SQL statement(YES/NO).  
  67.   
  68.   
  69.   for field and record, you can use '0x' to specify hex character code,  
  70.   \r=0x0d \n=0x0a |=0x7c ,=0x2c, \t=0x09, :=0x3a, #=0x23, "=0x22 '=0x27  
  71.   
  72. C:\Users\meng\Desktop\sqluldr2>  
  73.    
C:\Users\meng\Desktop\sqluldr2>sqluldr2.exe help=yes
SQL*UnLoader: Fast Oracle Text Unloader (GZIP, Parallel), Release 4.0.1
(@) Copyright Lou Fangxin (AnySQL.net) 2004 - 2010, all rights reserved.
License: Free for non-commercial useage, else 100 USD per server.
Usage: SQLULDR2 keyword=value [,keyword=value,...]
Valid Keywords:
user    = username/password@tnsname
sql     = SQL file name
query   = select statement
field   = separator string between fields
record  = separator string between records
rows    = print progress for every given rows (default, 1000000)
file    = output file name(default: uldrdata.txt)
log     = log file name, prefix with + to append mode
fast    = auto tuning the session level parameters(YES)
text    = output type (MYSQL, CSV, MYSQLINS, ORACLEINS, FORM, SEARCH).
charset = character set name of the target database.
ncharset= national character set name of the target database.
parfile = read command option from parameter file
read    = set DB_FILE_MULTIBLOCK_READ_COUNT at session level
sort    = set SORT_AREA_SIZE at session level (UNIT:MB)
hash    = set HASH_AREA_SIZE at session level (UNIT:MB)
array   = array fetch size
head    = print row header(Yes|No)
batch   = save to new file for every rows batch (Yes/No)
size    = maximum output file piece size (UNIB:MB)
serial  = set _serial_direct_read to TRUE at session level
trace   = set event 10046 to given level at session level
table   = table name in the sqlldr control file
control = sqlldr control file and path.
mode    = sqlldr option, INSERT or APPEND or REPLACE or TRUNCATE
buffer  = sqlldr READSIZE and BINDSIZE, default 16 (MB)
long    = maximum long field size
width   = customized max column width (w1:w2:...)
quote   = optional quote string
data    = disable real data unload (NO, OFF)
alter   = alter session SQLs to be execute before unload
safe    = use large buffer to avoid ORA-24345 error (Yes|No)
crypt   = encrypted user information only (Yes|No)
sedf/t  = enable character translation function
null    = replace null with given value
escape  = escape character for special characters
escf/t  = escape from/to characters list
format  = MYSQL: MySQL Insert SQLs, SQL: Insert SQLs.
exec    = the command to execute the SQLs.
prehead = column name prefix for head line.
rowpre  = row prefix string for each line.
rowsuf  = row sufix string for each line.
colsep  = separator string between column name and value.
presql  = SQL or scripts to be executed before data unload.
postsql = SQL or scripts to be executed after data unload.
lob     = extract lob values to single file (FILE).
lobdir  = subdirectory count to store lob files .
split   = table name for automatically parallelization.
degree  = parallelize data copy degree (2-128).
hint    = MySQL SQL hint for the Insert, for example IGNORE.
unique  = Unique Column List for the MySQL target table.
update  = Enable MySQL ON DUPLICATE SQL statement(YES/NO).
for field and record, you can use '0x' to specify hex character code,
\r=0x0d \n=0x0a |=0x7c ,=0x2c, \t=0x09, :=0x3a, #=0x23, "=0x22 '=0x27
C:\Users\meng\Desktop\sqluldr2>

代码例子1
sqluldr2.exe USER=用户/ 密码@ tnsQUERY="select   /*+ parallel(8)  */  *from cs_XXX dt,cfg_XXX devdim105 wheredt.starttime>=to_date('2012-06-27 00:00:00','yyyy-mm-dd hh24:mi:ss') and dt.starttime<=to_date('2012-06-2700:01:59','yyyy-mm-dd hh24:mi:ss') AND dt.msc= devdim105.mapvalue(+) ANDdevdim105.deviceid=15 " head=yes FILE=F:\cs_XXX_test.csv
代码例子2(这种方式用于导出的查询sql很长,那么就把sql写在123.sql文件里 ):
sqluldr2.exe USER=用户/ 密码@ tns  sql=123.sqlhead=yes FILE=F:\cs_XXX_test.csv
3.在cmd里,直接把步骤2的 代码例子1 ,贴进去执行。
注:如果执行报报错,就有可能是环境变量path的问题,还有就是plsql需要的oci.dll文件等多个dll文件,请放在sqluldr2的目录下。
4.查看结果F:\cs_XXX_test.csv
5.打开csv里面的内容,就可以用sqlldr进行 入库。
转自: http://blog.csdn.net/shushugood/article/details/7725984

这篇关于oracel 学习之:sqluldr2使用的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/406707

相关文章

如何使用celery进行异步处理和定时任务(django)

《如何使用celery进行异步处理和定时任务(django)》文章介绍了Celery的基本概念、安装方法、如何使用Celery进行异步任务处理以及如何设置定时任务,通过Celery,可以在Web应用中... 目录一、celery的作用二、安装celery三、使用celery 异步执行任务四、使用celery

使用Python绘制蛇年春节祝福艺术图

《使用Python绘制蛇年春节祝福艺术图》:本文主要介绍如何使用Python的Matplotlib库绘制一幅富有创意的“蛇年有福”艺术图,这幅图结合了数字,蛇形,花朵等装饰,需要的可以参考下... 目录1. 绘图的基本概念2. 准备工作3. 实现代码解析3.1 设置绘图画布3.2 绘制数字“2025”3.3

Jsoncpp的安装与使用方式

《Jsoncpp的安装与使用方式》JsonCpp是一个用于解析和生成JSON数据的C++库,它支持解析JSON文件或字符串到C++对象,以及将C++对象序列化回JSON格式,安装JsonCpp可以通过... 目录安装jsoncppJsoncpp的使用Value类构造函数检测保存的数据类型提取数据对json数

python使用watchdog实现文件资源监控

《python使用watchdog实现文件资源监控》watchdog支持跨平台文件资源监控,可以检测指定文件夹下文件及文件夹变动,下面我们来看看Python如何使用watchdog实现文件资源监控吧... python文件监控库watchdogs简介随着Python在各种应用领域中的广泛使用,其生态环境也

Python中构建终端应用界面利器Blessed模块的使用

《Python中构建终端应用界面利器Blessed模块的使用》Blessed库作为一个轻量级且功能强大的解决方案,开始在开发者中赢得口碑,今天,我们就一起来探索一下它是如何让终端UI开发变得轻松而高... 目录一、安装与配置:简单、快速、无障碍二、基本功能:从彩色文本到动态交互1. 显示基本内容2. 创建链

springboot整合 xxl-job及使用步骤

《springboot整合xxl-job及使用步骤》XXL-JOB是一个分布式任务调度平台,用于解决分布式系统中的任务调度和管理问题,文章详细介绍了XXL-JOB的架构,包括调度中心、执行器和Web... 目录一、xxl-job是什么二、使用步骤1. 下载并运行管理端代码2. 访问管理页面,确认是否启动成功

使用Nginx来共享文件的详细教程

《使用Nginx来共享文件的详细教程》有时我们想共享电脑上的某些文件,一个比较方便的做法是,开一个HTTP服务,指向文件所在的目录,这次我们用nginx来实现这个需求,本文将通过代码示例一步步教你使用... 在本教程中,我们将向您展示如何使用开源 Web 服务器 Nginx 设置文件共享服务器步骤 0 —

Java中switch-case结构的使用方法举例详解

《Java中switch-case结构的使用方法举例详解》:本文主要介绍Java中switch-case结构使用的相关资料,switch-case结构是Java中处理多个分支条件的一种有效方式,它... 目录前言一、switch-case结构的基本语法二、使用示例三、注意事项四、总结前言对于Java初学者

Golang使用minio替代文件系统的实战教程

《Golang使用minio替代文件系统的实战教程》本文讨论项目开发中直接文件系统的限制或不足,接着介绍Minio对象存储的优势,同时给出Golang的实际示例代码,包括初始化客户端、读取minio对... 目录文件系统 vs Minio文件系统不足:对象存储:miniogolang连接Minio配置Min

使用Python绘制可爱的招财猫

《使用Python绘制可爱的招财猫》招财猫,也被称为“幸运猫”,是一种象征财富和好运的吉祥物,经常出现在亚洲文化的商店、餐厅和家庭中,今天,我将带你用Python和matplotlib库从零开始绘制一... 目录1. 为什么选择用 python 绘制?2. 绘图的基本概念3. 实现代码解析3.1 设置绘图画