报错信息:

java.lang.Exception: java.io.IOException: java.lang.ClassNotFoundException: info
at org.apache.hadoop.mapred.LocalJobRunner$Job.runTasks(LocalJobRunner.java:492)
at org.apache.hadoop.mapred.LocalJobRunner$Job.run(LocalJobRunner.java:552)
Caused by: java.io.IOException: java.lang.ClassNotFoundException: info
at org.apache.sqoop.mapreduce.TextExportMapper.setup(TextExportMapper.java:70)
at org.apache.hadoop.mapreduce.Mapper.run(Mapper.java:143)
at org.apache.sqoop.mapreduce.AutoProgressMapper.run(AutoProgressMapper.java:64)
at org.apache.hadoop.mapred.MapTask.runNewMapper(MapTask.java:799)
at org.apache.hadoop.mapred.MapTask.run(MapTask.java:347)
at org.apache.hadoop.mapred.LocalJobRunner$Job$MapTaskRunnable.run(LocalJobRunner.java:271)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:511)
at java.util.concurrent.FutureTask.run(FutureTask.java:266)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624)
at java.lang.Thread.run(Thread.java:748)
Caused by: java.lang.ClassNotFoundException: info
at java.net.URLClassLoader.findClass(URLClassLoader.java:382)
at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:349)
at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
at java.lang.Class.forName0(Native Method)
at java.lang.Class.forName(Class.java:348)
at org.apache.sqoop.mapreduce.TextExportMapper.setup(TextExportMapper.java:66)
... 10 more
2021-09-30 12:12:25,768 INFO mapreduce.Job: Job job_local1274913908_0001 running in uber mode : false
2021-09-30 12:12:25,777 INFO mapreduce.Job:  map 0% reduce 0%
2021-09-30 12:12:25,778 INFO mapreduce.Job: Job job_local1274913908_0001 failed with state FAILED due to: NA
2021-09-30 12:12:25,791 INFO mapreduce.Job: Counters: 0
2021-09-30 12:12:25,799 WARN mapreduce.Counters: Group FileSystemCounters is deprecated. Use org.apache.hadoop.mapreduce.FileSystemCounter instead
2021-09-30 12:12:25,801 INFO mapreduce.ExportJobBase: Transferred 0 bytes in 2.1514 seconds (0 bytesc)
2021-09-30 12:12:25,802 WARN mapreduce.Counters: Group org.apache.hadoop.mapred.Task$Counter is deprecated. Use org.apache.hadoop.mapreduce.TaskCounter instead
2021-09-30 12:12:25,802 INFO mapreduce.ExportJobBase: Exported 0 records.
2021-09-30 12:12:25,802 ERROR tool.ExportTool: Error during export: Export job failed!
 
 
解决方法:

解决方法:
当你每次执行失败后,其实在/tmp/sqoop-你的用户名/compile(或者是/tmp/sqoop/compile,可以找找看)文件夹下有许多临时文件夹,文件夹名称为一大串字符,每个文件夹内有对应表名生成的.jar包、.java和.class文件。将这三个文件拷贝到你的sqoop安装目录b文件夹下即可解决。

PS:如果你不知道哪个文件夹下是你这次执行任务产生到文件有两种解决方法:

把文件夹按时间排序,找最新到一个,或者把全部文件夹删除重新执行一遍命令也行(删除文件总有一丝丝风险)。

在执行命令时加上--blind yourdirectory参数,指定生成文件的位置,移动完成后重新执行命令——当然,如果有权限的话可以直接写到你的sqoop安装目录b下,这样可以省去移文件的麻烦。
示例

sqoop export --connect jdbc:mysql://localhost:3306taobao --username root --password 123456 --table user_log --export-dir 
'/user/hive/warehousetaobao.db/inner_user_log' 
--bindir ./ --fields-terminated-by ',';
1
2
3
还有一个错误,可能会遇到:
ERROR tool.ExportTool: Encountered IOException running export job: java.io.IOException: No columns to generate for ClassWriter

原因:多半儿是因为mysql的链接问题,可以看看是不是密码输入错误。

注意
hive表和mysql表字段类型和数量要一致,mysql表编码要指定utf8。
可以暂时不需要安装Zokeeper。

参考:
link1
link2
link3
link4
————————————————

原文链接:https://blog.csdn.net/mbest6/article/details/105606166

