sqoop的匯出工具是把hdfs上檔案中的資料匯出到mysql中
mysql中的表
現在在linux上建立乙個檔案,並把這個檔案上傳到hdfs上
cat person.txt一、export-dir使用export-dir來指定匯出的目錄,會匯出該目錄下的所有檔案。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
$ sqoop export --connect jdbc:mysql://最終的效果可以在mysql中的表體現:localhost:3306/test --username root --password 123456 --table person -m 1 --export-dir person_export
二、插入中文亂碼問題
hdfs上的內容:
3,第7個,77再次執行上面一樣的export命令,在mysql中就會產生亂碼:4,第8個,88
可以使用下面的命令來解決亂碼問題:
sqoop export --connect "完成之後mysql的記錄是:jdbc:mysql://localhost:3306/test?useunicode=true&characterencoding=utf-8
" --username root --password 123456 --table person -m 1 --export-dir person_export
三、update-key update-mode
需求hdfs檔案中存在的記錄做更新,不存在的記錄則插入
hdfs上的檔案:
,第10個,100執行命令:,第11個,
1103,第3個,30
4,第4個,40
sqoop export --connect "需要注意的是,update-mode有兩種,一種是uodateonly,一種是allowinsertjdbc: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
執行完成之後,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能夠對報表完成訂閱功能,並且能夠將報表傳送出去,但現實中往往需要更為靈活的傳送郵件的方式和時間進行傳送。為此我們希望...