ambari安装的hadoop、hive、sqoop ,用sqoop将数据从oracle导出至hive表,报NullPointerException!

oracleliu2005 2014-02-18 03:16:22
sqoop import --hive-import --connect jdbc:oracle:thin:@192.168.88.233:1521:ITSPDB2 --username ITSP --password itsp --verbose -m 1 --table HADOOP_TEST
-------------
用sqoop将数据从oracle导出至hive表,报错如下:
14/02/18 15:02:18 ERROR sqoop.Sqoop: Got exception running Sqoop: java.lang.NullPointerException
java.lang.NullPointerException
at org.apache.sqoop.manager.OracleManager.getPrimaryKey(OracleManager.java:951)
at org.apache.sqoop.manager.SqlManager.getSplitColumn(SqlManager.java:543)
at org.apache.sqoop.manager.SqlManager.checkTableImportOptions(SqlManager.java:562)
at org.apache.sqoop.manager.SqlManager.importTable(SqlManager.java:597)
at org.apache.sqoop.manager.OracleManager.importTable(OracleManager.java:384)
at org.apache.sqoop.tool.ImportTool.importTable(ImportTool.java:413)
at org.apache.sqoop.tool.ImportTool.run(ImportTool.java:502)
at org.apache.sqoop.Sqoop.run(Sqoop.java:147)
at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:70)
at org.apache.sqoop.Sqoop.runSqoop(Sqoop.java:183)
at org.apache.sqoop.Sqoop.runTool(Sqoop.java:222)
at org.apache.sqoop.Sqoop.runTool(Sqoop.java:231)
at org.apache.sqoop.Sqoop.main(Sqoop.java:240)

求解决方案!

操作系统rhel6.3 64位,用ambari安装的hadoop、hive、sqoop
扣版本如下:
hadoop 2.2.0.2.0.6.0-101
hive 0.12.0.2.0.6.1-101
sqoop 1.4.4.2.0.6.1-101
...全文
895 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
maizimeiyan 2016-04-11
  • 打赏
  • 举报
回复
你的NullPointerException,怎么解决啊,求解!
忆轩辕 2014-02-19
  • 打赏
  • 举报
回复
权限问题,hdfs目录是什么用户建立的就用什么用户跑sqoop
oracleliu2005 2014-02-19
  • 打赏
  • 举报
回复
引用 3 楼 u011298529 的回复:
引用 2 楼 colacat911 的回复:
确认sqoop可以正常连接到oracle,用list-tables测试下,连接用的jdbc lib包的名字是什么?
可以连接连接,包名是ojdbc5.jar
现在报权限错误: sqoop import --hive-import --connect jdbc:oracle:thin:@192.168.88.233:1521:ITSPDB2 --username ITSP --password itsp --verbose --m 1 --table HADOOP_TEST 在root下用sqoop将数据从oracle导出至hive表,报错如下: 14/02/19 09:27:31 INFO client.RMProxy: Connecting to ResourceManager at Slave1.Hadoop/192.168.88.233:8050 14/02/19 09:27:32 ERROR security.UserGroupInformation: PriviledgedActionException as:root (auth:SIMPLE) cause:org.apache.hadoop.security.AccessControlException: Permission denied: user=root, access=WRITE, inode="/user":hdfs:hdfs:drwxr-xr-x at org.apache.hadoop.hdfs.server.namenode.FSPermissionChecker.check(FSPermissionChecker.java:234) at org.apache.hadoop.hdfs.server.namenode.FSPermissionChecker.check(FSPermissionChecker.java:214) at org.apache.hadoop.hdfs.server.namenode.FSPermissionChecker.checkPermission(FSPermissionChecker.java:158) at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.checkPermission(FSNamesystem.java:5202) at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.checkPermission(FSNamesystem.java:5184) at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.checkAncestorAccess(FSNamesystem.java:5158) at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.mkdirsInternal(FSNamesystem.java:3405) at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.mkdirsInt(FSNamesystem.java:3375) at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.mkdirs(FSNamesystem.java:3349) at org.apache.hadoop.hdfs.server.namenode.NameNodeRpcServer.mkdirs(NameNodeRpcServer.java:724) at org.apache.hadoop.hdfs.protocolPB.ClientNamenodeProtocolServerSideTranslatorPB.mkdirs(ClientNamenodeProtocolServerSideTranslatorPB.java:502) at org.apache.hadoop.hdfs.protocol.proto.ClientNamenodeProtocolProtos$ClientNamenodeProtocol$2.callBlockingMethod(ClientNamenodeProtocolProtos.java:59598) at org.apache.hadoop.ipc.ProtobufRpcEngine$Server$ProtoBufRpcInvoker.call(ProtobufRpcEngine.java:585) at org.apache.hadoop.ipc.RPC$Server.call(RPC.java:928) at org.apache.hadoop.ipc.Server$Handler$1.run(Server.java:2053) at org.apache.hadoop.ipc.Server$Handler$1.run(Server.java:2049) at java.security.AccessController.doPrivileged(Native Method) at javax.security.auth.Subject.doAs(Subject.java:396) at org.apache.hadoop.security.UserGroupInformation.doAs(UserGroupInformation.java:1491) at org.apache.hadoop.ipc.Server$Handler.run(Server.java:2047) 注:各/home/hadoop/hdfs目录的权限为777, /home/hadoop/hdfs/data 目录权限为750, 各目录属主为root 求解决方案!
oracleliu2005 2014-02-19
  • 打赏
  • 举报
回复
引用 2 楼 colacat911 的回复:
确认sqoop可以正常连接到oracle,用list-tables测试下,连接用的jdbc lib包的名字是什么?
可以连接连接,包名是ojdbc5.jar
忆轩辕 2014-02-18
  • 打赏
  • 举报
回复
确认sqoop可以正常连接到oracle,用list-tables测试下,连接用的jdbc lib包的名字是什么?
oracleliu2005 2014-02-18
  • 打赏
  • 举报
回复
有人帮忙看看没呢

20,811

社区成员

发帖
与我相关
我的任务
社区描述
Hadoop生态大数据交流社区,致力于有Hadoop,hive,Spark,Hbase,Flink,ClickHouse,Kafka,数据仓库,大数据集群运维技术分享和交流等。致力于收集优质的博客
社区管理员
  • 分布式计算/Hadoop社区
  • 涤生大数据
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