在sqoop中执行了以下语句:
./sqoop import --connect 'jdbc:sqlserver://192.168.1.1;username=sa;password=sa;database=wellmount_backup' --table dn_test_rdr1 --hive-import -m 1
执行后报错,报错代码如下:
13/12/27 14:10:42 INFO tool.BaseSqoopTool: Using Hive-specific delimiters for output. You can override
13/12/27 14:10:42 INFO tool.BaseSqoopTool: delimiters with --fields-terminated-by, etc.
13/12/27 14:10:42 INFO manager.SqlManager: Using default fetchSize of 1000
13/12/27 14:10:42 INFO tool.CodeGenTool: Beginning code generation
13/12/27 14:10:42 INFO manager.SqlManager: Executing SQL statement: SELECT t.* FROM [dn_test_rdr1] AS t WHERE 1=0
13/12/27 14:10:42 INFO orm.CompilationManager: HADOOP_MAPRED_HOME is /home/nappor/hadoop-1.2.1
/tmp/sqoop-nappor/compile/f1aaf9c56e044dab339a644f8e6fccd2/dn_test_rdr1.java:2931: 找不到符号
符号: 方法 readString(java.io.DataInput)
位置: 类 java.lang.String
this.BaseRef = Text.readString(__dataIn);
^
/tmp/sqoop-nappor/compile/f1aaf9c56e044dab339a644f8e6fccd2/dn_test_rdr1.java:2951: 找不到符号
符号: 方法 readString(java.io.DataInput)
位置: 类 java.lang.String
this.LineStatus = Text.readString(__dataIn);
^
/tmp/sqoop-nappor/compile/f1aaf9c56e044dab339a644f8e6fccd2/dn_test_rdr1.java:2956: 找不到符号
符号: 方法 readString(java.io.DataInput)
位置: 类 java.lang.String
this.ItemCode = Text.readString(__dataIn);
^
/tmp/sqoop-nappor/compile/f1aaf9c56e044dab339a644f8e6fccd2/dn_test_rdr1.java:2961: 找不到符号
符号: 方法 readString(java.io.DataInput)
位置: 类 java.lang.String
this.Dscription = Text.readString(__dataIn);
^
/tmp/sqoop-nappor/compile/f1aaf9c56e044dab339a644f8e6fccd2/dn_test_rdr1.java:2987: 找不到符号
符号: 方法 readString(java.io.DataInput)
位置: 类 java.lang.String
this.Currency = Text.readString(__dataIn);
/tmp/sqoop-nappor/compile/f1aaf9c56e044dab339a644f8e6fccd2/dn_test_rdr1.java:4420: 找不到符号
符号: 方法 writeString(java.io.DataOutput,java.lang.String)
位置: 类 java.lang.String
Text.writeString(__dataOut, ImportLog);
^
/tmp/sqoop-nappor/compile/f1aaf9c56e044dab339a644f8e6fccd2/dn_test_rdr1.java:4444: 找不到符号
符号: 方法 writeString(java.io.DataOutput,java.lang.String)
位置: 类 java.lang.String
Text.writeString(__dataOut, IsAqcuistn);
^
/tmp/sqoop-nappor/compile/f1aaf9c56e044dab339a644f8e6fccd2/dn_test_rdr1.java:4504: 找不到符号
符号: 方法 writeString(java.io.DataOutput,java.lang.String)
位置: 类 java.lang.String
Text.writeString(__dataOut, PoTrgEntry);
^
/tmp/sqoop-nappor/compile/f1aaf9c56e044dab339a644f8e6fccd2/dn_test_rdr1.java:4510: 找不到符号
符号: 方法 writeString(java.io.DataOutput,java.lang.String)
位置: 类 java.lang.String
Text.writeString(__dataOut, DropShip);
^
/tmp/sqoop-nappor/compile/f1aaf9c56e044dab339a644f8e6fccd2/dn_test_rdr1.java:4522: 找不到符号
符号: 方法 writeString(java.io.DataOutput,java.lang.String)
位置: 类 java.lang.String
Text.writeString(__dataOut, Address);
^
注意:/tmp/sqoop-nappor/compile/f1aaf9c56e044dab339a644f8e6fccd2/dn_test_rdr1.java 使用或覆盖了已过时的 API。
注意:要了解详细信息,请使用 -Xlint:deprecation 重新编译。
100 错误
13/12/27 14:10:44 ERROR tool.ImportTool: Encountered IOException running import job: java.io.IOException: Error returned by javac
at org.apache.sqoop.orm.CompilationManager.compile(CompilationManager.java:207)
at org.apache.sqoop.tool.CodeGenTool.generateORM(CodeGenTool.java:97)
at org.apache.sqoop.tool.ImportTool.importTable(ImportTool.java:396)
at org.apache.sqoop.tool.ImportTool.run(ImportTool.java:502)
at org.apache.sqoop.Sqoop.run(Sqoop.java:145)
at org.apache.hadoop.util.ToolRunner.run(ToolRunner.java:65)
at org.apache.sqoop.Sqoop.runSqoop(Sqoop.java:181)
at org.apache.sqoop.Sqoop.runTool(Sqoop.java:220)
at org.apache.sqoop.Sqoop.runTool(Sqoop.java:229)
at org.apache.sqoop.Sqoop.main(Sqoop.java:238)
同样类似的语句执行别的表时却没有报错,请问下这是什么原因?
你试试指定一下导入的字段。回复<aclass='referer'target='_blank'>@吐槽的达达仔:谢谢!!<atarget='_blank'>@ning397有可能是sqoop在读取SQLSERVER的元数据的时候,出现了异常。我这里使用都是指定字段的方式,这样的好处在于,不会由于数据库字段增加导致出现数据导入异常。银次:最新版的sqoop包里面好像已经有sqlserver的驱动了。我指定了几个字段导入是没有问题的,不指定字段就有问题了。难道是列数还有限制?高手们帮我解决下!!!你有装sqlserver的驱动吗??表名换成全部大写试试大小写都尝试过了,包括字段的大小写,跟SQLServer的完全一致我在javaweb工程下操作,报这个错误,但是在javase的工程下运行正常,不知为什么!您好,您解决了么,我了是这个问题呢
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。