sqoop的基本使用 (1)

1. sqoop的基本使用语法:

(一)从关系数据库到HDFS上

  • 需要分区(–split-by )
语法:sh sqoop import --connect jdbc:mysql://ip:3306/数据库名 --username 用户名 --passwword 密码 --table 表名 --target-dir 'HDFS上的文件夹名' --field-terminated-by '分隔符' --split-by 分区的属性;
  • 不需要分区(-m 1)
语法:sh sqoop import --connect jdbc:mysql://ip名:3306/数据库名 --username 用户名 --passwword 密码 --table 表名 --target-dir 'HDFS上的文件夹名' --field-terminated-by '分隔符' -m 1;

注意:–target-dir 是指HDFS上的路径,如果上没有该目录,它会自动创建对应的目录,使用 sh sqoopimport关键字。

(二)HDFS到关系型数据库中

  • 语法
sh sqoop export --connect jdbc:mysql://ip名:3306/数据库名 --username 用户名 --password 密码 -export-dir 'HDFS目录' --table 表名 -m 1 --fields-terminated-by '|';

**注意:**数据库中的表不会自动创建,使用 sh sqoop export关键字。

(三)关系数据库到hive中

  • 语法
sh sqoop import --connect jdbc:mysql://ip名:3306/数据库名 --username 用户名 --password 密码 --table 表名 --hive-table 表名 --fields-terminated-by '分隔符' -m 1;

**注意:**运行成功时,在HDFS网页上查看结果。

2. 遇见的问题:

No such sqoop tool: list-database. See ‘sqoop help’.

sh sqoop list-database --connect jdbc:mysql://192.168.1.101:3306/ -username 账户 -password 密码

问题所在:粗心打错了databases,不是database

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值