基于hadoop3.1.0安装hive2.3.3

在已经安装好hadoop3.1.0前提下。

安装hive

tar -zxf apache-hive-2.3.3-bin.tar.gz
apache-hive-2.3.3-bin/ hive-2.3.3


环境变量:
export HIVE_HOME=/opt/package/hive-2.3.3
export PATH=$PATH:$HIVE_HOME/bin


使用mysql的mariadb作为hive的元数据存储
sudo yum install mariadb-server
sudo service mariadb start
sudo systemctl  enable mariadb


sudo mysql_secure_installation
mysql -uroot -proot
create database hive;
create user 'hive'@'vb-7' identified by 'hive'; 
grant all on hive.* to 'hive' identified by 'hive';
grant all on hive.* to 'hive'@'%' identified by 'hive' with grant option
REVOKE ALL PRIVILEGES,GRANT OPTION  FROM 'hive'
grant all on hive.* to 'hive'@'%' identified by 'hive'




远程可以访问,本地无法访问:
#删除用户即可
drop user ''@localhost;
drop user ''@'vb-7';
flush privileges;



mariadb安装链接

https://www.linode.com/docs/databases/mariadb/how-to-install-mariadb-on-centos-7/



cp hive-default.xml hive-site.xml
<property>
    <name>javax.jdo.option.ConnectionPassword</name>
    <value>hive</value>
  </property>
  <property>
    <name>javax.jdo.option.ConnectionURL</name>
    <value>jdbc:mysql://vb-7:3306/hive</value>
  </property>
<property>
    <name>javax.jdo.option.ConnectionDriverName</name>
    <value>com.mysql.jdbc.Driver</value>
  </property>
  <property>
    <name>javax.jdo.option.ConnectionPassword</name>
    <value>hive</value>
  </property>


 参考:
 https://cwiki.apache.org/confluence/display/Hive/AdminManual+Metastore+3.0+Administration


 
 启动
 hiveserver2
 
 连接异常
Caused by: java.net.URISyntaxException: Relative path in absolute URI: 
${system:java.io.tmpdir%7D/$%7Bsystem:user.name%7D
 把这个目录指向;
 /opt/package/data/hive/tmpdir


 
 
 配置hiveclasspath路径。
 
 元数据初始化
 schematool -dbType mysql -initSchema


 

 注意,驱动的版本不要太新。找不到驱动的。5.1.43版本的驱动是找不到的。(排查了半天)

cp /opt/package/mysql-connector-java-5.1.38.jar ./lib/



  这个版本是可以的。
  
 不允许匿名用户访问。
 添加的配置
 配置core-site.xml
<property>
<name>hadoop.proxyuser.dota.hosts</name>
<value>*</value> </property> <property>
<name>hadoop.proxyuser.dota.groups</name>
<value>*</value>
</property>






hive-site.xml 添加。
   
<property>
<name>beeline.hs2.connection.user</name>
<value>dota</value> </property>
<name>beeline.hs2.connection.password</name>
<property> <value>dota</value> </property>
<value>vb-7:10000</value>
<property> <name>beeline.hs2.connection.hosts</name>
</property>






 然后就可以使用beeline登录 了。

!connect jdbc:hive2://vb-7:10000/default dota

配置文件

https://gitee.com/hshe/pubtest/tree/master/hadoop3



 
 
阅读更多
文章标签: hadoop3 hive2
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

关闭
关闭
关闭