大数据技术架构(组件)——Hive:环境准备2
1.0.1.5、Mysql安装
1.0.1.5.1、软件包下载解压缩
官网或者直接从百度云盘中下载即可。
https://dev.mysql.com/downloads/mysql/
1.0.1.5.2、环境变量配置
1.0.1.5.2.1、创建系统环境变量MYSQL_HOME
1.0.1.5.2.2、将系统环境变量配置到Path上
1.0.1.5.2.3、生成Data文件
使用系统管理员打开CMD窗口
--执行下面命令
mysqld --initialize-insecure --user=mysql
1.0.1.5.2.4、安装MYSQL并启动服务
--执行命令
mysqld -install
--启动服务
net start MySQL
1.0.1.5.2.5、登录Mysql并修改密码
--初始登录时不需要密码,直接回车即可
mysql -u root -p
--修改root默认密码
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql native password BY '123456';
--刷新提交
flush privileges;
1.0.1.6、Hive安装
如果你想要深入学习Hive底层,那么源码编译是必不可少的,所以本篇将采用源码包编译安装的方式。
1.0.1.6.1、下载软件包并解压缩
1.0.1.6.2、编译
mvn clean package -Phadoop-2 -DskipTests -Pdist
注意:在编译的过程中遇到问题的可能性非常大,大部分是因为maven,可能是网络问题,也可能跟你的镜像配置也有关系。另外对于一些模块编译过程中出现Could not transfer artifact XXXX的问题,可以先把pom文件中的scope设置注释掉!
1.0.1.6.3、安装
编译完成后,可以在$HIVE_SRC_HOME/packaging/target目录下找到对应的可执行的压缩包
1.0.1.6.3.1、配置环境变量
创建HIVE_HOME系统变量,然后将该变量追加引用到Path变量中
1.0.1.6.3.2、编辑配置文件
1.0.1.6.3.2.1、编辑hive-env.sh文件
#配置环境信息
# Set HADOOP HOME to point to a specific hadoop install directory
export HADOOP_HOME=D:\GitCode\hadoop-2.7.2
# Hive Configuration Directory can be controlled by:
export HIVE CONF DIR=D: GitCode apache-hive-2.3.9-bin\conf
# Folder containing extra libraries required for hive compilation/execution can be controlled by:
export HIVE AUX JARS PATH=D: GitCode apache-hive-2.3.9-bin lib
1.0.1.6.3.2.2、编辑hive-site.xml文件
该文件中的参数稍微有些多,不过我们只改动基础的部分即可。
<property>
<name>hive .repl.rootdir</name>
<value>D:\GitCode\apache-hive-2.3.9-bin\tmp_local</value>
</property>
<property>
<name>hive.repl.cmrootdir</name>
<value>D:\GitCode\apache-hive-2.3.9-bin\tmp_local</value>
</property>
<property>
<name>hive.exec.local.scratchdir</name>
<value>D:\GitCode\apache-hive-2.3.9-bin\tmp_local</value>
</property>
<property>
<name>hive .downloaded.resources .dir</name>
<value>D:\GitCode\apache-hive-2.3.9-bin\tmp_local\${hive.session.id}_resources</value>
</property>
<property>
<name>hive.server2.logging.operation.log.location</name>
<value>D:\GitCode\apache-hive-2.3.9-bin\tmp_local</value>
</property>
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>123456</value>
</property>
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysgl://ocalhost:3306/hive?createDatabaseIfNotExist=true&characterEncoding=UTF-8</value>
</property>
<property>
<name>javax.jdo.option.ConnectionUserName</name>
<value>root< value>
</property>
<property>
<name>hive.metastore.schema.verification</name>
<value>false</value>
</property>
1.0.1.6.3.2.3、log文件重命名
将conf文件中的几个Log文件后缀带有template移除即可
1.0.1.6.3.3、驱动包加载
本文使用mysql作为元数据存储,因此需要将JDBC的驱动包放到$HIVE_HOME/lib目录下
1.0.1.6.3.4、元数据初始化
在windows环境下,$HIVE_HOME/bin目录下并未找到cmd结尾的可执行文件,因此为了调通基础环境,可以从低版本中进行拷贝。本文涉及到的脚本和软件包都打包上传到云盘中
# 打开cmd命令行
$HIVE HOME/bin> hive schematool -dbType mysgl -initSchema --verbose
注意:在初始化过程中,可能会有表无法创建的问题,这里手动创建即可。或者直接source sql文件。本篇文章使用的是hive-shceam-2.3.0.mysql.sql
SQL文件位置于HIVE_HOME/scripts/metastore/upgrade/mysql下: