如何将hive与mysql连接_hive连接mysql配置

本文介绍了如何将Hive与MySQL连接,包括在hive-site.xml中配置MySQL的连接参数,如数据库URL、驱动名、用户名和密码。在配置过程中可能会遇到MySQL远程访问权限问题和Hive对MySQL UTF-8编码限制的问题,解决方法分别是为root用户授予所有主机的访问权限,并更改数据库的字符集为latin1。
摘要由CSDN通过智能技术生成

1、进入hive/conf目录下,修改hive-default.xml:  @baidu, I 修改的是 hive-site.xml

hive.metastore.local

true

javax.jdo.option.ConnectionURL

jdbc:mysql://192.168.0.121:3307/hive?createDatabaseIfNotExist=true

javax.jdo.option.ConnectionDriverName

com.mysql.jdbc.Driver

Driver class name for a JDBC metastore

javax.jdo.option.ConnectionUserName

root

username to use against metastore database

javax.jdo.option.ConnectionPassword

root

password to use against metastore database

hive.metastore.warehouse.dir

/home/hadoop/hive/warehouse

location of default database for the warehouse

然后启动 bin/hive,执行show tables命令 这时报FAILED: Error in metadata: javax.jdo.JDOFatalDataStoreException: Access denied for user 'root'@'fuyanqing.feinno.com' (using

password: YES)。这是因为mysql不允许远程访问的问题,执行 grant all on *.*  to 'root'@'%' identified by 'root';

然后再执行show tables命令,这时报:FAILED: Error in metadata: javax.jdo.JDODataStoreException: An exception was thrown while adding/validating class(es) : Specified key was

too long; max key length is 767 bytes。

这个问题是因为hive对mysql的UTF-8编码方式有限制,修改一下mysql的编码方式即可:alter database name character set latin1;

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值