NoClassDefFoundError: org/json/JSONObject:
[root@hadoop2 ~]# sqoop job --create myjob7 -- import --connect jdbc:mysql://192.168.122.15:3306/company --username hivee --password-file file:///root/a.txt --table erp_admin_article --target-dir '/work/test12'--hive-import --hive-table erp_admin_article --fields-terminated-by ',' -m 1
注:import與"--"之間必須要有一個空格:
報錯:
Exception in thread "main" java.lang.NoClassDefFoundError: org/json/JSONObject
at org.apache.sqoop.util.SqoopJsonUtil.getJsonStringforMap(SqoopJsonUtil.java:43)
at org.apache.sqoop.SqoopOptions.writeProperties(SqoopOptions.java:785)
at org.apache.sqoop.metastore.hsqldb.HsqldbJobStorage.createInternal(HsqldbJobStorage.java:399)
......原因:sqoop缺少java-json.jar包.
解決:
這是因為sqoop缺少java-json.jar包.
下載java-json.jar包:
http://www.java2s.com/Code/Jar/j/Downloadjavajsonjar.htm
把java-json.jar添加到../sqoop/lib目錄:
cp java-json.jar /sqoop/lib
Error executing statement: java.sql.SQLException: Access denied for user 'hivee'@'hadoop2
18/11/22 14:35:46 ERROR manager.SqlManager: Error executing statement: java.sql.SQLException: Access denied for user 'hivee'@'hadoop2' (using password: YES)
java.sql.SQLException: Access denied for user 'hivee'@'hadoop2' (using password: YES)
18/11/22 14:35:46 ERROR tool.ImportTool: Import failed: java.io.IOException: No columns to generate for ClassWriter這是由於password文件格式不對的原因導致:
正確寫入方式:
echo -n "123456" > sqoop.pwd
使用--password參數將有警告,並且需要輸入密碼才能執行Job,所以建議用密碼文件形式
注意:使用密碼文件有倆種使用方式
1>: --password-file file:///root/a.txt #這種方式是使用服務器上的文件
2>: --password-file /input/a.txt #這種方式是使用HDFS上的文件