sqoop匯出hive表資料到mysql

2021-07-25 03:42:44 字數 2400 閱讀 7880

直接在mysql裡從本地檔案系統匯入資料

mysql》load data local infile 'c:\\users\\asys\\documents\\tencent files\\13174605\\filerecv\\2015082818' into table track_log

fields terminated by '\t' lines terminated by '\n';  (注意這裡檔案是從linux匯出的,以\n結尾)

sqoop從hive匯出資料到mysql

先在mysql建立表

grant all privileges on *.* to 'root'@'%' identified by 'nokia123' with grant option;

create table `track_log` (

`id` varchar(1000) default null,

`url` varchar(5000) default null,

`referer` varchar(5000) default null,

`keyword` varchar(5000) default null,

`type` varchar(1000) default null,

`guid` varchar(1000) default null,

`pageid` varchar(1000) default null,

`moduleid` varchar(1000) default null,

`linkid` varchar(1000) default null,

`attachedinfo` varchar(1000) default null,

`sessionid` varchar(1000) default null,

`trackeru` varchar(1000) default null,

`trackertype` varchar(1000) default null,

`ip` varchar(1000) default null,

`trackersrc` varchar(1000) default null,

`cookie` varchar(5000) default null,

`ordercode` varchar(1000) default null,

`tracktime` varchar(1000) default null,

`enduserid` varchar(1000) default null,

`firstlink` varchar(1000) default null,

`sessionviewno` varchar(5000) default null,

`productid` varchar(1000) default null,

`curmerchantid` varchar(1000) default null,

`provinceid` varchar(1000) default null,

`cityid` varchar(1000) default null,

`ds` varchar(20) default null,

`hour` varchar(20) default null

) engine=innodb default charset=latin1;

然後執行sqoop

jimmy》sqoop export --connect jdbc:mysql://localhost:3306/track_log --username root --password nokia123  --table track_log   --export-dir "/user/hive/warehouse/track_log/ds=20150828/hour=18" --fields-terminated-by '\t' --columns "id, url,referer,keyword,type,guid,pageid,moduleid,linkid,attachedinfo,sessionid,trackeru,trackertype,ip,trackersrc,cookie,ordercode,enduserid,firstlink,sessionviewno,productid,curmerchantid,provinceid,cityid,ds ,hour"

注意: 1)--table track_log 是目的mysql的表,庫在鏈結指定(這裡庫名也叫track_log) --connect jdbc:mysql://localhost:3306/track_log

2) 不能直接從hive表裡匯出(不能--hive-table),只能從hdfs匯出

3)必須指定欄位--columns

4)字段分割符號要和hdfs檔案裡的一致 --fields-terminated-by '\t'

sqoop匯出入資料到Hive過程詳解

1.mysql資料庫 sqoop emp表匯入到hive中資料庫 ruozedata teset 的emp sqoop test表 sqoop import connect jdbc mysql username root password 123456 m 1 table emp hive dat...

sqoop匯入mysql表資料到HIVE

匯入mysql表資料到hive 將關係型資料的表結構複製到hive中 bin sqoop create hive table connect jdbc mysql node 1 3306 userdb table emp add username root password hadoop hive ...

SQOOP從MySQL匯入資料到Hive

一 匯入hive表時自動建立表 1 執行sqoop語句 sqoop import connect jdbc mysql hadoop001 3306 sqoop username root password 123456 table emp etl m 1 hive import create hi...