2017-03-03 117 views
1

我試圖使用sqoop-1從sybaseIQ導入數據。 jdts-1.3.1.jar被放置在/sqoop/sqoop-1.4.6/lib文件夾中。SQOOP 1無法加載Sybase驅動程序 - 無法加載數據庫驅動程序類:com.sybase.jdbc3.jdbc.SybDriver

當這句法運行,

sqoop import --connect '`jdbc:jtds:sybase:tds`://10.***.*.***@5500:*****' --driver 'com.sybase.jdbc3.jdbc.SybDriver' --username "username" --password -p --query "select * from dw.DM_ADDRESS where rownum <= 1000 and \$CONDITIONS" --target-dir "/user/*****/WT_Address_Itc" --split-by 1 --verbose 
and am getting this error: 

17/03/02 11:15:19 DEBUG manager.SqlManager: Execute getColumnInfoRawQuery : select * from dw.DM_ADDRESS_ITC where rownum <= 1000 and (1 = 0) 
17/03/02 11:15:19 ERROR sqoop.Sqoop: Got exception running Sqoop: java.lang.RuntimeException: Could not load db driver class: com.sybase.jdbc3.jdbc.SybDriver 
java.lang.RuntimeException: Could not load db driver class: com.sybase.jdbc3.jdbc.SybDriver 
at org.apache.sqoop.manager.SqlManager.makeConnection(SqlManager.java:856) 
at org.apache.sqoop.manager.GenericJdbcManager.getConnection(GenericJdbcManager.java:52) 
at org.apache.sqoop.manager.SqlManager.execute(SqlManager.java:744) 
at org.apache.sqoop.manager.SqlManager.execute(SqlManager.java:767) 
at org.apache.sqoop.manager.SqlManager.getColumnInfoForRawQuery(SqlManager.java:270) 
at org.apache.sqoop.manager.SqlManager.getColumnTypesForRawQuery(SqlManager.java:241) 
at org.apache.sqoop.manager.SqlManager.getColumnTypesForQuery(SqlManager.java:234) 
at org.apache.sqoop.manager.ConnManager.getColumnTypes(ConnManager.java:304) 
at org.apache.sqoop.orm.ClassWriter.getColumnTypes(ClassWriter.java:1833) 
at org.apache.sqoop.orm.ClassWriter.generate(ClassWriter.java:1645) 
at org.apache.sqoop.tool.CodeGenTool.generateORM(CodeGenTool.java:107) 
at org.apache.sqoop.tool.ImportTool.importTable(ImportTool.java:478) 
at org.apache.sqoop.tool.ImportTool.run(ImportTool.java:606) 
at org.apache.sqoop.Sqoop.run(Sqoop.java:143) 
at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70) 
at org.apache.sqoop.Sqoop.runSqoop(Sqoop.java:179) 
at org.apache.sqoop.Sqoop.runTool(Sqoop.java:218) 
at org.apache.sqoop.Sqoop.runTool(Sqoop.java:227) 
at org.apache.sqoop.Sqoop.main(Sqoop.java:236) 

缺少什麼我在這裏?我是否使用正確的驅動程序?這是http://jtds.sourceforge.net/網站上提供的那個嗎?

我真的很感謝你的幫助!

回答

0

的驅動程序類com.sybase.jdbc3.jdbc.SybDriver屬於jconn3.jar
下載jconn3.jar,並將其放置在$SQOOP_HOME/lib目錄。

而且ConnectionString中必須是,

jdbc:sybase:Tds:dbhost:dbport/DATABASE=dbname 
+0

我已經放在將jconn3.jar在$ SQOOP_HOME/lib和我已經改變了連接字符串太...但在運行腳本給我這個例外, 錯誤manager.SqlManager:執行語句時出錯:java.sql.SQLException:JZ003:URL格式不正確。 URL: java.sql.SQLException:JZ003:URL格式不正確。 URL: at com.sybase.jdbc3.jdbc.ErrorMessage.raiseError(Unknown Source) at com.sybase.jdbc3.tds.Tds.login(Unknown Source) – karthee

+0

@karthee您可以評論使用的確切連接字符串嗎? – franklinsijo

+0

--connect'jdbc:sybase:Tds://10.100.*.***:5500/DATABASE = iqprod1'--driver'com.sybase.jdbc3.jdbc.SybDriver' – karthee

相關問題