1、简介
嵌入式
独立服务模式
生产环境中,不推荐使用嵌入式模式。因为其存在以下两个问题:
(1)嵌入式模式下,每个Hive CLI都需要直接连接元数据库,当Hive CLI较多时,数据库压力会比较大。
(2)每个客户端都需要用户元数据库的读写权限,元数据库的安全得不到很好的保证
2、配置嵌入式模式
其实嵌入式是默认开启的,在配置hiveserver2的时候,已经配置了
vim $HIVE_HOME/conf/hive-site.xml
添加以下配置
<!-- jdbc连接的URL -->
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://hadoop102:3306/metastore?useSSL=false</value>
</property>
<!-- jdbc连接的Driver-->
<property>
<name>javax.jdo.option.ConnectionDriverName</name>
<value>com.mysql.jdbc.Driver</value>
</property>
<!-- jdbc连接的username-->
<property>
<name>javax.jdo.option.ConnectionUserName</name>
<value>root</value>
</property>
<!-- jdbc连接的password -->
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>你的密码</value>
</property>
3、配置独立模式(主要配置)
在配置了以上嵌入式的基础上,追加配置
<!-- 指定metastore服务的地址 -->
<property>
<name>hive.metastore.uris</name>
<value>thrift://hadoop102:9083</value>
</property>
4、测试
$HIVE_HOME/bin/hive
查询数据库时会报
这是以为配置了独立式metastore,服务没启动
$HIVE_HOME/bin/hive --service metastore
启动后在查询,则正常