hive安装和遇到的坑

1,最近装hive需要装mysql存放元数据,但mysql只要安装一不小心就说缺依赖,也不知道什么原因就感觉很烦恼,于是我就试了另一种就是远程连接数据库,连接windows外机MySQL这样还有图形化界面也会好用一些(安装mysql和hive的步骤:https://blog.csdn.net/weixin_41122339/article/details/80415165 的最下面有个链接就是了,如果那个安装时出现mysql的日志没有内容就看我这个吧)。

2,我们开始安装hive具体放在那个位置你们(这里是2.3版本)

1,解压hive:   tar -xzvf apache-hive-2.3.0-bin.tar.gz 

2,添加符号链接:  ln -s apache-hive-2.3.0   hive

2,配置hive环境变量:   1) nano /etc/profile

                                   2)添加 

                                   3)执行source  /etc/profile

3,修改hive配置文件:  1)cd /opt/modules/hive/conf                                            跳到hive安装目录的conf目录文件中

                                  2)把初始化的文件 复制一份出来 并且改名

                                      cp hive-env.sh.template hive-env.sh
                                      cp hive-default.xml.template hive-site.xml
                                      cp hive-log4j2.properties.template hive-log4j2.properties
                                      cp hive-exec-log4j2.properties.template hive-exec-log4j2.properties

 4,修改hive-env.sh

扫描二维码关注公众号,回复: 2721016 查看本文章

                                  export JAVA_HOME=/opt/modules/jdk1.8           ##Java路径
                                  export HADOOP_HOME=/opt/modules/hadoop         ##Hadoop安装路径
                                  export HIVE_HOME=/opt/modules/hive             ##Hive安装路径
                                  export HIVE_CONF_DIR=/opt/modules/hive/conf    ##Hive配置文件路径

 5,在hdfs 中创建下面的目录 ,并且授权

hdfs dfs -mkdir -p /user/hive/warehouse
hdfs dfs -mkdir -p /user/hive/tmp
hdfs dfs -mkdir -p /user/hive/log
hdfs dfs -chmod -R 777 /user/hive/warehouse
hdfs dfs -chmod -R 777 /user/hive/tmp
hdfs dfs -chmod -R 777 /user/hive/log

6、修改hive-site.xml

将 hive-site.xml 文件中以下几个配置项的值设置成上一步中创建的几个路径。

<property>
    <name>hive.exec.scratchdir</name>
    <value>/user/hive/tmp</value>
</property>
<property>
    <name>hive.metastore.warehouse.dir</name>
    <value>/user/hive/warehouse</value>
</property>
<property>
    <name>hive.querylog.location</name>
    <value>/user/hive/log</value>
</property>

7,需要在 hive-site.xml 文件中配置 MySQL 数据库连接信息。

<property>
    <name>javax.jdo.option.ConnectionURL</name>
    <value>jdbc:mysql://192.168.14.192:3306/hive?useSSL=false</value>
   //注意上面的ip一定要写成你虚拟机生成的VM1和VM8其中一个ip这样会方便一些
  </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>zxz</value>
  </property>

 8,创建tmp文件

 mkdir /home/had/hive/tmp

在配置文件 hive-site.xml 里面

{system:java.io.tmpdir} 改成  /home/had/hive/tmp

把 {system:user.name} 改成 {user.name} 

 9,配置jdbc驱动包 
    下载mysql的jdbc 驱动包注意要下载合适自己的版本(我的是1.8的jdk)

    下载完成后把mysql-connector-java-8.0.12.jar 然后放入 $HIVE_HOME/lib 目录下

10,进入自己的windows系统的mysql中创建一个hive的数据库

    create database  hive;

10,初始化hive 

schematool -dbType mysql -initSchema

11,输入hive命令如果成功进入hive命令行就没问题了

12,如果报的是类似:HIVE-ERROR 1045 (28000): Access denied for user 'root'@'%' (using password: YES)的错误

  说明你的用户权限不够:

   请参考:https://blog.csdn.net/peterchan88/article/details/78341852

13,如果报的是类似:The server time zone value 'Öйú±ê׼ʱ¼ä' is unrecognized or represents more than one time zone

的错误:

    请参考:https://www.cnblogs.com/ljy-20180122/p/9157912.html

猜你喜欢

转载自blog.csdn.net/weixin_41122339/article/details/81517574
今日推荐