1.前期准备
需要3台虚拟需要并安装好java 运行环境 JDK
需要搭建配置好Hadoop集群并启动同时需要安装有mysql
2.安装HIVE并配置
2.1上传HIVE安装包
上传至/opt/software/
解压并重命名
在hive的lib下添加一个mysql-connect-jar
2.2添加Hive核心配置,选择远程MySQL模式
vi hive-site.xml
添加以下配置信息
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<!--连接数据库地址,名称 -->
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://localhost:3306/myhive?createDatabaseIfNotExist=true&useUnicode=true&characterEncoding=UTF-8&useSSL=false</value>
</property>
<!--连接数据库驱动 -->
<property>
<name>javax.jdo.option.ConnectionDriverName</name>
<value>com.mysql.jdbc.Driver</value>
</property>
<!--连接数据库用户名称 -->
<property>
<name>javax.jdo.option.ConnectionUserName</name>
<value>root</value>
</property>
<!--连接数据库用户密码 -->
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>123456</value>
</property>
<!--客户端显示当前查询表的头信息 -->
<property>
<name>hive.cli.print.header</name>
<value>true</value>
</property>
<!--客户端显示当前数据库名称信息 -->
<property>
<name>hive.cli.print.current.db</name>
<value>true</value>
</property>
<property>
<!--关闭数据库的版本检查-->
<name>hive.metastore.schema.verification</name>
<value>false</value>
</property>
</configuration>
重命名
修改路径
vi hive-env.sh
** 注:将注释删掉 **
重命名
在对应的位置修改日志信息
2.3给mysql赋予权限
如果此处报错误,先查看mysql初始密码策略。
SHOW VARIABLES LIKE 'validate_password%';
设置密码的验证强度等级。
set global validate_password_policy=LOW;
设置密码的长度。
set global validate_password_length=6;
然后再进行赋予权限。
2.4配置环境变量
vi /etc/profile
**重新加载:source /etc/profile**
2.5初始化Hive
出现 schemaTool completed 即可成功
3.常见问题
3.1配置 hive-env.sh
(1)路径务必要是自己的正确路径,可以使用pwd命令查看后复制,避免后续错误。
(2)要删除”#”的注释符号。
3.2配置hive-site.xml时
(1)若配置文件出错,刷新环境变量和初始化hive都会不成功,会报“未找到命令”或 “Cannot find hadoop installation”的错。
3.3 安装过程报错
com.google.common.base.Preconditions.checkArgument(ZLjava/lang/String;Ljava/lang/Object;)
错误原因:系统找不到这个类所在的
jar
包或者
jar
包的版本不一样系统不知道使用哪个,
hive
启动报错的原因是后者。
解决方法:
将jar包变成一致的版本:删除
hive
中低版本jar包,将
hadoop
中高版本的复制到
hive
的
lib
中。
再次启动问题得到解决!
版权归原作者 wxin_@ 所有, 如有侵权,请联系我们删除。