南通网站推广排名,暴雪游戏服务中心,企鹅号自媒体平台注册,商城简介文章目录 一. 设置mysql中的hive库二. hive-site.xml 设置三. 测试 hive支持中文需要关注两个方面#xff1a; 设置hive 元数据库中的一些表设置hive-site.xml. 一. 设置mysql中的hive库
use hivedb;
alter table TBLS modify column TBL_NAME varchar(1000) character se… 文章目录 一. 设置mysql中的hive库二. hive-site.xml 设置三. 测试 hive支持中文需要关注两个方面 设置hive 元数据库中的一些表设置hive-site.xml. 一. 设置mysql中的hive库
use hivedb;
alter table TBLS modify column TBL_NAME varchar(1000) character set 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;二. hive-site.xml 设置
由于Hive元数据表的属性、字段定义等都是存储在Mysql中所以在mysql连接中设置支持中文 characterEncodingUTF-8
具体的在hive-site.xml中 propertynamejavax.jdo.option.ConnectionURL/namevaluejdbc:mysql://ip:3306/hivedb?createDatabaseIfNotExisttrueamp;useUnicodetrueamp;characterEncodingUTF-8amp;useSSLfalse/valuedescriptionJDBC connect string for a JDBC metastore/description/propertypropertynamehive.metastore.readonly.ConnectionURL/namevaluejdbc:mysql://ip:3306/hivedb?createDatabaseIfNotExisttrueamp;useUnicodetrueamp;characterEncodingUTF-8amp;useSSLfalse/value/property 三. 测试
重启hive-server
jps
kill -9 hive_server_pid
nohup ./hive --service hiveserver2 /tmp/hiveserver2.log 21 建表
create table if not exists studentno
(stuno string comment 学号, stuname1 string comment 姓名) comment 学生信息表; hive show create table studentno;
OK
CREATE TABLE studentno(stuno string COMMENT 学号,stuname1 string COMMENT 姓名)
COMMENT 学生信息表
。。。
Time taken: 0.059 seconds, Fetched: 15 row(s)插入数据
insert into studentno values(一号,gao1); hive select * from studentno;
OK
一号 gao1 注含有中文列的表报错
create table student(学号 string comment 学号,
姓名 string comment 姓名) comment 学生信息表;FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask.MetaException(message:Add request failed : INSERT INTO COLUMNS_V2 (CD_ID,COMMENT,COLUMN_NAME,TYPE_NAME,INTEGER_IDX) VALUES (?,?,?,?,?) )