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启动时的棘手问题的处理的更多相关文章

  1. 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 ...

  2. 使用Spring Boot操作Hive JDBC时,启动时报出错误:NoSuchMethodError: org.eclipse.jetty.servlet.ServletMapping.setDef

    使用Spring Boot操作Hive JDBC时,启动时报出错误:NoSuchMethodError: org.eclipse.jetty.servlet.ServletMapping.setDef ...

  3. 启动hive命令时指定参数或自定义参数

    启动hive命令时指定参数或自定义参数 在hive启动命令中指定一个参数 hive --hiveconf hive.job.submit.username=fuxin.zhao -e "se ...

  4. 如何在ASP.NET Core程序启动时运行异步任务(2)

    原文:Running async tasks on app startup in ASP.NET Core (Part 2) 作者:Andrew Lock 译者:Lamond Lu 在我的上一篇博客中 ...

  5. Eclipse 启动时闪退问题解决方案

    一.以前Eclipse都可以正常使用,突然有一天不能启动了,点击图标后启动画面一闪之后就消失了,以下是一些解决方案: 1. 找到Eclipse目录下的eclipse.exe,右键点击->发送到桌 ...

  6. hive启动报错(整合spark)

    spark整合hive后,hive启动报错: ls: cannot access /export/servers/spark/lib/spark-assembly-*.jar: No such fil ...

  7. Dubbo_异常_Service启动时默认将方法注册到内网IP

    一.背景 一般Dubbo服务都是通过内网调用,Dubbo服务启动时默认会将服务注册到内网IP,消费端就无法从外网访问. 二.解决过程 1.Linux的hosts中设置外网IP a) 通过hostnam ...

  8. 转载:如何让spring mvc web应用启动时就执行

    转载:如何让spring mvc web应用启动时就执行特定处理 http://www.cnblogs.com/yjmyzz/p/4747251.html# Spring-MVC的应用中 一.Appl ...

  9. 如何在android studio 1.0 启动时设置代理【解决WARN - ateSettings.impl.UpdateChecker - Connection failed.】

    今天第一次用android studio,下了个比较新的1.0.1 linux版本,结果启动时老是出现以下错误: [ 6987] WARN - ateSettings.impl.UpdateCheck ...

随机推荐

  1. python3 AttributeError: 'NoneType' object has no attribute 'split'

    from wsgiref.simple_server import make_server def RunServer(environ, start_response): start_response ...

  2. 图论Hrbust1708许可证

    http://acm.hrbust.edu.cn/index.php?m=ProblemSet&a=showProblem&problem_id=1708 #include<st ...

  3. 学习笔记-解析xml文件

    1.  Dom4J <students>       <student>         <name>吴飞</name>           <c ...

  4. Flash图表控件FusionCharts如何在图表标绘非连续数据

    你可能经常要以不完整的数据点绘制图表.例如,当绘制每月的销售图表时,你可能没有所有的月数据.所以,你可能只想以一个空白的区域来显示缺失的数据,不在这个区域中绘制任何东西.FusionCharts可以让 ...

  5. 简单jQuery实现选项框中列表项的选择

    这段代码非常的简单,仅仅作为自己的一个小小的记录! ok,先上一个简单的图例,效果如下(注意:这只是一个简单的例子,不过可以根据这个简单的例子,变化出更为复杂的效果)! 代码也非常的简单,如下所示(注 ...

  6. Duilib学习笔记《07》— 资源加载

    Duilib的界面表现力能如此丰富,很大程度上得益于贴图描述的简单强大.通过之前的学习及参看相关例子,我们可以发现,在XML布局文件中,不管是窗体背景还是控件,都添加了对应的图片资源以此来美化界面.而 ...

  7. css3多列example

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  8. .net orm比较之dapper和Entity Framework6的简单测试比较

    .net orm比较之dapper和Entity Framework6的简单测试比较

  9. C++著名程序库的比较和学习经验 (转)

    转自:http://www.open-open.com/lib/view/open1328670468108.html 内容目录: 1.C++各大有名库的介绍——C++标准库 2.C++各大有名库的介 ...

  10. Velocity原理

    1.准备 添加引用:velocity-1.7.jar,velocity-tools-2.0.jar,commons-beanutils-1.7.0.jar,commons-chain-1.1.jar, ...