1. Sqoop是什麼 ?
-
Sqoop是apache旗下的一款 ”Hadoop和關係數據庫之間傳輸數據”的工具
-
導入數據
-
將MySQL,Oracle導入數據到Hadoop的HDFS、HIVE、HBASE等數據存儲系統
-
-
導出數據
-
從Hadoop的文件系統中導出數據到關係數據庫
-
-
2. Sqoop工作原理
sqoop將導入和導出的命令翻譯成mapreduce程序實現
-
在翻譯出的mapreduce中主要是對inputformat和outputformat進行定製
3. Sqoop安裝部署
1、下載安裝包
下載sqoop安裝包
sqoop-1.4.7.bin__hadoop-2.6.0.tar.gz
2、規劃安裝目錄
/opt/bigdata
3、上傳安裝包到服務器
4、解壓安裝包到指定的規劃目錄
tar -zxvf sqoop-1.4.7.bin__hadoop-2.6.0.tar.gz -C /opt/bigdata
5、重命名解壓目錄
mv sqoop-1.4.7.bin__hadoop-2.6.0 sqoop-1.4.7
6、修改配置
進入到sqoop安裝目錄下的conf文件夾中
先重命名文件 cp sqoop-env-template.sh sqoop-env.sh
修改文件,添加java環境變量
vim sqoop-env.sh
#Set path to where bin/hadoop is available
export HADOOP_COMMON_HOME=/opt/bigdata/hadoop-2.7.3
#Set path to where hadoop-*-core.jar is available
export HADOOP_MAPRED_HOME=/opt/bigdata/hadoop-2.7.3
#set the path to where bin/hbase is available
export HBASE_HOME=/opt/bigdata/hbase-1.2.1
#Set the path to where bin/hive is available
export HIVE_HOME=/opt/bigdata/hive-1.2.2
7、添加mysql驅動jar包
把mysql的驅動jar包添加到sqoop的lib目錄下,可以拷貝之前hive的lib目錄下的mysql驅動
cp /opt/bigdata/hive/lib/mysql-connector-java-5.1.46.jar /opt/bigdata/sqoop-1.4.7/lib/
8、配置sqoop環境變量
vim /etc/profile
export SQOOP_HOME=/opt/bigdata/sqoop-1.4.7
export PATH=$PATH:$SQOOP_HOME/bin
9、讓sqoop環境變量生效
source .bash_profile
4.幾個常用的命令:
-
命令行查看幫助文檔
sqoop list-databases --help
-
列出node1上mysql數據庫中所有的數據庫名稱
sqoop-list-databases --connect jdbc:mysql://node2:3306/ --username root --password QQ@cf123456
-
查看某一個數據庫下面的所有數據表
sqoop list-tables --connect jdbc:mysql://node2:3306/user_cf_db --username root --password QQ@cf123456