hive向mysql导入数据sqoop命令出错的更多相关文章

  1. 使用Sqoop从MySQL导入数据到Hive和HBase 及近期感悟

    使用Sqoop从MySQL导入数据到Hive和HBase 及近期感悟 Sqoop 大数据 Hive HBase ETL 使用Sqoop从MySQL导入数据到Hive和HBase 及近期感悟 基础环境 ...

  2. 使用sqoop从mysql导入数据到hive

      目录 前言 一.使用的导入命令 二.遇到的问题及解决 1. 用文本字段进行分区的问题 2. Hadoop历史服务器Hadoop JobHistory没开启的问题 3. 连接元数据存储数据库报错 4 ...

  3. 教程 | 使用Sqoop从MySQL导入数据到Hive和HBase

    基础环境 sqoop:sqoop-1.4.5+cdh5.3.6+78, hive:hive-0.13.1+cdh5.3.6+397, hbase:hbase-0.98.6+cdh5.3.6+115 S ...

  4. win10安装mysql过程&&链接过程&&备份和导入数据&&grant命令

    win10安装mysql过程&&链接过程&&备份和导入数据&&grant命令   一 .安装 一开始在mysql官网(https://www.mysql ...

  5. mysql导入数据到oracle中

    mysql导入数据到oracle中. 建立Oracle表: CREATE TABLE "GG_USER" ( "USERID" BYTE) NOT NULL, ...

  6. mysql导入数据load data infile用法

    mysql导入数据load data infile用法 基本语法: load data [low_priority] [local] infile 'file_name txt' [replace | ...

  7. MYSQL导入数据出现The MySQL server is running with the --secure-file-priv

    MYSQL导入数据出现The MySQL server is running with the --secure-file-priv option so it cannot execute this ...

  8. Hive数据导入——数据存储在Hadoop分布式文件系统中,往Hive表里面导入数据只是简单的将数据移动到表所在的目录中!

    转自:http://blog.csdn.net/lifuxiangcaohui/article/details/40588929 Hive是基于Hadoop分布式文件系统的,它的数据存储在Hadoop ...

  9. 三十三、MySQL 导入数据

    MySQL 导入数据 本章节我们为大家介绍几种简单的 MySQL 导出的数据的命令. 1.mysql 命令导入 使用 mysql 命令导入语法格式为: mysql -u用户名 -p密码 < 要导 ...

随机推荐

  1. Django settings.py设置 DEBUG=False后静态文件无法加载解决

    解决办法: settings.py 文件 DEBUG = False STATIC_ROOT = os.path.join(BASE_DIR,'static') #新增 urls.py文件(项目的) ...

  2. Linux 文本三剑客之 awk

    Linux 系统中一切皆文件. 文件是个文本.可以读.可以写,如果是二进制文件,还能执行. 在使用Linux的时候,大都是要和各式各样文件打交道.熟悉文本的读取.编辑.筛选就是linux系统管理员的必 ...

  3. Pod 生命周期和重启策略

    Pod 在整个生命周期中被系统定义为各种状态,熟悉 Pod 的各种状态对于理解如何设置 Pod 的调度策略.重启策略是很有必要的. Pod 的状态 状态值 描述 Pending API Server ...

  4. logstash写入kakfa数据丢失的问题

    metricbeat采集系统指标,发送到logstash,再写入kafka,发现kafka中的数据不完整,只有某一个指标, 查找原因发现是logstash配置编码问题,如下: input { beat ...

  5. [第二章]c++学习笔记4(复制构造函数)

    性质 (1)只有一个参数,即被同类对象的引用. 注 起作用的三种情况 注 常量引用参数

  6. 2017final英文语句格式简单检查

    英文书写中,句首字母通常为大写,其余为小写,单词"I"除外,单词与单词之间用一个空格隔开,句中用","断句,句末用"."结束,", ...

  7. 简单的SQl时间序列生成,每次时间间隔10分钟。

    create table #timeseries(Times datetime not null) go declare @firstdate datetime , @lastdate datetim ...

  8. Windows操作系统安全加固基线检测脚本

    一.背景信息 在我们的安全运维工作中经常需要进行安全基线配置和检查,所谓的安全基线配置就是系统的最基础的安全配置,安全基线检查涉及操作系统.中间件.数据库.甚至是交换机等网络基础设备的检查,面对如此繁 ...

  9. [loj2977]巧克力

    先考虑第一个问题,即求最小的巧克力块数 将这张网格图建图(仅对$c_{i,j}\ne -1$的位置建点),即求点数最少的连通块(的点数)使得存在$k$个不同的$c_{i,j}$ (以下$c$仅用一维数 ...

  10. [luogu5438]记忆

    令$f(x)=\frac{x}{\max_{k^{2}|x}k^{2}}$,最优解即将$f(l),f(l+1),...,f(r)$排序,那么每存在一种不同的数则答案减1,那么$x$出现当且仅当$f(x ...