Sqoop学习

Sqoop交比较简单,是hadoop生态系统的架构最简单的框架

Sqoop由client端直接接入hadoop,任务通过解析生成对应的mapcut

导入:database————>hdfs

导出:丛hdfs往外写hdfs————>database

上传文件并解压:

进入conf包,修改sqoop的名

mv sqoop-env-template.sh sqoop-env.sh

查看版本

./sqoop version

进入文件修改etc文件

复制mysql驱动包到lib包下:

 cp /root/mysql-connector-java-5.1.32-bin.jar  ./

 Sqoop学习

连接数据库:

sqoop list-databases -connect jdbc:mysql://192.168.198.21:3306/ -user

name root -password 123

创建文本:

mkdir sqoop

并创建文档:

 cd sqoop

文档内容:

import

--connect

jdbc:mysql://192.168.198.21:3306/test

--username

root

--password

123

--target-dir

/sqoop/

--table

t_test

--columns

id,name

-m

1

创建文档完了之后执行:

sqoop --options-file option

查看内容;

hdfs dfs -cat /sqoop/part-m-00000

以上为导入:

以下为导出:

创建option文件:

mport

--connect

jdbc:mysql://192.168.198.21/test

--username

root

--password

123

--as-textfile

--query

'select id, name, msg from t_test  where id like "1%" and $CONDITIONS'

--delete-target-dir

--target-dir

/sqoop/tmp

-m

1

--hive-home

/root/apache-hive-1.2.1-bin--hive-import

--create-hive-table

--hive-table

t_test

创建文档完了之后执行:

sqoop --options-file option2

查看内容;

hdfs dfs -cat /sqoop/part-m-00000

导出:

创建option文档:

export

--connect

jdbc:mysql://192.168.198.21/test

--username

root

--password

123

-m

1

--columns

id,name,msg

--export-dir

/user/hive/warehouse/psn/age=10

--table

h_psn

创建文档完了之后执行:

sqoop --options-file option2

查看内容;

hdfs dfs -cat /sqoop/part-m-00000

 

 

Sqoop的两种执行方式:

$ sqoop import --connect jdbc:mysql://localhost/db --username foo --table TEST

 

$ sqoop --options-file /users/homer/work/import.txt --table TEST

where the options file /users/homer/work/import.txt contains the following:

import

--connect

jdbc:mysql://localhost/db

--username

foo

Target:目标,靶子,实验对象

执行option文件:

sqoop --options-file optio

查看文件:

hdfs dfs -cat /sqoop/part-m-00000