hive默认的元数据库为derby,除了derby外,hive也可以设置元数据库为mysql
系统环境
操作平台 | macOS X 10.13.2 64位 |
---|---|
hadoop版本 | 3.1.2 |
hive版本 | 3.1.1 |
mysql版本 | 5.6.30 |
mysql所在平台 | centOS 6.5 |
jdk版本 | 1.8.0 |
jdbc版本 | mysql-connector-java-8.0.16.jar |
软件安装
hadoop与hive采用 brewhome安装
brew install hadoop
brew install hive
mysql很早前通过源码编译安装的,网上有绿色版可以直接下载使用.
jdk傻瓜式安装过程.
环境变量配置
# java config
export MAVEN_HOME=/usr/local/mvn/
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.8.0_151.jdk/Contents/Home
export CLASSPATH=$JAVA_HOME/lib
export PATH=$PATH:$JAVA_HOME/bin
# hadoop config
export HADOOP_HOME=/usr/local/Cellar/hadoop/3.1.2/libexec
export HADOOP_ROOT_LOGGER=ALL,Console
export HADOOP_COMMON_HOME=$HADOOP_HOME
export PATH=$PATH:HADOOP_HOME/bin
# hive config
export HIVE_HOME=/usr/local/Cellar/hive/3.1.1/libexec
export PATH=$PATH:$HIVE_HOME/bin
配置
- 创建一个hive用的数据库与数据库账号(可以直接用root),如果是远程数据库的话,需要修改
mysql.user
表,修改Host
字段为hive机器所在ip,简单点直接改为*
即可 - 下载
jdbc
包,放置到$HIVE_HOME/lib
下 - 配置hive,相关配置点在后端
- 初始化数据库,启动hive服务
创建hive_sit.xml
cd $HIVE_HOME/conf
cp hive-default.xml.template hive_site.xml
vim hive_sit.xml
输入如下结构,具体信息请自行修改
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://数据库:端口/数据库名称</value>
</property>
<property>
<name>javax.jdo.option.ConnectionDriverName</name>
<value>com.mysql.cj.jdbc.Driver</value>
</property>
<property>
<name>javax.jdo.option.ConnectionUserName</name>
<value>用户名</value>
</property>
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>密码</value>
</property>
</configuration>
修改hive_env.sh
,设置HADOOP_HOME
,HIVE_CONF_DIR
,HIVE_AUX_JARS_PATH
三项
HADOOP_HOME=/usr/local/Cellar/hadoop/3.1.2/libexec
export HIVE_CONF_DIR=/usr/local/Cellar/hive/3.1.1/libexec/conf
export HIVE_AUX_JARS_PATH=/usr/local/Cellar/hive/3.1.1/libexec/lib
初始化hive的元数据库
schematool -dbType mysql -initSchema
初始化后数据库中会有如下表:
屏幕快照 2019-05-10 下午3.27.29.png
启动hive
hive --service metastore &
测试,输入hive
并回车进入hive命令行状态
hive> show databases;
OK
default
Time taken: 0.123 seconds, Fetched: 1 row(s)
如果返回以上结果,表示配置完毕
网友评论