centos8安装Hive
下载Hive
wget https://mirrors.tuna.tsinghua.edu.cn/apache/hive/hive-2.3.7/apache-hive-2.3.7-bin.tar.gz
解压
tar -zxvf apache-hive-2.3.7-bin.tar.gz
mv apache-hive-2.3.7-bin /usr/local/hive
cd /usr/local/hive
配置环境变量
export HIVE_HOME=/usr/local/hive
export PATH=$HIVE_HOME/bin:$PATH
使其生效
source /etc/profile
安装mysql
sudo dnf install @mysql
启动mysql服务,并使得以后开机自启动:
sudo systemctl enable --now mysqld
查看mysql状态,看看是否成功启动:
sudo systemctl status mysqld
下载jdbc connector
wget https://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-8.0.22.tar.gz
将其拷贝至$HIVE_HOME/lib目录下
mv mysql-connector-java-5.1.43.tar.gz $HIVE_HOME/lib
修改hive配置文件
cd /usr/local/hive/conf
复制初始化文件并重改名
cp hive-env.sh.template hive-env.sh
cp hive-default.xml.template hive-site.xml
cp hive-log4j2.properties.template hive-log4j2.properties
cp hive-exec-log4j2.properties.template hive-exec-log4j2.properties
hive-env.sh配置
export HADOOP_HOME=/usr/local/hadoop
export HIVE_HOME=/usr/local/hive
export HIVE_CONF_DIR=/usr/local/hive/conf
在hdfs 中创建下面的目录 ,并且授权
hdfs dfs -mkdir -p /user/hive/warehouse
hdfs dfs -mkdir -p /user/hive/tmp
hdfs dfs -mkdir -p /user/hive/log
hdfs dfs -chmod -R 777 /user/hive/warehouse
hdfs dfs -chmod -R 777 /user/hive/tmp
hdfs dfs -chmod -R 777 /user/hive/log
hive-site.xml配置
<property>
<name>hive.exec.scratchdir</name>
<value>/user/hive/tmp</value>
</property>
<property>
<name>hive.metastore.warehouse.dir</name>
<value>/user/hive/warehouse</value>
</property>
<property>
<name>hive.querylog.location</name>
<value>/user/hive/log</value>
</property>
## 配置 MySQL 数据库连接信息
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://localhost:3306/metastore?createDatabaseIfNotExist=true&characterEncoding=UTF-8&useSSL=false</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>hive</value>
</property>
创建tmp文件
mkdir /home/hadoop/hive-2.3.7/tmp
在hive-site.xml中修改
把{system:java.io.tmpdir} 改成 /home/hadoop/hive-2.3.7/tmp/
把 {system:user.name} 改成 {user.name}
初始化hive并启动
schematool -dbType mysql -initSchema hive hive