Hive启动时的棘手问题的处理
Hive是存在于Hadoop集群之上的数据仓库,作为大数据处理时的主要工具,对于大数据开发人员的重要性不言而喻。当然要使用Hive仓库的前提就是对于hive的安装,hive的安装是很简单的过程,主要关注的就是对于hive的元数据的存储位置的考虑。hive在安装的时候,它会默认的将自己的元数据是存储在自身带的derby数据库里,这对于一般的用户的测试使用是相对方便的,但是由于它在使用的时候只满足一个客户端对它的访问,所以在生产模式下,hive的元数据是一般的被保存在传统的关系型数据库mysql中。此时对于mysql的连接问题就是hive安装的主要操作了。
在hive连接mysql数据库的时候,通过下面的配置进行连接(针对于初级的联系者):
<configuration>
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://192.168.253.4:3306/hive?
createDatabaseIfNotExist=true</value>
</property>
<property>
<name>javax.jdo.option.ConnectionDriverName</name>
<value>com.mysql.jdbc.Driver</value>
</property>
<property>
<name>javax.jdo.option.ConnectionUserName</name>
<value>hive</value>
</property>
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>hive</value>
</property>
</configuration>
注意:连接的时候需要将mysql连接驱动mysql-connector-*.jar导入到hive的lib包下面,还有就是UserName和Password都必须是在mysql数据库中真实存在,且对于mysql数据库的操作权限都是具有的。
接着就是对于hive的启动,启动hive的时候,只要在命令行输入hive就可以了。下面就是在启动的时候可能会遇到的问题(当然如果是人品好的话可能不会遇到滴):
Caused by: java.sql.SQLException: Unable to open a test connection to the given database. JDBC url = jdbc:mysql://192.168.253.4:3306/hive?createDatabaseIfNotExist=true, username = hive. Terminating connection pool (set lazyInit to true if you expect to start your database after your app). Original Exception: ------
com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure
遇到这样的问题可能的原因有:
⑴.如果hive连接的是远程的mysql数据库,除了上面的配置正确以外,此时就应该考虑的原因是:防火墙的问题!!!(说实话我就是在这里被坑的,我是通过我自己电脑上的虚拟机连接的电脑本地的mysql,原来是防火墙就关的,不知道啥时候就电脑自己给开了,所以就忽视了这个问题),只要将自己电脑的防火墙关闭就可以成功的启动和创建元数据在mysql数据库中了。
⑵.如果hive连接的是本地的mysql数据库,这时就要考虑你自己在安装mysql数据库的时候,是不是创建了一个针对于mysql的用户组,比如是mysql用户组,此时的解决办法就应该是将当前操作hive的用户加入到mysql用户组就解决问题。使用:usermod -a -G mysql 当前用户 .
如果,您认为阅读这篇博客让您有些收获,不妨点击一下右下角的【推荐】。
如果,您希望更容易地发现我的新博客,不妨点击一下左下角的【关注我】。
如果,您对我的博客所讲述的内容有兴趣,请继续关注我的后续博客,我是【飞翔的小伟】,谢谢!
本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。
Hive启动时的棘手问题的处理的更多相关文章
- hive启动时 Terminal initialization failed; falling back to unsupported java.lang.IncompatibleClassChangeError: Found class jline.Terminal, but interface was expected
错误提示信息如下 [ERROR] Terminal initialization failed; falling back to unsupported java.lang.IncompatibleC ...
- 使用Spring Boot操作Hive JDBC时,启动时报出错误:NoSuchMethodError: org.eclipse.jetty.servlet.ServletMapping.setDef
使用Spring Boot操作Hive JDBC时,启动时报出错误:NoSuchMethodError: org.eclipse.jetty.servlet.ServletMapping.setDef ...
- 启动hive命令时指定参数或自定义参数
启动hive命令时指定参数或自定义参数 在hive启动命令中指定一个参数 hive --hiveconf hive.job.submit.username=fuxin.zhao -e "se ...
- 如何在ASP.NET Core程序启动时运行异步任务(2)
原文:Running async tasks on app startup in ASP.NET Core (Part 2) 作者:Andrew Lock 译者:Lamond Lu 在我的上一篇博客中 ...
- Eclipse 启动时闪退问题解决方案
一.以前Eclipse都可以正常使用,突然有一天不能启动了,点击图标后启动画面一闪之后就消失了,以下是一些解决方案: 1. 找到Eclipse目录下的eclipse.exe,右键点击->发送到桌 ...
- hive启动报错(整合spark)
spark整合hive后,hive启动报错: ls: cannot access /export/servers/spark/lib/spark-assembly-*.jar: No such fil ...
- Dubbo_异常_Service启动时默认将方法注册到内网IP
一.背景 一般Dubbo服务都是通过内网调用,Dubbo服务启动时默认会将服务注册到内网IP,消费端就无法从外网访问. 二.解决过程 1.Linux的hosts中设置外网IP a) 通过hostnam ...
- 转载:如何让spring mvc web应用启动时就执行
转载:如何让spring mvc web应用启动时就执行特定处理 http://www.cnblogs.com/yjmyzz/p/4747251.html# Spring-MVC的应用中 一.Appl ...
- 如何在android studio 1.0 启动时设置代理【解决WARN - ateSettings.impl.UpdateChecker - Connection failed.】
今天第一次用android studio,下了个比较新的1.0.1 linux版本,结果启动时老是出现以下错误: [ 6987] WARN - ateSettings.impl.UpdateCheck ...
随机推荐
- 临时改GCC编译器,重启后失效
临时改GCC编译器,重启后失效.例如,用如下命令: export CROSS_COMPILE= <gcc 文件所在的目录>/arm-linux-gnueabihf- 本例中使用的命令如下: ...
- Arch Linux 修改主机名称
Hostname Set the hostname to your liking (e.g. arch): # echo myhostname > /etc/hostname Add the s ...
- Android——进度条ProgressBar
1.activity_progressbar.xml <?xml version="1.0" encoding="utf-8"?><Linea ...
- WEB前端研发工程师编程能力成长之路(1)(转)
WEB前端研发工程师编程能力成长之路(1) [背景] 如果你是刚进入WEB前端研发领域,想试试这潭水有多深,看这篇文章吧: 如果你是做了两三年WEB产品前端研发,迷茫找不着提高之路,看这篇文章吧: ...
- MySQL 密码修改
方法1: 用SET PASSWORD命令 首先登录MySQL. 格式:mysql> set password for 用户名@localhost = password('新密码'); 例子:my ...
- COM学习(三)——数据类型
上回书介绍了GUID.CLSID.IID和接口的概念.本回的重点是介绍 COM 中的数据类型.咋还不介绍组件程序的设计步骤呀?咳......别着急,别着急!孔子曰:"饭要一口一口地吃&quo ...
- LED驱动简单设计
1.步骤 2.核心代码 #define GPKCON 0X7F008800 #define GPKDAT 0X7F008808 light_led: ldr r0,=GPKCON ldr r1,=0x ...
- 学习总结 JDBC
- json 對象的序列化
var a={x:1,y:2} s=JSON.stringify(a); //s="{"x":1,"y":2}" p=JSON.parse( ...
- vba 快速定位当前EXCEL最后一栏
工作的需要,有时会对EXCEL数据进行处理,比如格式化,有数据的单元格画横线. 最初,傻傻的,直接用个循环从第1行,一直往后找,判断是否为空,真傻. Function FindLastCell() D ...