hadoop中的sqoop工具的使用

在Hadoop集群上面使用数据库导入数据工具:sqoop(这个工具的作用就是将服务器或者本地MySQL数据库单表或者多表联合查询出来的数据直接上传到hadoop集群中,或者将hadoop集群中的数据迁移到MySQL数据库当中)

1.配置工作:

下载sqoop文件:这里我使用的是sqoop-1.4.6.bin__hadoop-2.0.4-alpha.tar

下载connector文件:这个文件是数据库与hadoop集群传输数据的驱动:mysql-connector-java-5.1.38.tar.gz

2.文件的存放路径

(1)在服务器上面保存sqoop文件和jdbc文件的配置:

(2)在服务器中我存放sqoop文件的目录是:/usr/sqoop

(3)把解压过后的jdbc驱动文件拷贝到sqoop文件目录下的lib目录中

3.重命名配置文件

sqoop目录下的conf目录中执行命令:

mv  sqoop-env-template.sh  sqoop-env.sh

在conf目录下,有两个文件sqoop-site.xml和sqoop-site-template.xml内容是完全一样的,不必在意,我们只关心sqoop-site.xml即可。

4.修改配置文件信息:

(1)修改在sqoop目录下的conf目录中的sqoop-env.sh文件信息:vim sqoop-env.sh

 

因为目前还没有使用到HBASE,HIVE,ZOOKEPPER,所以可以把这些功能的环境变量的信息注释掉,以后使用到的时候再去配置即可.

(2)修改sqoop目录下的bin目录中的configure-sqoop文件,把文件中有相关HBASE,HIVE,ZOOKEPPER的信息全部注释掉

5.启动sqoop

在sqoop的bin目录下执行命令:   ./sqoop   

通过此命令来启动sqoop功能

配置sqoop的环境呢变量:

 

成功后,在根目录下输入sqoop命令来查看sqoop能否正常使用:

成功后:

 

6.数据迁移测试:

(向数据库中上传数据)bin目录下输入命令: ./sqoop import --connect jdbc:mysql://(服务器的IP地址):3306/rmsdb --username 你的数据库用户名 --password 数据库密码 --table rae_updatejson(表名称) --cloumns “id,account,icome” --target-dir  -m 1  (启用一个map)

这里面每个参数的含义:

-import;向集群中迁入数据

jdbc:mysql://123.57.210.236:3306:数据库所在的服务器IP地址

-rmsdb:数据库名称

-username:数据库的用户名

-password:数据库密码

--table 数据库里面的表名

 -m 1;启动的mapper数量

--target-dir:数据导入到hdfs中的路径

--cloumns:要导入的表中的列数据

 

迁出数据

:

sqoop export --connectjdbc:mysql://(服务器的IP地址):3306/sqoop --table tb2 --username --password123456 --export-dir 

hdfs://hadoop0:9000/user/hadoop/tb1/part-m-00000

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值