背景
以上所有内容,均搬自官方文档,还有一部分是自己在实际经验中的总结。官方文档相关已经非常详细,也希望大家能养成看官方文档的好习惯。
官方文档址:https://cwiki.apache.org/confluence/display/Hive/AdminManual+Metastore+Administration
说明
hive metastore 是什么呢?
它是一个服务端,简称server。默认的端口为9083
有什么作用呢?
作用是建立起和hive客户端的连接,当客户端来请求,server去远程metastore数据库查询信息返回
hive metastore的模式
hive metastore 有两种模式,本地和远程,本地模式用的很少不讲,主要讲一下远程模式
- 1、远程模式启动需要的配置参数如下
javax.jdo.option.ConnectionURL
javax.jdo.option.ConnectionDriverName
javax.jdo.option.ConnectionUserName
javax.jdo.option.ConnectionPassword
hive.metastore.warehouse.dir
- 2、启动方式
hive --service metastore
注意这种情况用的不多,因为没有在后台启动,一般情况下都是用nohup的方式在后台启动,具体如下
nohup hive --service metastore >> log路径 2>&1 &
注意
1、远程metastore 数据库支持的有很多,这一块大部分在实际场景用的是mysql
######在mysql的场景下注意2点
- 1、mysql 版本有要求,官方文档中注明mysql版本不低于5.6.17
- 2、在启动hive metastore的时候,需要将mysql连接的jar包放到HIVE_HOME/lib里面,比如mysql-connector-java-5.1.31-bin.jar这种的