sqoop简介
sqoop名字是怎么来的?Sqoop: SQL-to-Hadoop
连接传统数据库和hadoop的桥梁,把关系型数据库的数据导入到hadoop系统(如HDFS,HBASE和hive中),把数据从hadoop系统里抽取并导出到关系型数据库里。利用MapReduce加快数据传输速度,批量处理方式进行数据传输。
特点
- 高效、可控地利用资源
任务并行度,超市时间等
- 数据类型映射与转换
可自动进行,用户也可自定义
- 支持多种数据库
mysql,oracle,PostgreSQL
1.环境准备
- 准备sqoop安装包。
- 需要确认在sqoop上的主机上能访问mysql的主机。
- 修改hosts文件,检查防火墙,解压安装文件。
2.设计安装目录
- 安装目录:/home/biedong/
3.修改配置文件
1.修改环境变量
#添加环境变量 /etc/profile,添加如下信息export SQOOP_HOME=/home/biedong/sqoop-1.4.6.bin__hadoop-0.23export PATH=$SQOOP_HOME/bin:$PATHexport LOGDIR=$SQOOP_HOME/logs#立即生效source /etc/profile
2.修改配置文件
#在${SQOOP_HOME}/conf中执行命令mv sqoop-env-template.sh sqoop-env.sh#在conf目录下,有两个文件sqoop-site.xml和sqoop-site-template.xml内容是完全一样的,不必在意,我们只关心sqoop-site.xml即可。
3.修改配置文件sqoop-env.sh
#Set path to where bin/hadoop is available#hadoop安装路径,如果之前在/etc/profile可以不用配置export HADOOP_COMMON_HOME=/home/biedong/hadoop-2.7.0#Set path to where hadoop-*-core.jar is available#如果之前在/etc/profile可以不用配置export HADOOP_MAPRED_HOME=/home/biedong/hadoop-2.7.0#set the path to where bin/hbase is available#如果之前在/etc/profile可以不用配置,如果没有hbase也可以不用配置#export HBASE_HOME=#Set the path to where bin/hive is available#如果之前在/etc/profile可以不用配置,如果没有hive也可以不用配置export HIVE_HOME=/home/biedong/apache-hive-1.2.1-bin#Set the path for where zookeper config dir is#如果之前在/etc/profile可以不用配置,如果没有zk也可以不用配置#export ZOOCFGDIR=
4.上传mysql的驱动包
#在${SQOOP_HOME}/lib中上传mysql的jdbc文件名称:mysql-connector-java-5.1.26-bin.jar,网上可以下载
4.安装测试
执行命令检查一下,如果没明显报错证明安装成功
sqoop list-databases --connect jdbc:mysql://192.168.14.88:3306 --username root --password 123456
执行结果: