Mysql 与HDFS,Hive 的导入与导出(sqoop)
一、安装sqoop
1、下载并解压
tar -zxvf *********** - C /****
2、修改配置文件
进入sqoop的lib目录下,改名。
mv sqoop-env-template.sh sqoop-env.sh
修改配置
export HADOOP_COMMON_HOME=/usr/local/hadoop-2.6.0-cdh5.7.0/
#Set path to where hadoop-*-core.jar is available
export HADOOP_MAPRED_HOME=/usr/local/hadoop-2.6.0-cdh5.7.0/
#set the path to where bin/hbase is available
#export HBASE_HOME=/usr/local/hbase-1.2.0-cdh5.7.0
#Set the path to where bin/hive is available
export HIVE_HOME=/usr/local/hive-1.1.0-cdh5.7.0/
加入mysql的jdbc与json驱动包
验证启动(进入sqoop的bin路径下)
./sqoop-version
二、Sqoop的数据导入
注:没json驱动包导入会报错
1、Mysql的数据导入到HDFS
./sqoop-import \
--connect jdbc:mysql://192.168.253.100:3306/text \
--username root \
--password 123456 \
--table emp \
--m 1
2、Mysql的数据导入到Hive
./sqoop import \
--connect jdbc:mysql://192.168.253.100:3306/text \
--username root --password 123456 \
--table emp \
--hive-import --hive-table s_test -m 1
三、Sqoop的数据导出
注:在/etc/profile中添加hive的环境
vim /etc/profile
source /etc/profile
1、HDFS的数据导出到Mysql
./sqoop-export \
--connect jdbc:mysql://192.168.253.100:3306/text \
--username root \
--password 123456 \
--table emp1 \
--export-dir /user/root/emp
2、Hive的数据导出到Mysql
./sqoop export --connect jdbc:mysql://192.168.253.100:3306/text --username root --password 123456 --table emp2 --export-dir /user/hive/warehouse/t_emp1 --input-fields-terminated-by \\001