Hive集群环境搭建之本地模式(多用户模式)

文章目录

  • 搭建集群的模式有三种
  • Hive的原理详解
    • 1. 源码包下载及解压
    • 2. 集群的环境
    • 3. MySQL服务端的设置
      • 3.1 安装Mysql服务端
      • 3.2 开启服务
      • 3.3 进入MySQL修改权限
      • 3.4 需要将mysql的jar包拷贝到$HIVE_HOME/lib目录下
    • 4. 修改hive-site.xml文件(服务端的,即hive包所在的节点)
    • 5. 开启服务端的Metasrote服务
    • 6.客户端Hive源码包下载及解压
    • 6.1 修改hive-site.xml
    • 7. 启动Hive
    • 8. 注意的地方

搭建集群的模式有三种

  1. 本地模式(derby)
  2. 本地模式(mysql)
  3. 基于MySQL的远程连接模式

Hive的原理详解

Hive的原理

1. 源码包下载及解压

http://mirror.bit.edu.cn/apache/hive/

2. 集群的环境

Active NameNode Standby NameNode DataNode Zookeeper ZKFC JournalNode ResourceManage NodeManager
node01 - - -
node02 -
node03 - - -
node04 - - - -

3. MySQL服务端的设置

3.1 安装Mysql服务端

Yum install mysql-server -y

3.2 开启服务

service mysqld start (开启服务)
chkconfig mysqld on (开机启动)

3.3 进入MySQL修改权限

  1. 刚下载下来的MySQL是没有密码的 mysql -uroot登陆
  2. GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY '123' WITH GRANT OPTION;
  3. flush privileges;修改权限后,刷新权限
  4. 添加hive用户CREATE USER 'hive'@'%' IDENTIFIED BY '123';
  5. grant all privileges on hive_meta.* to hive@"%" identified by '123';flush privileges;
  6. 删除多余会对权限造成影响的用户
    Hive集群环境搭建之本地模式(多用户模式)_第1张图片

3.4 需要将mysql的jar包拷贝到$HIVE_HOME/lib目录下

mysql-connector-java-5.1.32-bin.jar

4. 修改hive-site.xml文件(服务端的,即hive包所在的节点)

          需要注意,刚开始解压的包是没有hive-site.xml文件的,需要把hive-site.xml.template文件复制一份为hive-site.xml.
此文件在/conf文件夹中

<configuration> 
 
<property>  
  <name>hive.metastore.warehouse.dir</name>  
  <value>/user/hive_remote/warehouse</value>  
</property>  
   
<property>  
  <name>hive.metastore.local</name>  
  <value>true</value>  
</property>  
   
<property>  
  <name>javax.jdo.option.ConnectionURL</name>  
  <value>jdbc:mysql://localhost/hive_remote?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>password</value>  
</property>  

</configuration>  


5. 开启服务端的Metasrote服务

后台启动
hive --service metastore >> meta.log 2>&1 &

6.客户端Hive源码包下载及解压

6.1 修改hive-site.xml

<configuration>  
   
<property>  
  <name>hive.metastore.local</name>  
  <value>false</value>  
</property>  
  
<property>  
  <name>hive.metastore.uris</name>  
  <value>thrift://192.168.57.5:9083</value>  
  <!--此ip是服务端的IP地址 -->
</property>  
  
</configuration>  

7. 启动Hive

$HIVE_HOME/bin/hive

8. 注意的地方

1.虽然配置文件配置好了但是因为Hive的lib下的Jline.jar与/hadoop-2.6.5/share/hadoop/yarn/lib下的Jline.jar包版本不一样,就会出现错误。
解决办法:一般来说Hive的Jline.jar包是新版本,把这个包覆盖Hadoop里面的这个包。

ERROR] Terminal initialization failed; falling back to unsupported
java.lang.IncompatibleClassChangeError: Found class jline.Terminal, but interface was expected
	at jline.TerminalFactory.create(TerminalFactory.java:101)

你可能感兴趣的:(Hive集群环境搭建之本地模式(多用户模式))