• sqoop的安装


    sqoop的安装

    sqoop是让hadoop技术支持的clouder公司开发的一个在关系数据库和hdfs,hive之间数据导入导出的一个工具
    sqoop-1.2.0-CDH3B4依赖hadoop-core-0.20.2-CDH3B4.jar,所以你需要下载hadoop-0.20.2-CDH3B4.tar.gz,解压缩后将hadoop-0.20.2-CDH3B4/hadoop-core-0.20.2-CDH3B4.jar复制到sqoop-1.2.0-CDH3B4/lib中。我们只需要hadoop-core-0.20.2-CDH3B4.jar,hadoop的环境我们还可以使用Apache的开源hadoop。
    下面是CDH3和SQOOP 1.2.0的下载地址
    http://archive.cloudera.com/cdh/3/hadoop-0.20.2-CDH3B4.tar.gz
    http://archive.cloudera.com/cdh/3/sqoop-1.2.0-CDH3B4.tar.gz

    另外,sqoop导入mysql数据运行过程中依赖mysql-connector-java-*.jar,
    2、修改SQOOP的文件configure-sqoop,注释掉hbase和zookeeper检查(除非你准备使用HABASE等HADOOP上的组件)

    #if [ ! -d "${HBASE_HOME}" ]; then
    # echo “Error: $HBASE_HOME does not exist!”
    # echo ‘Please set $HBASE_HOME to the root of your HBase installation.’
    # exit 1
    #fi
    #if [ ! -d "${ZOOKEEPER_HOME}" ]; then
    # echo “Error: $ZOOKEEPER_HOME does not exist!”
    # echo ‘Please set $ZOOKEEPER_HOME to the root of your ZooKeeper installation.’
    # exit 1
    #fi

    还有其他HBASE和ZOOKEEPER的部分也需要注释掉。

    3.在使用sqoop之前需要首先启动hadoop

    4.常用的sqoop命令:
    1》列出mysql数据库中的所有数据库
    sqoop list-databases --connect jdbc:mysql://localhost:3306/ --username root --password 123456
    2)连接mysql并列出数据库中的表
    sqoop list-tables --connect jdbc:mysql://localhost:3306/test --username root --password 123456
    命令中的test为mysql数据库中的test数据库名称 username password分别为mysql数据库的用户密码
    3)将关系型数据的表结构复制到hive中,只是复制表的结构,表中的内容没有复制过去。
    sqoop create-hive-table --connect jdbc:mysql://localhost:3306/test --table sqoop_test --username root --password 123456 --hive-table test
    其中 --table sqoop_test为mysql中的数据库test中的表 --hive-table test 为hive中新建的表名称
    4)从关系数据库导入文件到hive中
    sqoop import --connect jdbc:mysql://localhost:3306/zxtest --username root --password 123456 --table sqoop_test --hive-import --hive-table s_test -m 1
    5)将hive中的表数据导入到mysql中,在进行导入之前,mysql中的表hive_test必须已经提起创建好了。
    sqoop export --connect jdbc:mysql://localhost:3306/zxtest --username root --password root --table hive_test --export-dir /user/hive/warehouse/new_test_partition/dt=2012-03-05
    6》从数据库导出表的数据到HDFS上文件
    sqoop import --connect jdbc:mysql://localhost:3306/zxtest --username root --password 123456 --table hive_test -m 1

    版权声明:本文为博主原创文章,未经博主允许不得转载。

  • 相关阅读:
    想更改Github仓库中的某个文件结构
    记git一些基本用法
    剑指Offer-Python(16-20)
    剑指Offer-Python(11-15)
    初次使用flask
    Python的Cmd模块的简易运用学习
    SQL-全称量词查询
    线段树模板1
    OJ输入输出超时(C++)
    二叉查找树(BST)定义
  • 原文地址:https://www.cnblogs.com/jamesf/p/4751624.html
Copyright © 2020-2023  润新知