Linux下Sqoop 的安装及job的使用

 Sqoop是一款开源的工具,主要用于在Hadoop(Hive)与传统的数据库(mysql、postgresql...)间进行数据的传递,可以将一个关系型数据库(例如 : MySQL ,Oracle ,Postgres等)中的数据导进到Hadoop的HDFS中,也可以将HDFS的数据导进到关系型数据库中。本实验学习Sqoop的安装和使用,版本是1.4.6。

目录

一、安装sqoop

1、下载sqoop-1.4.6.bin__hadoop-2.0.4-alpha.tar.gz、解压(至app)​编辑

2、配置环境变量SQOOP_HOME和PATH并source

3、将$SQOOP_HOME/conf下的sqoop-env-template.sh复制一份命名为sqoop-env.sh(cp)

​编辑

4、把mysql驱动添加到$SQOOP_HOME/lib下

5、测试与mysql的连接

 二、sqoop job的使用

 1、创建job

 2、查看job

 3、查看全部

 4、执行job

 5、删除job


一、安装sqoop

1、下载sqoop-1.4.6.bin__hadoop-2.0.4-alpha.tar.gz、解压(至app)

tar -zxvf sqoop-1.4.6.bin_hadoop-2.0.4-alpha.tar.gz -C ../app

目录名太长,改名为sqoop-1.4.6(mv)

 

2、配置环境变量SQOOP_HOME和PATH并source

3、将$SQOOP_HOME/conf下的sqoop-env-template.sh复制一份命名为sqoop-env.sh(cp)

