2015-05-29 78 views
0

我想从oracle到HDFS的sqoop数据。我正在使用sqoop来达到这个目的。 我下载了ojdbc6.jar,并把它放在/usr/hdp/2.2.0.0-2041/sqoop/lib的路径中,并执行以下命令来检查我是否能够连接到oracle数据库。从oracle到hive的sqoop数据错误

sqoop list-databases --connect jdbc:oracle:thin:@hostname:port/service --username XXXX --password XXXX --verbose; 

我收到以下错误。

Warning: /usr/hdp/2.2.0.0-2041/accumulo does not exist! Accumulo imports will fail. 
Please set $ACCUMULO_HOME to the root of your Accumulo installation. 
15/05/29 15:24:42 INFO sqoop.Sqoop: Running Sqoop version: 1.4.5.2.2.0.0-2041 
15/05/29 15:24:42 DEBUG tool.BaseSqoopTool: Enabled debug logging. 
15/05/29 15:24:42 WARN tool.BaseSqoopTool: Setting your password on the command-line is insecure. Consider using -P instead. 
15/05/29 15:24:43 DEBUG sqoop.ConnFactory: Loaded manager factory: org.apache.sqoop.manager.oracle.OraOopManagerFactory 
15/05/29 15:24:43 DEBUG sqoop.ConnFactory: Loaded manager factory: com.cloudera.sqoop.manager.DefaultManagerFactory 
15/05/29 15:24:43 DEBUG sqoop.ConnFactory: Trying ManagerFactory: org.apache.sqoop.manager.oracle.OraOopManagerFactory 
15/05/29 15:24:44 DEBUG oracle.OraOopManagerFactory: Data Connector for Oracle and Hadoop can be called by Sqoop! 
15/05/29 15:24:44 INFO oracle.OraOopManagerFactory: Data Connector for Oracle and Hadoop is disabled. 
15/05/29 15:24:44 DEBUG sqoop.ConnFactory: Trying ManagerFactory: com.cloudera.sqoop.manager.DefaultManagerFactory 
15/05/29 15:24:44 DEBUG manager.DefaultManagerFactory: Trying with scheme: jdbc:oracle:thin:@hostname 
15/05/29 15:24:45 DEBUG manager.OracleManager$ConnCache: Instantiated new connection cache. 
15/05/29 15:24:45 INFO manager.SqlManager: Using default fetchSize of 1000 
15/05/29 15:24:45 DEBUG sqoop.ConnFactory: Instantiated ConnManager [email protected] 
15/05/29 15:24:46 DEBUG manager.OracleManager: Creating a new connection for jdbc:oracle:thin:@hostname:port/service, using username: username 
15/05/29 15:24:46 DEBUG manager.OracleManager: No connection paramenters specified. Using regular API for making connection. 
15/05/29 15:25:07 ERROR sqoop.Sqoop: Got exception running Sqoop: java.lang.NullPointerException 
java.lang.NullPointerException 
     at org.apache.sqoop.manager.OracleManager.listDatabases(OracleManager.java:695) 
     at org.apache.sqoop.tool.ListDatabasesTool.run(ListDatabasesTool.java:49) 
     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) 

是否因为授予权限而发生此错误?我是否需要授予任何权限?或者这是一个连接错误?

+0

可以试试这个http://stackoverflow.com/questions/29418270/sqoop-getting-java-lang-nullpointerexception-when-trying-to-connect-to-oracle –

回答

0

我围绕sqoop命令工作,发现了这个解决方案。它为我工作。 我从cmd中ping出了主机名,发现了它正在ping的IP地址。 我用sqadop执行命令中的ipaddress替换了主机名,它正在工作。