美文网首页
Hive-3.1.2(六)Sqoop1安装及指令

Hive-3.1.2(六)Sqoop1安装及指令

作者: _大叔_ | 来源:发表于2021-08-08 13:09 被阅读0次

Sqoop介绍

Sqoop 是apache提供的工具,用于HDFS和关系数据库之间数据导入和导出,可以从HDFS导出数据到关系型数据库,也可以从关系型数据库导入数据到HDFS。

安装

wget https://mirrors.tuna.tsinghua.edu.cn/apache/sqoop/1.4.7/sqoop-1.4.7.bin__hadoop-2.6.0.tar.gz

必须配置jdk、hadoop环境变量,因为sqoop在使用是会去找环境变量对应的路径,从而工作。最好把sqoop自己也加如到环境变量中。

需要将连接的数据库的驱动包加如sqoop/server/lib目录下。

配置 sqoop2的话要允许访问 HDFS,但是我是sqoop1.

  <property>
    <name>hadoop.proxyuser.sqoop2.hosts</name>
    <value>*</value>
  </property>
  <property>
    <name>hadoop.proxyuser.sqoop2.groups</name>
    <value>*</value>
  </property>

Sqoop命令

查看mysql所有数据库

sqoop list-databases --connect jdbc:mysql://node113:3306/?useSSL=false -username root -password Admin@123

查看指定数据库下的所有表

sqoop list-tables --connect jdbc:mysql://node113:3306/hive?useSSL=false -username root -password Admin@123

将关系型数据库(test库,test_01表)导入到HDFS 的 '/sqoop/test_01' 目录下,并以 ' ' 空格分割列,sqoop会在hadoop自动创建目录和文件

sqoop import --connect jdbc:mysql://node113:3306/test?useSSL=false -username root -password Admin@123 --table test_01 --target-dir '/sqoop/test_01' --fields-terminated-by ' ' -m 1;

将HDFS数据导入导出到关系型数据库,sqoop只能导出数据,不能自动建表,所以在导出之前表就要建好。

sqoop export --connect jdbc:mysql://node113:3306/test?useSSL=false -username root -password Admin@123 --export-dir '/sqoop/test_01/part-m-00000' --table test_02 -m 1 --fields-terminated-by ' '

相关文章

网友评论

      本文标题:Hive-3.1.2(六)Sqoop1安装及指令

      本文链接:https://www.haomeiwen.com/subject/rnxbjltx.html