前提:已经安装好HDFS
通用环境配置
- 设置环境变量:
vi ~/.bashrc
HIVE_HOME=/root/training/apache-hive-2.3.0-bin
export HIVE_HOME
PATH=$HIVE_HOME/bin:$PATH
export PATH
- 生效环境变量:
source ~/.bash_profile
1.嵌入模式
-
特点:
- 不需要MySQL的支持,使用自带的Derby数据库来存储元信息
- 只支持一个链接
- 用于开发测试
-
安装配置:
- 解压:
tar -zxvf apache-hive-2.3.0-bin.tar.gz -C ~/training/
- 修改配置文件:
vi hive-site.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:derby:;databaseName=metastore_db;create=true</value>
</property>
<property>
<name>javax.jdo.option.ConnectionDriverName</name>
<value>org.apache.derby.jdbc.EmbeddedDriver</value>
</property>
<property>
<name>hive.metastore.local</name>
<value>true</value>
</property>
<!--Hive数据存储的路径-->
<property>
<name>hive.metastore.warehouse.dir</name>
<value>file:///root/training/apache-hive-2.3.0-bin/warehouse</value>
</property>
</configuration>
- 初始化MetaStore:
schematool -dbType derby -initSchema
- 启动hive仓库:
hive
- 注意:
- 如果在当前目录下启动hive客户端,会在当前目录下生成临时文件
- 下次必须还在这个目录下打开hive客户端,否则之前的数据会丢失
2.本地模式(远程模式)
- 特点:
- 需要MySQL的数据库支持
- 用于开发、生产
- 安装配置:
- 解压:
tar -zxvf apache-hive-2.3.0-bin.tar.gz -C ~/training/
- 把MySQL的Driver放到Hive的lib目录(提前装好MySql)
- 修改配置文件:
vi hive-site.xml
- 解压:
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<!--mysql IP 根据具体情况配置-->
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://localhost:3306/hive?useSSL=false</value>
</property>
<property>
<name>javax.jdo.option.ConnectionDriverName</name>
<value>com.mysql.jdbc.Driver</value>
</property>
<!--mysql中提前创建好用户:hiveowner-->
<property>
<name>javax.jdo.option.ConnectionUserName</name>
<value>hiveowner</value>
</property>
<!--mysql用户hiveowner的密码-->
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>qwer</value>
</property>
</configuration>
- 初始化MetaStore:schematool -dbType mysql -initSchema
- 启动hive仓库:
hive