Hadoop3系列——(十)Sqoop安装

官网下载地址,就在官网首页就有下载,点击下载最新稳定版:http://sqoop.apache.org/

或者给我贡献点积分也行:https://download.csdn.net/download/qq_41622603/12917824

 

一、上传并解压

(1)把tar包上传到/opt/software目录下

执行解压:tar -zxvf sqoop-1.4.6.bin__hadoop-2.0.4-alpha.tar.gz

(2)把mysql驱动复制到Sqoop的lib目录下:mysql驱动下载地址:https://download.csdn.net/download/qq_41622603/12909766

 

二、修改Sqoop-env.sh配置文件

进入到sqoop下的conf目录

cd /opt/software/sqoop-1.4.6.bin__hadoop-2.0.4-alpha/conf

因为目录里面只有sqoop-env-template.sh我们要把他复制并改名为sqoop-env.sh

cp sqoop-env-template.sh sqoop-env.sh

vi sqoop-env.sh

把hadoop的家目录配置进HADOOP_COMMON_HOME和HADOOP_MAPRED_HOME

 

三、配置环境变量

cd ~

vi .bash_profile

把Sqoop加入到环境变量

 

四、编写Sqoop执行文件

把执行文件放到/opt/sqoopconf下(这个文件随便放到哪里都行)

切换到opt目录下:cd /opt

创建sqoopconf文件夹:mkdir sqoopconf

切换到sqoopconf文件夹:cd sqoopconf

创建并编辑执行文件sqoop:vi conf1

下面是配置从mysql导入到Hive

import            //使用import工具
--connect         //指定连接的目标数据库
jdbc:mysql://node1:3306/environment
--username        //数据库用户名
root
--password        //数据库密码
123456
--table           //要导入的表名
vehicle_owner
--columns         //要导入的列
id,address,email
--where           //查询条件
id>0

//导入到HDFS的路径,mycluster是hadoop下/etc/hadoop/hdfs-site.xml配置的dfs.nameservices,如果不是配置hadoop高可用的话可以直接写namenode所在主机的ip或主机映射名
--target-dir
hdfs://mycluster/sqoop1

--delete-target-dir    //若目标目录已存在则删除
-m
1
--as-textfile          //导入的数据以文本格式存放在HDFS上

//如果只导入到hdfs可以不用下面内容
--hive-import        //向hive中导入数据
--hive-overwrite     //数据存在则覆盖
--create-hive-table  //创建Hive表
--hive-table         //指定表名
t_user
--hive-partition-key //指定分区字段
dt
--hive-partition-value  指定分区名
'2020-10-10'

 

五、执行Sqoop

这里需要先启动Mysql,当然hadoop集群也要启动

然后执行:sqoop --options-file /opt/sqoopconf/conf1

执行完成,导入了71条记录

然后进入hive shell

  • 2
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Hadoop 3.x中配置Sqoop需要执行以下步骤: 1. 下载Sqoop 下载适合Hadoop 3.x版本的Sqoop。可以从Sqoop的官方网站下载,也可以从Apache镜像站点下载。一旦下载完成,解压Sqoop到任意目录。 2. 配置环境变量 使用以下命令设置Sqoop环境变量: ``` export SQOOP_HOME=/path/to/sqoop export PATH=$PATH:$SQOOP_HOME/bin ``` 3. 配置SqoopSqoop的conf目录中,有一个名为sqoop-env-template.sh的文件。将此文件复制为sqoop-env.sh并打开它。设置以下变量: ``` export HADOOP_COMMON_HOME=/path/to/hadoop export HADOOP_MAPRED_HOME=/path/to/hadoop export HIVE_HOME=/path/to/hive ``` 4. 配置Hadoop连接 在Sqoop的conf目录中,有一个名为sqoop.properties文件。打开此文件并设置以下变量: ``` sqoop.metastore.client.autoconnect.url=jdbc:<database>://<host>:<port>/<database_name> sqoop.metastore.client.connect.string=jdbc:<database>://<host>:<port>/<database_name> sqoop.metastore.driver=<database_driver_class> sqoop.metastore.username=<database_username> sqoop.metastore.password=<database_password> ``` 其中,<database>是数据库类型,例如mysql;<host>是数据库所在的主机名或IP地址;<port>是数据库服务的端口号;<database_name>是数据库名称;<database_driver_class>是数据库的驱动程序类;<database_username>是数据库用户名;<database_password>是数据库密码。 5. 配置Hadoop连接参数 在Sqoop的conf目录中,有一个名为sqoop-site.xml文件。打开此文件并设置以下变量: ``` <name>hadoop.home.dir</name> <value>/path/to/hadoop</value> ``` 6. 测试连接 使用以下命令测试Sqoop连接是否正常: ``` sqoop list-databases --connect <connection_string> --username <username> --password <password> ``` 其中,<connection_string>是数据库连接字符串,例如jdbc:mysql://localhost:3306;<username>是数据库用户名;<password>是数据库密码。 如果一切正常,Sqoop会返回数据库中的所有数据库名称。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值