2017-04-05 1 views
1

ojdbc jarをクラスタのsqoopのlibに置く権限がないため、sqlopを使用してOracle 11gからデータをインポートしています。-libjarsを使用して明示的にjarを提供していますが、私が使用している.theのコードは次のとおりです。 sqoop eval -libjars /root/shared_folder/ojdbc6.jar --driver oracle.jdbc.OracleDriver --connect jdbc:oracle:thin:@127.0.0.1:1521:XE --username srivastavaaman --password manager --query 'SELECT * from TestTable1' ojdbc6コネクタを使用したSqoopのインポート

次の出力は次のとおりです。 Warning: /usr/lib/sqoop/../accumulo does not exist! Accumulo imports will fail. Please set $ACCUMULO_HOME to the root of your Accumulo installation. 17/04/05 02:48:40 INFO sqoop.Sqoop: Running Sqoop version: 1.4.4.2.1.1.0-385 17/04/05 02:48:41 WARN tool.BaseSqoopTool: Setting your password on the command-line is insecure. Consider using -P instead. 17/04/05 02:48:41 WARN sqoop.ConnFactory: Parameter --driver is set to an explicit driver however appropriate connection manager is not being set (via --connection-manager). Sqoop is going to fall back to org.apache.sqoop.manager.GenericJdbcManager. Please specify explicitly which connection manager should be used next time. 17/04/05 02:48:41 INFO manager.SqlManager: Using default fetchSize of 1000 17/04/05 02:48:41 ERROR sqoop.Sqoop: Got exception running Sqoop: java.lang.RuntimeException: Could not load db driver class: oracle.jdbc.OracleDriver java.lang.RuntimeException: Could not load db driver class: oracle.jdbc.OracleDriver at org.apache.sqoop.manager.SqlManager.makeConnection(SqlManager.java:797) at org.apache.sqoop.manager.GenericJdbcManager.getConnection(GenericJdbcManager.java:52) at org.apache.sqoop.tool.EvalSqlTool.run(EvalSqlTool.java:64) 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)

同じ場合はojdbc6.jarは、それが正常に動作しているローカルマシンにsqoopのlibに配置されている場合。

答えて

0

引数は通常Sqoopでは使用されませんが、Hadoopの内部引数解析システムの一部として追加されます。

$HADOOP_CLASSPATH変数にJarファイルのパスを追加します。

export HADOOP_CLASSPATH=$HADOOP_CLASSPATH:/root/shared_folder/ojdbc6.jar 
sqoop eval --driver oracle.jdbc.OracleDriver --connect jdbc:oracle:thin:@127.0.0.1:1521:XE --username ****** --password ***** --query 'SELECT * from TestTable1' 
+1

ありがとうございます!!それは助けになった。 –

関連する問題