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. Mplayer 官方中文手册

    MPlayer 名称总览描述交互式控制用法配置文件配置集通用选项播放器选项(仅适用于MPLAYER)分离器/媒体流选项OSD/字幕选项音频输出选项(仅适用于MPLAYER)音频输出驱动(仅适用于MPL ...

  2. DP走方格型

    Hrbust 1812  http://acm.hrbust.edu.cn/index.php?m=ProblemSet&a=showProblem&problem_id=1812 有 ...

  3. 剑指Offer:面试题12——打印1到最大的n位数(java实现)

    问题描述: 输入数字n,按顺序打印出从1到最大的n位十进制数,比如输入3,则打印出1,2,3一直到最大的3位数即999. 思路1:最简单的想法就是先找出最大的n位数,然后循环打印即可. public ...

  4. 004.ASP.NET MVC中的HTML Helpers

    原文链接:http://www.codeproject.com/Articles/794579/ASP-NET-MVC-HTML-Helpers-A-MUST-KNOW 1.什么是HTML Helpe ...

  5. phpDoc使用说明

    技术文档可以使人们更好得使用他人的代码库,然而,作为开发人员,编写文档确是一件让人头疼的事情.PHPDoc是PHP文档注释的一个标准,它可以实现为代码生成API文档. PHPDoc注释规范: 块注释的 ...

  6. 洛谷P2727 01串 Stringsobits

    P2727 01串 Stringsobits 24通过 55提交 题目提供者该用户不存在 标签USACO 难度普及+/提高 提交  讨论  题解 最新讨论 这题的思路是啥啊!!!跪求- 题目背景 考虑 ...

  7. ES6生成器基础

    ES6引进的最令人兴奋的特性就是一种新的函数生成方式,称为生成器(generator).名称有点奇怪,但是第一眼看上去行为更加奇怪.文章主要介绍生成器如何工作,然后让你明白为什么他们对于未来的JS会有 ...

  8. python md5

    import hashlib import os 简单的测试一个字符串的MD5值 src = 'teststring' print (hashlib.md5(src).hexdigest().uppe ...

  9. jQuery遍历 slice()方法

    今天做页面,遇到一个滚动的swipe,需要4个<li> 一组,然后在外层加个<ul>,方法如下: $('.xxxxx li').each(function(n){ $('.xx ...

  10. 【MySQL】frm文件解析

    官网说明:http://dev.mysql.com/doc/internals/en/frm-file-format.html frm是MySQL表结构定义文件,通常frm文件是不会损坏的,但是如果出 ...