sqoop 使用

Sqoop是一个用来将Hadoop和关系型数据库中的数据相互转移的工具,可以将一个关系型数据库(例如 : MySQL ,Oracle ,Postgres等)中的数据导进到Hadoop的HDFS中,也可以将HDFS的数据导进到关系型数据库中。



sqoop import \

--connect jdbc:mysql://localhost:3306/gota\
--username root \
--password 123456 \
--table tab_name1\
--m 8 \
--target-dir /user/gota/$1 \
--fields-terminated-by '\001' \

--hive-drop-import-delims


###########################################################################################
#将hdfs表导入mysql,需要先在mysql中创建表,然后导入


sqoop export \
--connect  jdbc:mysql://localhost:3306/shenbi \
--username root \
--password 123456 \
--table  province \
--export-dir '/user/hive/warehouse/zhucm.db/goods_out' 
--input-fields-terminated-by "\001"
"\t" 




##############################################################################
#将mysql表导入hdfs

sqoop import \
--connect jdbc:mysql://localhost:3306/shenbi \
--username root \
--password 123456 \
--table 222 \
--m 8 \
--target-dir /user/hive/warehouse/zhucm.db/222 \
--fields-terminated-by '\001' \
--hive-drop-import-delims


#--m 8 要设置成1


##########################################################################################


#将hive表直接导入到sql数据库

sqoop export \
--connect jdbc:mysql://localhost:3306/shenbi \
--hadoop-home /opt/cloudera/parcels/CDH-5.11.0-1.cdh5.11.0.p0.34/lib/hadoop \
--username root \
--password 123456 \
--table tab_name\   
--hcatalog-database hive_database1 \
--hcatalog-table hive_tab1 \
--input-fields-terminated-by '\001' \
--hive-partition-key stat_date \
--hive-partition-value $dt \
-m 1


###########################################################################################

mysql2hive

hive  -e 'drop table if exists default.bala_zongbu_test'
sqoop import \
--connect jdbc:mysql://localhost:3306/bala_mmtest \
--username semir \
--password bi.semir.com  \
--table bala_zongbu_1706_1805\
--hive-import \
--create-hive-table \
--hive-table bala_zongbu_test \
-m 1 \
--fields-terminated-by '\001' \
--hive-drop-import-delims

猜你喜欢

转载自blog.csdn.net/gameovertryagain/article/details/80417280