sqoop常用命令

命令:

1、export :将hadoop数据文件导入到数据库中

2、import :将数据导出到hadoop文件系统中


参数解释:

--connect  数据库连接命令

--username 数据库用户名

--password 数据库用户密码

--export-dir 导入的hadoop文件(由hadoop导入到数据库)

--target-dir 导出的hadoop文件(由数据库导出hadoop)

--table 导入的数据库表名

--columns 导入的数据库表字段

--where 导入的数据库表where条件

--query  导入的数据库表查询语句 ,查询where语句后面必须加上AND $CONDITIONS

--fields-terminated-by '|'  标识hadoop数据文件分隔符

-m 启动的map数量

--split-by  指定按数据库表列拆分(入库表没有主键,则需要指定拆分列或者指定map数量为1)


常用命令示例:

1、通过sqoop导出数据到mysql表中

./sqoop export --connect jdbc:mysql://192.168.226.132:3306/zebra --username root --password 123456 --export-dir '/park2/zebra/result/part-r-00000' --table f_http_app_host -m 1 --fields-terminated-by '|'

2、将mysql库表数据导入到hadoop中,指定输出路径、指定数据分隔符,指定map数量

./sqoop import --connect jdbc:mysql://192.168.226.132:3306/zebra --username root --password 123456  --table f_http_app_host --target-dir '/sqoop/zebra1' --fields-terminated-by '|' -m 1

3、将mysql库表数据导入到hadoop中,指定输出路径、指定数据分隔符,指定拆分字段

./sqoop import --connect jdbc:mysql://192.168.226.132:3306/zebra --username root --password 123456  --table f_http_app_host --target-dir '/sqoop/zebra2' --fields-terminated-by '|' --split-by reporttime

4、将mysql库表指定字段数据导入到hadoop中,指定输出路径、指定数据分隔符,指定map数量

./sqoop import --connect jdbc:mysql://192.168.226.132:3306/zebra --username root --password 123456  --table f_http_app_host --columns 'reporttime' --target-dir '/sqoop/zebra3' --fields-terminated-by '|' -m 1
5、将mysql库表指定where条件数据导入到hadoop中,指定输出路径,指定map数量

./sqoop import --connect jdbc:mysql://192.168.226.132:3306/zebra --username root --password 123456  --table f_http_app_host --where 'appType=11' --target-dir '/sqoop/zebra4' -m 1

6、将mysql库表自定义查询语句结果数据导入到hadoop中,指定输出路径,指定map数量

./sqoop import --connect jdbc:mysql://192.168.226.132:3306/zebra --username root --password 123456  --query 'SELECT * FROM f_http_app_host where appType=11 AND $CONDITIONS' --target-dir '/sqoop/zebra5' -m 1

阅读更多
文章标签: sqoop hadoop
个人分类: sqoop hadoop 大数据
上一篇sqoop将hadoop数据导入mysql数据库异常
下一篇hadoop集群安装及测试
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭
关闭