使用sqoop做桥梁实现oracle和hdfs之前数据互导(问题和心得)

首先:版本号

sqoop1.99.6 (也就是sqoop2)

hadoop2.6.0

。。。。


之前说过了hadoop的安装和配置。在这就不多说了。

sqoop的安装和配置我也是照的文档一步步来的。。。。下面是几张比较有用飞机票:


sqoop2安装

sqoop2安装(较详细)


基本差不多;;;


下面啰嗦一下我遇到的一些问题(俗话说得好:有问题看日志。日志路径:${sqoop_home}/logs/sqoop.log 和 ${sqoop_home}/server/logs/catalina.out)

1. jdbc问题

安装完sqoop,进入客户端。

输入以下命令 show connector 可以清楚地看到

link config 1:
Name: linkConfig
Label: Link configuration
Help: You must supply the information requested in order to create a link object.
Input 1:
Name: linkConfig.jdbcDriver
Label: JDBC Driver Class
Help: Enter the fully qualified class name of the JDBC driver that will be used for establishing this connection.Note: The driver jar must be in the sqoop lib directory.

也就是说,要将 jar包放到 sqoop/lib 文件夹下。没有的话新建一个。按理说就可以了。。。但是我还是报错,大体意思就是找不到ojdbc.jar。上网找了半天,我就试着把jar包在webapps里面也放了一个。结果可以了。 路径是:sqoop/server/sqoop/webapps/web_inf/lib (论坛那群老玻璃,发个帖半天不回)


2.hdfs向oracle导数据(export)

问题1 文件的分隔符

只能是‘,’分隔。不要问为什么,,,代码中写死了。如果要改,只能是改代码,重新编译

问题2 master:10020 拒绝访问

这个问题不常见。是服务未开启。飞机票:10020号端口

3.oracle向hdfs导数据(import)

主要问题就是create job的时候参数填写。

下面给官方的demo import demo




再给几个我当时参考的文章。


针对sqoop1.99.6 从jdbc向hdfs中抽取数据的几点感想

Sqoop2从Mysql导入Hdfs (hadoop-2.7.1,Sqoop 1.99.6)

Sqoop1.99.3基础操作 导入Oracle的数据到HDFS



mysql和oracle一样的。就是create link的时候,有两个地方不一样。


再一次谢谢各位的飞机票,就不一一写了

你可能感兴趣的:(使用sqoop做桥梁实现oracle和hdfs之前数据互导(问题和心得))