编辑以下内容(这4个属性已经存在,把前面#号去掉,设置对应值,可从.bash_profile 中拷贝)

#Set path to where bin/hadoop is available
export HADOOP_COMMON_HOME=/home/hadoop/app/hadoop-2.7.1
#Set path to where hadoop-*-core.jar is available
export HADOOP_MAPRED_HOME=/home/hadoop/app/hadoop-2.7.1
#set the path to where bin/hbase is available
export HBASE_HOME=/home/hadoop/app/hbase-1.1.5
#Set the path to where bin/hive is available
export HIVE_HOME=/home/hadoop/app/apache-hive-1.2.1-bin

 4、把mysql驱动添加到$SQOOP_HOME/lib下

5、测试与mysql的连接

首先启动mysql服务,在前面实验中我们已经把mysql服务设置为开机启动。通过systemctl status mariadb.service可以查看

然后输入以下命令

sqoop list-databases --connect jdbc:mysql://127.0.0.1:3306/ --username root --P

输入mysql 用户root的密码root,能看到mysql下数据库信息就成功了。

 二、sqoop job的使用

 1、创建job

创建job前先建立隐藏密码文件.mysql.password(该文件路径及名字任意,以.打头是隐藏文件,将密码暴露在外面不安全)

echo -n "root" > .mysql.password

(密码为root)

注意用上面命令写入密码,不能直接在文件中输入。

然后创建job

sqoop job --create job1 
-- import 
--connect jdbc:mysql://localhost:3306/test 
--username root --password-file file:/home/hadoop/.mysql.password 
--table t1 --target-dir /sqoop/t1 
--driver com.mysql.jdbc.Driver -m 1 --check-column id --incremental append --last-value 0--verbose

 注意--和import之间有一个空格,--verbose含义是打印命令运行时的详细信息。

2、查看job

sqoop job –show job1

 3、查看全部

sqoop job –list

 4、执行job

sqoop job --exec myjob

5、删除job

sqoop job --delete myjob


本篇文章仅是对自己大数据计算框架作业的一次总结,其中安装包及驱动并未提供,如有需要请私信。

  • 1
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 要在Linux安装Sqoop,您可以按照以下步骤进行操作: 1. 首先,您需要下载Sqoop的最新版本。您可以从Sqoop的官方网站上下载它。 2. 下载完成后,您需要解压缩Sqoop的压缩包。您可以使用以下命令: tar -xvf sqoop-<version>.bin__hadoop-<hadoop-version>.tar.gz 3. 接下来,您需要将Sqoop的目录添加到PATH环境变量中。您可以使用以下命令: export PATH=$PATH:/path/to/sqoop/bin 4. 然后,您需要配置Sqoop的环境变量。您可以编辑Sqoop的conf目录中的sqoop-env.sh文件,并设置以下变量: export HADOOP_COMMON_HOME=/path/to/hadoop export HADOOP_MAPRED_HOME=/path/to/hadoop export HIVE_HOME=/path/to/hive 5. 最后,您需要启动Sqoop服务。您可以使用以下命令: sqoop2-server start 完成以上步骤后,您就可以在Linux上成功安装Sqoop了。 ### 回答2: Sqoop是一个开源工具,用于将大量数据在Hadoop和关系型数据库之间传输。Sqoop支持从关系型数据库中导出数据到Hadoop,以及从Hadoop导出数据到关系型数据库中。它可以在单节点或分布式集群中运行,并且适用于各种数据存储,包括MySQL、Oracle、PostgreSQL、Teradata等。 Linux安装Sqoop步骤如下: 1. 首先确保你的系统上已经安装了Java环境。可以在Linux命令行中输入命令`java -version`检查Java环境。 2. 下载并安装HadoopSqoop需要依赖于Hadoop。 3. 从Apache Sqoop网站下载最新的Sqoop压缩包。可以选择下载最新的稳定版本。 4. 解压缩Sqoop的压缩包。可以在Linux命令行中执行命令`tar -zxf sqoop-x.x.x.bin__hadoop-2.0.4-alpha.tar.gz`解压缩Sqoop。 5. 将Sqoop的解压缩目录移动到想要安装Sqoop的目录下。 6. 添加Sqoop的bin目录到系统环境变量中,这样在终端中就可以直接使用Sqoop命令了。 7. 对于MySQL数据库,需要将MySQL JDBC驱动程序添加到Sqoop的lib目录中。 以上就是在Linux系统中安装Sqoop的步骤,按照上述步骤操作,即可在自己的Linux系统上成功安装Sqoop安装完成后,可以在命令行中输入`sqoop help`查看Sqoop的帮助文档,了解Sqoop的具体使用方法。 ### 回答3: Sqoop是一款可用于在Hadoop与关系型数据库之间传输数据的工具。在Linux系统下安装Sqoop大概需要几个步骤: 1. 下载Sqoop 可以从官方网站下载Sqoop https://sqoop.apache.org/ ,选择下载最新版本。下载之后,将其解压到你想存放的目录下。 2. 安装依赖项 在Debian和Ubuntu上,使用如下命令安装sqoop依赖项: sudo apt-get install libmysql-java 在RHEL和Fedora上,使用如下命令安装sqoop依赖项: sudo yum install mysql-connector-java 3. 配置Sqoop Sqoop需要配置Sqoop环境变量,把下载的Sqoop安装目录的bin目录放在系统环境变量的PATH中。 export PATH=$PATH:/path/to/sqoop/bin 可以在.bashrc或者.profile文件中设置,这样每次登录时都会在系统中设置Sqoop路径变量。 4. 测试Sqoop 输入如下命令 ,确认Sqoop已经被正确安装sqoop help 如果一切正常,你将看到一些Sqoop命令的摘要信息,表示Sqoop已经成功安装并准备好使用。 5. 配置SqoopHadoop Sqoop需要与Hadoop协同工作。必须设置$HADOOP_HOME环境变量才能让Sqoop找到Hadoop系统,并将其与Sqoop连接起来。 export HADOOP_HOME=/path/to/hadoop 同样也可以在.bashrc或者.profile文件中设置HADOOP_HOME,就可以与Sqoop协同工作了。 6. 配置Sqoop与关系型数据库 Sqoop还需要与数据库协同工作。在您的Sqoop目录下,有一个conf/子目录,其中包含可用于配置Sqoop的一些配置文件。您需要编辑其中一个文件,以配置Sqoop以与数据库协同工作。 其中,配置JDBC驱动程序是必须的步骤之一。找到conf/sqoop-env.sh文件,并打开。 在配置文件中加入以下行: export SQOOP_HOME=/path/to/sqoop export SQOOP_CONF_DIR=$SQOOP_HOME/conf export SQOOP_LIB_DIR=$SQOOP_HOME/lib export SQOOP_CLASSPATH=$SQOOP_CONF_DIR:$SQOOP_LIB_DIR:$SQOOP_LIB_DIR/* export HADOOP_COMMON_HOME=/path/to/hadoop/ export HADOOP_MAPRED_HOME=$HADOOP_COMMON_HOME export HBASE_HOME=/path/to/hbase 7. 配置Sqoop的两个配置文件 sqoop-site.xml和sqoop-env.xml文件用于Sqoop的配置,它们也是Sqoop默认使用的主要文件。有必要编辑这些文件以进行配置以进行Sqoop操作。 Sqoop使用sqoop-site.xml作为其主配置文件,它必须在conf目录中进行操作。文件包含许多关于如何与数据库进行通信的配置项,包括您必须修改的: 设置数据源 选择目标文件系统(例如HDFS) 指定常见引用平台(例如Hive) 等等 sqoop-env.xml包含的是Sqoop的环境变量及其默认值,同样需要进行编辑,以便将其与您的环境相匹配。 8. 配置完毕,测试Sqoop 最后,测试您的Sqoop安装是否已经正确完成。例如,使用以下命令,测试MySQL通过Sqoop导出到Hadoopsqoop import --connect jdbc:mysql://localhost/hadoop --username root --password yourpassword --table yourtable 以上是Linux安装sqoop的大概流程,一些变量需要根据自己实际情况进行设置修改。希望对你有所帮助!

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值