最近需要做java導出數據,由於考慮到數據量大速度慢的問題,所以決定採用sqluldr2做爲導出工具。
1、首先做本地調試:
windows:
需要安裝oracle客戶端,然後把sqluldr2.exe拷貝到oracle的客戶端目錄下。我的目錄C:\Program Files (x86)\Oracle\odac_client。
sqluldr2 user=name/pass@localhost:1521/orcl query="select * from table" head=yes file="D:\sales\sqluldr\file.csv" log=+"D:\sales\sqluldr\log.txt" escape='\' escf=0x0a esct=n
Linux:
同樣需要安裝oracle客戶端,instantclient-basic-linux.x64-11.2.0.4.0.zip 安裝此包即可。
sqluldr2_linux64_10204.bin user=test/"test"@ip:1521/orcl query="select * from table" head=yes file="/home/ctt-eoms/sqlldr/table.csv" log=+/home/ctt-eoms/sqlldr/log.txt escape='\' escf=0x0a esct=n
2、java調用方式
我採用的是java生成sql文件,然後生成bat、sh腳本,最後用java調用腳本生成文件的方式
中途遇到問題:
密碼中包含@字符,沒有找到解決辦法。如果各位同僚已解決,麻煩私信我!