hive执行建表操作报错
来源:1-25 -Hive基本使用
hwbaker
2018-12-04
在hove中执行建表操作报错如下:
message:For direct MetaStore DB connections, we don’t support retries at the client level.
驱动.jar包已复制到/home/hadoop/app/hive-1.1.0-cdh5.7.0/lib中。
建表命令:
create table hive_wordcount (context string);
mysql版本,OOTB中自带的mysql:
mysql> status
mysql Ver 14.14 Distrib 5.1.73, for redhat-linux-gnu (x86_64) using readline 5.1
驱动程序:
ODBC镜像中software中的mysql-connector-java-5.1.27-bin.jar,报上面的错;
自己下载jar包mysql-connector-java-5.1.7-bin.jar,还是报同样的错
还是会报同样的错
2回答
-
你到/tmp/用户名/hive.log中去看看日志中发生了什么
012018-12-04 -
hwbaker
提问者
2018-12-04
cd /tmp/hadoop/
cat hive.log,报错如下:
网上查了下,mysql的默认字符集是latin1,但是OOTB自带的mysql字符集是utf8,所以会出现hive.log中的报错。
解决方案,重新修改mysql字符集为Latin1:
1、alter database a character set latin1;
2、删除原数据库:drop database sparksql;
3、重新创建数据库 并 将字符集设置为 latin1:create database sparksql character set latin1;
4、重启hive
5、create table hive_wordcount (context string);
6、use sparlsq;
select * from TBLS;
有结果,说明插入正确
20
相似问题