Hive字段中文注釋亂碼解決辦法


Hive字段中文亂碼,如執行 show create table xxx 時,表級別注釋、字段級別注釋發現有亂碼現象(都是????), 一般都是由hive 元數據庫的配置不當造成的。 

 

此時可按如下步驟進行配置調整:

登錄hive的元數據庫mysql中:(不是在hive sql 環境下執行)

 

1、設置hive 元數據庫字符集

show create database hive;

查看為utf8,需變更為latin1

alter database hive character set latin1;  (可參閱

 

2、更改如下表字段為字符集編碼為 utf8

alter table COLUMNS_V2 modify column COMMENT varchar(256) character set utf8;
alter table TABLE_PARAMS modify column PARAM_VALUE varchar(4000) character set utf8;
alter table PARTITION_PARAMS  modify column PARAM_VALUE varchar(4000) character set utf8;
alter table PARTITION_KEYS  modify column PKEY_COMMENT varchar(4000) character set utf8;
alter table  INDEX_PARAMS  modify column PARAM_VALUE  varchar(4000) character set utf8;

 

可以看到,如下語句分別對可能出現中文的字段、表參數、分區設置、及索引參數等字段,調整了字符集編碼。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM