hive创建表,一通报错猛如虎

记录一下心血历程,学hive的第一天就给我来了个下马威

使用的版本如下

mysql:5.6.24
hive:1.2.1

本想创建表格
hive (test)> create table stu(id int, name string);

不料这都能报错,还卡了我一天。。。

FAILED: Execution Error, return code 1 from org.apache.hadoop.hive.ql.exec.DDLTask. 
MetaException(message:For direct MetaStore DB connections, we don't support retries at the client level.)

遇到问题那肯定是Ctrl+C Ctrl+V上搜索引擎找之前掉到坑里的人,查看各种前辈的文章,内容千篇一律,都是将hive表的字符集改为latin1

alter database hive character set latin1;
然而我的MySQL里面没有hive数据库,不禁发出疑问,这有什么联系吗?

在这里插入图片描述
后来又看到加强版,先删除hive数据库再创建hive数据库最后修改字符集,看起来好像还挺靠谱的

drop database hive; 
create database hive; 
alter database hive character set latin1;

既然没有hive数据库那就直接创建+该字符集吧,然而并没有什么卵用,自己创建个hive自己骗自己。。。

a night later

为啥都改hive的字符集呢?难道启动hive后mysql里面就有hive数据库了,我前面应该也没出错啊,而且之前能创建表(使用hive自带数据库),后来关联了mysql就不行了,更是说明了我原数据关联上mysql了,等等,这怎么有个metastore???难道???

mysql> alter database metastore character set latin1;

问题解决了。
解决了。
决了。
了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值