周海汉/文 2013.8.22 环境 hive 版本hive-0.11.0 sqoop 版本?sqoop-1.4.4.bin__hadoop-1.0.0 从hive导到mysql mysql 表: mysql desc cps_activation; ++-++++-+ | field | type | null | key | default | extra | ++-++++-+ | id | int(11) | no | pri | nu
周海汉/文 2013.8.22
环境hive 版本hive-0.11.0
sqoop 版本?sqoop-1.4.4.bin__hadoop-1.0.0
从hive导到mysql
mysql 表:
mysql> desc cps_activation;
+————+————-+——+—–+———+—————-+
| field | type | null | key | default | extra |
+————+————-+——+—–+———+—————-+
| id | int(11) | no | pri | null | auto_increment |
| day | date | no | mul | null | |
| pkgname | varchar(50) | yes | | null | |
| cid | varchar(50) | yes | | null | |
| pid | varchar(50) | yes | | null | |
| activation | int(11) | yes | | null | |
+————+————-+——+—–+———+—————-+
6 rows in set (0.01 sec)
hive表
hive> desc active;
ok
id int none
day string none
pkgname string none
cid string none
pid string none
activation int none
测试链接成功[hadoop@hs11 ~]sqoop list-databases –connect jdbc:mysql://localhost:3306/ –username root –password admin
warning: /usr/lib/hcatalog does not exist! hcatalog jobs will fail.
please set $hcat_home to the root of your hcatalog installation.
13/08/20 16:42:26 warn tool.basesqooptool: setting your password on the command-line is insecure. consider using -p instead.
13/08/20 16:42:26 info manager.mysqlmanager: preparing to use a mysql streaming resultset.
information_schema
easyhadoop
mysql
test
[hadoop@hs11 ~]$ sqoop list-databases –connect jdbc:mysql://localhost:3306/test –username root –password admin
warning: /usr/lib/hcatalog does not exist! hcatalog jobs will fail.
please set $hcat_home to the root of your hcatalog installation.
13/08/20 16:42:40 warn tool.basesqooptool: setting your password on the command-line is insecure. consider using -p instead.
13/08/20 16:42:40 info manager.mysqlmanager: preparing to use a mysql streaming resultset.
information_schema
easyhadoop
mysql
test
[hadoop@hs11 ~]$ sqoop list-tables –connect jdbc:mysql://localhost:3306/test –username root –password admin
warning: /usr/lib/hcatalog does not exist! hcatalog jobs will fail.
please set $hcat_home to the root of your hcatalog installation.
13/08/20 16:42:54 warn tool.basesqooptool: setting your password on the command-line is insecure. consider using -p instead.
13/08/20 16:42:54 info manager.mysqlmanager: preparing to use a mysql streaming resultset.
active
[hadoop@hs11 ~]$? sqoop create-hive-table –connect jdbc:mysql://localhost:3306/test –table active –username root –password admin –hive-table test
warning: /usr/lib/hcatalog does not exist! hcatalog jobs will fail.
please set $hcat_home to the root of your hcatalog installation.
13/08/20 16:57:04 warn tool.basesqooptool: setting your password on the command-line is insecure. consider using -p instead.
13/08/20 16:57:04 info tool.basesqooptool: using hive-specific delimiters for output. you can override
13/08/20 16:57:04 info tool.basesqooptool: delimiters with –fields-terminated-by, etc.
13/08/20 16:57:04 warn tool.basesqooptool: it seems that you’ve specified at least one of following:
13/08/20 16:57:04 warn tool.basesqooptool:? –hive-home
13/08/20 16:57:04 warn tool.basesqooptool:? –hive-overwrite
13/08/20 16:57:04 warn tool.basesqooptool:? –create-hive-table
13/08/20 16:57:04 warn tool.basesqooptool:? –hive-table
13/08/20 16:57:04 warn tool.basesqooptool:? –hive-partition-key
13/08/20 16:57:04 warn tool.basesqooptool:? –hive-partition-value
13/08/20 16:57:04 warn tool.basesqooptool:? –map-column-hive
13/08/20 16:57:04 warn tool.basesqooptool: without specifying parameter –hive-import. please note that
13/08/20 16:57:04 warn tool.basesqooptool: those arguments will not be used in this session. either
13/08/20 16:57:04 warn tool.basesqooptool: specify –hive-import to apply them correctly or remove them
13/08/20 16:57:04 warn tool.basesqooptool: from command line to remove this warning.
13/08/20 16:57:04 info tool.basesqooptool: please note that –hive-home, –hive-partition-key,
13/08/20 16:57:04 info tool.basesqooptool: hive-partition-value and –map-column-hive options are
13/08/20 16:57:04 info tool.basesqooptool: are also valid for hcatalog imports and exports
13/08/20 16:57:04 info manager.mysqlmanager: preparing to use a mysql streaming resultset.
13/08/20 16:57:05 info manager.sqlmanager: executing sql statement: select t.* from `active` as t limit 1
13/08/20 16:57:05 info manager.sqlmanager: executing sql statement: select t.* from `active` as t limit 1
13/08/20 16:57:05 warn hive.tabledefwriter: column day had to be cast to a less precise type in hive
13/08/20 16:57:05 info hive.hiveimport: loading uploaded data into hive
1、拒绝连接[hadoop@hs11 ~]$ sqoop export –connect jdbc:mysql://localhost/test –username root? –password admin –table test –export-dir /user/hive/warehouse/actmp
warning: /usr/lib/hcatalog does not exist! hcatalog jobs will fail.
please set $hcat_home to the root of your hcatalog installation.
13/08/21 09:14:07 warn tool.basesqooptool: setting your password on the command-line is insecure. consider using -p instead.
13/08/21 09:14:07 info manager.mysqlmanager: preparing to use a mysql streaming resultset.
13/08/21 09:14:07 info tool.codegentool: beginning code generation
13/08/21 09:14:07 info manager.sqlmanager: executing sql statement: select t.* from `test` as t limit 1
13/08/21 09:14:07 info manager.sqlmanager: executing sql statement: select t.* from `test` as t limit 1
13/08/21 09:14:07 info orm.compilationmanager: hadoop_mapred_home is /home/hadoop/hadoop-1.1.2
note: /tmp/sqoop-hadoop/compile/0b5cae714a00b3940fb793c3694408ac/test.java uses or overrides a deprecated api.
note: recompile with -xlint:deprecation for details.
13/08/21 09:14:08 info orm.compilationmanager: writing jar file: /tmp/sqoop-hadoop/compile/0b5cae714a00b3940fb793c3694408ac/test.jar
13/08/21 09:14:08 info mapreduce.exportjobbase: beginning export of test
13/08/21 09:14:09 info input.fileinputformat: total input paths to process : 1
13/08/21 09:14:09 info input.fileinputformat: total input paths to process : 1
13/08/21 09:14:09 info util.nativecodeloader: loaded the native-hadoop library
13/08/21 09:14:09 warn snappy.loadsnappy: snappy native library not loaded
13/08/21 09:14:10 info mapred.jobclient: running job: job_201307251523_0059
13/08/21 09:14:11 info mapred.jobclient:? map 0% reduce 0%
13/08/21 09:14:20 info mapred.jobclient: task id : attempt_201307251523_0059_m_000000_0, status : failed
java.io.ioexception: com.mysql.jdbc.communicationsexception: communications link failure due to underlying exception:
** begin nested exception **
java.net.connectexception
message: connection refused
stacktrace:
java.net.connectexception: connection refused
at java.net.plainsocketimpl.socketconnect(native method)
at java.net.plainsocketimpl.doconnect(plainsocketimpl.java:351)
at java.net.plainsocketimpl.connecttoaddress(plainsocketimpl.java:213)
at java.net.plainsocketimpl.connect(plainsocketimpl.java:200)
at java.net.sockssocketimpl.connect(sockssocketimpl.java:366)
at java.net.socket.connect(socket.java:529)
at java.net.socket.connect(socket.java:478)
at java.net.socket.(socket.java:375)
at java.net.socket.(socket.java:218)
at com.mysql.jdbc.standardsocketfactory.connect(standardsocketfactory.java:256)
at com.mysql.jdbc.mysqlio.(mysqlio.java:271)
at com.mysql.jdbc.connection.createnewio(connection.java:2771)
at com.mysql.jdbc.connection.(connection.java:1555)
at com.mysql.jdbc.nonregisteringdriver.connect(nonregisteringdriver.java:285)
at java.sql.drivermanager.getconnection(drivermanager.java:582)
at java.sql.drivermanager.getconnection(drivermanager.java:185)
at org.apache.sqoop.mapreduce.db.dbconfiguration.getconnection(dbconfiguration.java:294)
at org.apache.sqoop.mapreduce.asyncsqlrecordwriter.(asyncsqlrecordwriter.java:76)
at org.apache.sqoop.mapreduce.exportoutputformat$exportrecordwriter.(exportoutputformat.java:95)
at org.apache.sqoop.mapreduce.exportoutputformat.getrecordwriter(exportoutputformat.java:77)
at org.apache.hadoop.mapred.maptask$newdirectoutputcollector.(maptask.java:628)
at org.apache.hadoop.mapred.maptask.runnewmapper(maptask.java:753)
at org.apache.hadoop.mapred.maptask.run(maptask.java:370)
at org.apache.hadoop.mapred.child$4.run(child.java:255)
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:1149)
at org.apache.hadoop.mapred.child.main(child.java:249)
** end nested exception **
last packet sent to the server was 1 ms ago.
at org.apache.sqoop.mapreduce.exportoutputformat.getrecordwriter(exportoutputformat.java:79)
at org.apache.hadoop.mapred.maptask$newdirectoutputcollector.(maptask.java:628)
at org.apache.hadoop.mapred.maptask.runnewmapper(maptask.java:753)
at org.apache.hadoop.mapred.maptask.run(maptask.java:370)
at org.apache.hadoop.mapred.child$4.run(child.java:255)
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:1149)
at org.apache.hadoop.mapred.child.main(child.java:249)
caused by: com.mysql.jdbc.communicationsexception: communications link failure due to underlying exception:
** begin nested exception **
java.net.connectexception
message: connection refused
mysql 用户权限问题
?mysql> show grants;
mysql> grant all privileges on *.* to ‘root’@'%’ identified by password ‘*4acfe3202a5ff5cf467898fc58aab1d615029441′ with grant option;
mysql> flush privileges;
mysql> create table test (mkey varchar(30),pkg varchar(50),cid varchar(20),pid varchar(50),count int,primary key(mkey,pkg,cid,pid) );
alter ignore table cps_activation add unique index_day_pkgname_cid_pid (`day`,`pkgname`,`cid`,`pid`);
query ok, 0 rows affected (0.03 sec)
2. 表不存在===========
[hadoop@hs11 ~]$ sqoop export –connect jdbc:mysql://10.10.20.11/test –username root? –password admin –table test –export-dir /user/hive/warehouse/actmp
warning: /usr/lib/hcatalog does not exist! hcatalog jobs will fail.
please set $hcat_home to the root of your hcatalog installation.
13/08/21 09:16:26 warn tool.basesqooptool: setting your password on the command-line is insecure. consider using -p instead.
13/08/21 09:16:26 info manager.mysqlmanager: preparing to use a mysql streaming resultset.
13/08/21 09:16:26 info tool.codegentool: beginning code generation
13/08/21 09:16:27 info manager.sqlmanager: executing sql statement: select t.* from `test` as t limit 1
13/08/21 09:16:27 info manager.sqlmanager: executing sql statement: select t.* from `test` as t limit 1
13/08/21 09:16:27 info orm.compilationmanager: hadoop_mapred_home is /home/hadoop/hadoop-1.1.2
note: /tmp/sqoop-hadoop/compile/74d18a91ec141f2feb777dc698bf7eb4/test.java uses or overrides a deprecated api.
note: recompile with -xlint:deprecation for details.
13/08/21 09:16:28 info orm.compilationmanager: writing jar file: /tmp/sqoop-hadoop/compile/74d18a91ec141f2feb777dc698bf7eb4/test.jar
13/08/21 09:16:28 info mapreduce.exportjobbase: beginning export of test
13/08/21 09:16:29 info input.fileinputformat: total input paths to process : 1
13/08/21 09:16:29 info input.fileinputformat: total input paths to process : 1
13/08/21 09:16:29 info util.nativecodeloader: loaded the native-hadoop library
13/08/21 09:16:29 warn snappy.loadsnappy: snappy native library not loaded
13/08/21 09:16:29 info mapred.jobclient: running job: job_201307251523_0060
13/08/21 09:16:30 info mapred.jobclient:? map 0% reduce 0%
13/08/21 09:16:38 info mapred.jobclient: task id : attempt_201307251523_0060_m_000000_0, status : failed
java.io.ioexception: can’t export data, please check task tracker logs
at org.apache.sqoop.mapreduce.textexportmapper.map(textexportmapper.java:112)
at org.apache.sqoop.mapreduce.textexportmapper.map(textexportmapper.java:39)
at org.apache.hadoop.mapreduce.mapper.run(mapper.java:144)
at org.apache.sqoop.mapreduce.autoprogressmapper.run(autoprogressmapper.java:64)
at org.apache.hadoop.mapred.maptask.runnewmapper(maptask.java:764)
at org.apache.hadoop.mapred.maptask.run(maptask.java:370)
at org.apache.hadoop.mapred.child$4.run(child.java:255)
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:1149)
at org.apache.hadoop.mapred.child.main(child.java:249)
caused by: java.util.nosuchelementexception
at java.util.abstractlist$itr.next(abstractlist.java:350)
at test.__loadfromfields(test.java:252)
at test.parse(test.java:201)
at org.apache.sqoop.mapreduce.textexportmapper.map(textexportmapper.java:83)
… 10 more
导出数据到mysql,当然数据库表要先存在,否则会报错
此错误的原因为sqoop解析文件的字段与mysql数据库的表的字段对应不上造成的。因此需要在执行的时候给sqoop增加参数,告诉sqoop文件的分隔符,使它能够正确的解析文件字段。hive默认的字段分隔符为’\001′
===========
3. null字段填充符需指定没有指定null字段分隔符,导致错位。
[hadoop@hs11 ~]$ sqoop export –connect jdbc:mysql://10.10.20.11/test –username root? –password admin –table test –export-dir /user/hive/warehouse/actmp –input-fields-tminated-by ‘\001′
warning: /usr/lib/hcatalog does not exist! hcatalog jobs will fail.
please set $hcat_home to the root of your hcatalog installation.
13/08/21 09:21:07 warn tool.basesqooptool: setting your password on the command-line is insecure. consider using -p instead.
13/08/21 09:21:07 info manager.mysqlmanager: preparing to use a mysql streaming resultset.
13/08/21 09:21:07 info tool.codegentool: beginning code generation
13/08/21 09:21:07 info manager.sqlmanager: executing sql statement: select t.* from `test` as t limit 1
13/08/21 09:21:07 info manager.sqlmanager: executing sql statement: select t.* from `test` as t limit 1
13/08/21 09:21:07 info orm.compilationmanager: hadoop_mapred_home is /home/hadoop/hadoop-1.1.2
note: /tmp/sqoop-hadoop/compile/04d183c9e534cdb8d735e1bdc4be3deb/test.java uses or overrides a deprecated api.
note: recompile with -xlint:deprecation for details.
13/08/21 09:21:08 info orm.compilationmanager: writing jar file: /tmp/sqoop-hadoop/compile/04d183c9e534cdb8d735e1bdc4be3deb/test.jar
13/08/21 09:21:08 info mapreduce.exportjobbase: beginning export of test
13/08/21 09:21:09 info input.fileinputformat: total input paths to process : 1
13/08/21 09:21:09 info input.fileinputformat: total input paths to process : 1
13/08/21 09:21:09 info util.nativecodeloader: loaded the native-hadoop library
13/08/21 09:21:09 warn snappy.loadsnappy: snappy native library not loaded
13/08/21 09:21:10 info mapred.jobclient: running job: job_201307251523_0061
13/08/21 09:21:11 info mapred.jobclient:? map 0% reduce 0%
13/08/21 09:21:17 info mapred.jobclient:? map 25% reduce 0%
13/08/21 09:21:19 info mapred.jobclient:? map 50% reduce 0%
13/08/21 09:21:21 info mapred.jobclient: task id : attempt_201307251523_0061_m_000001_0, status : failed
java.io.ioexception: can’t export data, please check task tracker logs
at org.apache.sqoop.mapreduce.textexportmapper.map(textexportmapper.java:112)
at org.apache.sqoop.mapreduce.textexportmapper.map(textexportmapper.java:39)
at org.apache.hadoop.mapreduce.mapper.run(mapper.java:144)
at org.apache.sqoop.mapreduce.autoprogressmapper.run(autoprogressmapper.java:64)
at org.apache.hadoop.mapred.maptask.runnewmapper(maptask.java:764)
at org.apache.hadoop.mapred.maptask.run(maptask.java:370)
at org.apache.hadoop.mapred.child$4.run(child.java:255)
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:1149)
at org.apache.hadoop.mapred.child.main(child.java:249)
caused by: java.lang.numberformatexception: for input string: “665a5ffa-32c9-9463-1943-840a5feae193″
at java.lang.numberformatexception.forinputstring(numberformatexception.java:48)
at java.lang.integer.parseint(integer.java:458)
at java.lang.integer.valueof(integer.java:554)
at test.__loadfromfields(test.java:264)
at test.parse(test.java:201)
at org.apache.sqoop.mapreduce.textexportmapper.map(textexportmapper.java:83)
… 10 more
===========
4.成功[hadoop@hs11 ~]$ sqoop export –connect jdbc:mysql://10.10.20.11/test –username root? –password admin –table test –export-dir /user/hive/warehouse/actmp –input-fields-terminated-by ‘\001′ –input-null-string ‘\\n’ –input-null-non-string ‘\\n’
warning: /usr/lib/hcatalog does not exist! hcatalog jobs will fail.
please set $hcat_home to the root of your hcatalog installation.
13/08/21 09:36:13 warn tool.basesqooptool: setting your password on the command-line is insecure. consider using -p instead.
13/08/21 09:36:13 info manager.mysqlmanager: preparing to use a mysql streaming resultset.
13/08/21 09:36:13 info tool.codegentool: beginning code generation
13/08/21 09:36:13 info manager.sqlmanager: executing sql statement: select t.* from `test` as t limit 1
13/08/21 09:36:13 info manager.sqlmanager: executing sql statement: select t.* from `test` as t limit 1
13/08/21 09:36:13 info orm.compilationmanager: hadoop_mapred_home is /home/hadoop/hadoop-1.1.2
note: /tmp/sqoop-hadoop/compile/e22d31391498b790d799897cde25047d/test.java uses or overrides a deprecated api.
note: recompile with -xlint:deprecation for details.
13/08/21 09:36:14 info orm.compilationmanager: writing jar file: /tmp/sqoop-hadoop/compile/e22d31391498b790d799897cde25047d/test.jar
13/08/21 09:36:14 info mapreduce.exportjobbase: beginning export of test
13/08/21 09:36:15 info input.fileinputformat: total input paths to process : 1
13/08/21 09:36:15 info input.fileinputformat: total input paths to process : 1
13/08/21 09:36:15 info util.nativecodeloader: loaded the native-hadoop library
13/08/21 09:36:15 warn snappy.loadsnappy: snappy native library not loaded
13/08/21 09:36:16 info mapred.jobclient: running job: job_201307251523_0064
13/08/21 09:36:17 info mapred.jobclient:? map 0% reduce 0%
13/08/21 09:36:23 info mapred.jobclient:? map 25% reduce 0%
13/08/21 09:36:25 info mapred.jobclient:? map 100% reduce 0%
13/08/21 09:36:27 info mapred.jobclient: job complete: job_201307251523_0064
13/08/21 09:36:27 info mapred.jobclient: counters: 18
13/08/21 09:36:27 info mapred.jobclient: job counters
13/08/21 09:36:27 info mapred.jobclient: slots_millis_maps=13151
13/08/21 09:36:27 info mapred.jobclient: total time spent by all reduces waiting after reserving slots (ms)=0
13/08/21 09:36:27 info mapred.jobclient: total time spent by all maps waiting after reserving slots (ms)=0
13/08/21 09:36:27 info mapred.jobclient: rack-local map tasks=2
13/08/21 09:36:27 info mapred.jobclient: launched map tasks=4
13/08/21 09:36:27 info mapred.jobclient: slots_millis_reduces=0
13/08/21 09:36:27 info mapred.jobclient: file output format counters
13/08/21 09:36:27 info mapred.jobclient: bytes written=0
13/08/21 09:36:27 info mapred.jobclient: filesystemcounters
13/08/21 09:36:27 info mapred.jobclient: hdfs_bytes_read=1519
13/08/21 09:36:27 info mapred.jobclient: file_bytes_written=234149
13/08/21 09:36:27 info mapred.jobclient: file input format counters
13/08/21 09:36:27 info mapred.jobclient: bytes read=0
13/08/21 09:36:27 info mapred.jobclient: map-reduce framework
13/08/21 09:36:27 info mapred.jobclient: map input records=6
13/08/21 09:36:27 info mapred.jobclient: physical memory (bytes) snapshot=663863296
13/08/21 09:36:27 info mapred.jobclient: spilled records=0
13/08/21 09:36:27 info mapred.jobclient: cpu time spent (ms)=3720
13/08/21 09:36:27 info mapred.jobclient: total committed heap usage (bytes)=2013790208
13/08/21 09:36:27 info mapred.jobclient: virtual memory (bytes) snapshot=5583151104
13/08/21 09:36:27 info mapred.jobclient: map output records=6
13/08/21 09:36:27 info mapred.jobclient: split_raw_bytes=571
13/08/21 09:36:27 info mapreduce.exportjobbase: transferred 1.4834 kb in 12.1574 seconds (124.9446 bytes/sec)
13/08/21 09:36:27 info mapreduce.exportjobbase: exported 6 records.
———-
5. mysql字符串长度定义太短,存不下java.io.ioexception: com.mysql.jdbc.mysqldatatruncation: data truncation: data too long for column ‘pid’ at row 1
at org.apache.sqoop.mapreduce.asyncsqlrecordwriter.close(asyncsqlrecordwriter.java:192)
at org.apache.hadoop.mapred.maptask$newdirectoutputcollector.close(maptask.java:651)
at org.apache.hadoop.mapred.maptask.runnewmapper(maptask.java:766)
at org.apache.hadoop.mapred.maptask.run(maptask.java:370)
at org.apache.hadoop.mapred.child$4.run(child.java:255)
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:1149)
at org.apache.hadoop.mapred.child.main(child.java:249)
caused by: com.mysql.jdbc.mysqldatatruncation: data truncation: data too long for column ‘pid’ at row 1
at com.mysql.jdbc.mysqlio.checkerrorpacket(mysqlio.java:2983)
at com.mysql.jdbc.mysqlio.sendcommand(mysqlio.java:1631)
at com.mysql.jdbc.mysqlio.sqlquerydirect(mysqlio.java:1723)
at com.mysql.jdbc.connection.execsql(connection.java:3283)
at com.mysql.jdbc.preparedstatement.executeinternal(preparedstatement.java:1332)
at com.mysql.jdbc.preparedstatement.execute(preparedstatement.java:882)
at org.apache.sqoop.mapreduce.asyncsqloutputformat$asyncsqlexecthread.run(asyncsqloutputformat.java:233)
———————-
6.日期格式问题mysql date日期格式,hive中字符串必须是yyyy-mm-dd, 我原来使用yyyymmdd,报下面的错误。
13/08/21 17:42:44 info mapred.jobclient: task id : attempt_201307251523_0079_m_000000_1, status : failed
java.io.ioexception: can’t export data, please check task tracker logs
at org.apache.sqoop.mapreduce.textexportmapper.map(textexportmapper.java:112)
at org.apache.sqoop.mapreduce.textexportmapper.map(textexportmapper.java:39)
at org.apache.hadoop.mapreduce.mapper.run(mapper.java:144)
at org.apache.sqoop.mapreduce.autoprogressmapper.run(autoprogressmapper.java:64)
at org.apache.hadoop.mapred.maptask.runnewmapper(maptask.java:764)
at org.apache.hadoop.mapred.maptask.run(maptask.java:370)
at org.apache.hadoop.mapred.child$4.run(child.java:255)
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:1149)
at org.apache.hadoop.mapred.child.main(child.java:249)
caused by: java.lang.illegalargumentexception
at java.sql.date.valueof(date.java:138)
at cps_activation.__loadfromfields(cps_activation.java:308)
at cps_activation.parse(cps_activation.java:255)
at org.apache.sqoop.mapreduce.textexportmapper.map(textexportmapper.java:83)
… 10 more
———————-
7. 字段对不上或字段类型不一致caused by: java.lang.numberformatexception: for input string: “06701a4a-0808-e9a8-0d28-a8020b494e37″
at java.lang.numberformatexception.forinputstring(numberformatexception.java:48)
at java.lang.integer.parseint(integer.java:458)
at java.lang.integer.valueof(integer.java:554)
at test.__loadfromfields(test.java:264)
at test.parse(test.java:201)
at org.apache.sqoop.mapreduce.textexportmapper.map(textexportmapper.java:83)
… 10 more
相关博文:
从mysql将数据导入hivesqoop 1.99 安装配置用sqoop进行mysql和hdfs系统间的数据互导 原文地址:sqoop 从 hive 导到mysql遇到的问题, 感谢原作者分享。
