在通過終端查詢hive時,終端結果顯示為亂碼。
這種情況出現的原因是:
1.ssh終端裡的編碼不是utf-8
如使用scrt,xshell等,都要把編碼設成utf-8
2.hive在將資料寫入hdfs時候,會把資料格式轉換為utf-8格式的。
如果你匯入hive表的源資料不是utf-8格式的,hive在進行寫hdfs轉換格式的時候會出現亂碼,所有你查詢出來的中文也是亂碼。
解決辦法:把原始檔,用editplus等編輯軟體開啟,將檔案轉換為urf-8格式,儲存。再重新匯入到hive表中,問題解決。原始檔只要是文字格式,如csv,txt,log等文字格式,均可用此種方法轉化。
hive中解決中文亂碼問題
為了解決hive中建立表的時候,註解等中文顯示的亂碼問題 需要設定metastore database中某些欄位的字元編碼為utf 8 grant all privileges on to root identified by 123456 with grant option flush privi...
Hive中文注釋亂碼問題的解決
在hive中建表的時候,有時候難免要表中文注釋,然而如果不經過配置,會導致desc某個表名的時候,直接以?的方式返回。因此也來解決一下hive中文注釋亂碼的問題。由於hive的元資料是存在於mysql上的,因此需要在mysql上進行元資料的候。因此也來解決一下這個問題。當hive使用mysql作為元...
Hive中文注釋亂碼問題的解決
在hive 中建表的時候,有時候難免要表中文注釋,然而如果不經過配置,會導致desc某個表名的時候,直接以?的方式返回。因此也來解決一下hive中文注釋亂碼的問題。由於hive的元資料是存在於mysql上的,因此需要在mysql上進行元資料的候。因此也來解決一下這個問題。當hive使用mysql作為...