约定:
本次安装测内容
1, SQOOP 从 数据库中导入数据到HDFS
2, SQOOP 从 数据库中导入数据到HIVE
3, SQOOP 从HIVE中将数据导出到数据库
版本:sqoop-1.4.6
SQOOP2的版本,性能不太稳定。
下载安装文件
链接:https://pan.baidu.com/s/1DvgGAse5qIfIkfe0lPlq0w 密码:t9n2
(感谢科多大数据的武老师提供的安装文件)
第一步解压:
tar -zxvf sqoop-1.4.6-cdh5.5.2.tar.gz -C/opt/
mv sqoop-1.4.6-cdh5.5.2/ sqoop
第二步骤
将mysql的驱动包拷贝到 sqoop_home/lib下面
第三步骤:配置环境变量(注意修改为自己的路径)
export SQOOP_HOME=/opt/cdh5/sqoop
export PATH=$PATH:$SQOOP_HOME/bin
第四步:配置SQOOP,vi /opt/sqoop/conf/sqoop-env.sh
修改为自己的安装目录
第五步:检测配置
Sqoop version 查看版本号是否返回即可
开始使用:
前提: Mysql可以正常使用
HDFS服务开启
HIVE服务开启 : nohup hive--service metastore &
一、 查看当前MYSQL中的元数据信息
查看数据库
sqoop list-tables --connectjdbc:mysql://192.168.133.139:3306/hive --username hive –P
查看表
sqoop list-tables --connect jdbc:mysql://192.168.133.139:3306/hive--username hive -P
#使用 sqoop将数据库的数据导入到Hdfs(地址使用默认地址/user/$user/tabname)
sqoop import \
--connect jdbc:mysql://192.168.133.139:3306/hive\
--username hive \
--password hive \
--table TBLS
#列出指定数据库下面的 表的列表
sqoop list-tables --connectjdbc:mysql://192.168.128.152:3306/hive \
--username hive \
--password hive
#使用 sqoop将数据库的数据导入到Hdfs
#使用指定的输出目录
#使用指定的并发数量
sqoop import \
--connectjdbc:mysql://192.168.128.152:3306/hive \
--username hive --password hive \
--table TABLE_PARAMS \
--target-dir /tmp/TABLE_PARAMS \
-m 2
#使用sqoop将HDFS文件导出到 MYSQL 表中,默认MAP为 4个
sqoop export \
--connectjdbc:mysql://192.168.128.152:3306/hive \
--table table_bak \
--username hive \
--password hive \
--export-dirhdfs://192.168.128.152:9000/tmp/TABLE_PARAMS
TBLS_BAK
----------------------我是分界线---------------------------------------------------------
#使用自定义的条件,并且过滤字段,并发数为1
#切分的字段可以更改为另外一个字段
sqoop import \
--connect jdbc:mysql://192.168.128.152:3306/hive\
--username hive \
--password hive \
--query "SELECT PARAM_VALUE fromhive.TABLE_PARAMS where \$CONDITIONS and TBL_ID>7" \
--split-by TBL_ID \
-m 1 \
--target-dir /tmp/TABLE_PARAMS_BAK
sqoop import \
--hive-import \
--hive-table kk \
--connectjdbc:mysql://192.168.128.152:3306/hive \
--username hive \
--password hive \
--query "SELECT PARAM_VALUE fromhive.TABLE_PARAMS where \$CONDITIONS and TBL_ID>7" \
--fields-terminated-by "," \
--lines-terminated-by "\n" \
--target-dir /tmp/aa \
-m 1