sqoop匯出工具

2022-07-30 03:21:14 字數 3059 閱讀 7320

sqoop的匯出工具是把hdfs上檔案中的資料匯出到mysql中

mysql中的表

現在在linux上建立乙個檔案,並把這個檔案上傳到hdfs上

cat person.txt 

7,no7,77

8,no8,88

$ hadoop fs -mkdir person_export

$ hadoop fs -put -f person.txt person_export

$ hadoop fs -ls person_export

found

1items

-rw-r--r-- 3

18232184201 supergroup 18

2016-07-26

17:16 person_export/person.txt

一、export-dir使用export-dir來指定匯出的目錄,會匯出該目錄下的所有檔案。

$ sqoop export --connect jdbc:mysql://

localhost:3306/test --username root --password 123456 --table person -m 1 --export-dir person_export

最終的效果可以在mysql中的表體現:

二、插入中文亂碼問題

hdfs上的內容:

3,第7個,77

4,第8個,88

再次執行上面一樣的export命令,在mysql中就會產生亂碼:

可以使用下面的命令來解決亂碼問題:

sqoop export --connect "

jdbc:mysql://localhost:3306/test?useunicode=true&characterencoding=utf-8

" --username root --password 123456 --table person -m 1 --export-dir person_export

完成之後mysql的記錄是: 

三、update-key update-mode

需求hdfs檔案中存在的記錄做更新,不存在的記錄則插入

hdfs上的檔案:

,第10個,100

,第11個,

1103,第3個,30

4,第4個,40

執行命令:

sqoop export --connect "

jdbc:mysql://localhost:3306/test?useunicode=true&characterencoding=utf-8

" --username root --password 123456 --table person -m 1 --export-dir person_export --update-key id --update-mode allowinsert

需要注意的是,update-mode有兩種,一種是uodateonly,一種是allowinsert

執行完成之後,mysql中的資料:

四、input-fields-terminated-by

input-fields-terminated-by可以用來指定hdfs上檔案的分隔符,預設是逗號

hdfs上的資料格式(以空格切分):

aaa 100

bbb

110

執行下面的命令來匯出:

sqoop export --connect "

jdbc:mysql://localhost:3306/test?useunicode=true&characterencoding=utf-8

" --username root --password 123456 --table person -m 1 --export-dir person_export --input-fields-terminated-by '

'

匯出的結果是:

五、columns

使用colums來指定匯出到mysql的列

hdfs上的資料格式:

aaa

bbb

執行下面的命令:

sqoop export --connect "

jdbc:mysql://localhost:3306/test?useunicode=true&characterencoding=utf-8

" --username root --password 123456 --table person -m 1 --export-dir person_export --input-fields-terminated-by '

' --columns="

id,name

"

執行結果:

Oracle匯入匯出工具

oracle匯入匯出工具 exp和 imp介紹 1 exp 資料匯出工具 有三種主要的方式 完全 使用者 表 1 完全 將整個oracle資料庫中的所有物件 使用者等匯出。2 使用者模式 將指定使用者的所有物件和物件中的資料匯出。3 表模式 將指定使用者的指定資料表進行匯出。2 imp 資料匯入工具...

poi Excel 匯出工具類

public class myexcelutil if filename null listlistheader new arraylist 存放物件所有屬性 利用反射得到集合物件obj的所有屬性 包括父類和本類 公共和私有,所有屬性 class c list.get 0 getclass fiel...

SSRS報表匯出工具

我們平時經常使用微軟的ssrs為客戶製作各種各樣的報表,有很多時候客戶都需要訂閱功能,能夠讓報表以郵件的形式傳送給客戶的報表使用者。也許我們知道微軟的reporting service能夠對報表完成訂閱功能,並且能夠將報表傳送出去,但現實中往往需要更為靈活的傳送郵件的方式和時間進行傳送。為此我們希望...