sqoop执行job报错(org/json/JSONObject)

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上的文件

 

转载于:https://www.cnblogs.com/byfboke/p/10000578.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值