前置环境
Hadoop集群必须部署完成,如果还没有搭建请先前往>>Hadoop全分布搭建笔记
程序版本
hive 1.1.0 mysql 5.7.25 mysql-connector-java-5.1.39-bin.jar
资源下载
官网下载:
mysql-5.7.25-1.el7.x86_64.rpm-bundle.tar:https://downloads.mysql.com/archives/community/
链接:https://pan.xunlei.com/s/VNoQg4wdxda5by6L8Lvug9erA1?pwd=y9tf#
提取码:y9tf
组件介绍
hive是基于Hadoop的一个数据仓库工具,用来进行数据提取、转化、加载,这是一种可以存储、查询和分析存储在Hadoop中的大规模数据的机制。hive数据仓库工具能将结构化的数据文件映射为一张数据库表,并提供SQL查询功能,能将SQL语句转变成MapReduce任务来执行。Hive的优点是学习成本低,可以通过类似SQL语句实现快速MapReduce统计,使MapReduce变得更加简单,而不必开发专门的MapReduce应用程序。hive十分适合对数据仓库进行统计分析。
操作流程
部署Hive前建议先更换系统自带的数据库,以免对后续的部署造成影响
部署Hive时需要更改Hadoop中的驱动文件,最好先停止Hadoop集群,避免出现异常
上传程序文件
使用FTP工具(xftp)上传Hive的程序包到master
[root@master ~]# ls
apache-hive-1.1.0-bin.tar.gz mysql-connector-java-5.1.39-bin.jar
mysql-5.7.25-1.el7.x86_64.rpm-bundle.tar
更换数据库
查询出旧版数据库的名称以及版本并删除数据库
# 查询旧版数据库
[root@master ~]# rpm -qa | grep mariadb
mariadb-libs-5.5.68-1.el7.x86_64
# yum remove 删除旧版数据库
[root@master ~]# yum -y remove mariadb-libs-5.5.68-1.el7.x86_64
已加载插件:fastestmirror
......
完毕!
解压MySql数据库
# 创建解压目录
[root@master ~]# mkdir /opt/data
# 解压MySql
解压方式:xf (不显示解压过程) -xvf(显示解压过程)
[root@master ~]# tar xf mysql-5.7.25-1.el7.x86_64.rpm-bundle.tar -C /opt/data/
# 进入解压后的目录
[root@master ~]# cd /opt/data/
# 查看解压出来的文件是否正确
[root@master data]# ls
mysql-community-client-5.7.25-1.el7.x86_64.rpm
mysql-community-common-5.7.25-1.el7.x86_64.rpm
mysql-community-devel-5.7.25-1.el7.x86_64.rpm
mysql-community-embedded-5.7.25-1.el7.x86_64.rpm
mysql-community-embedded-compat-5.7.25-1.el7.x86_64.rpm
mysql-community-embedded-devel-5.7.25-1.el7.x86_64.rpm
mysql-community-libs-5.7.25-1.el7.x86_64.rpm
mysql-community-libs-compat-5.7.25-1.el7.x86_64.rpm
mysql-community-server-5.7.25-1.el7.x86_64.rpm
mysql-community-test-5.7.25-1.el7.x86_64.rpm
安装MySql数据库,最好按照下面的顺序进行安装MySql数据库
[root@master data]# rpm -i mysql-community-common-5.7.25-1.el7.x86_64.rpm
警告:mysql-community-common-5.7.25-1.el7.x86_64.rpm: 头V3 DSA/SHA1 Signature, 密钥 ID 5072e1f5: NOKEY
[root@master data]# rpm -i mysql-community-libs-5.7.25-1.el7.x86_64.rpm
警告:mysql-community-libs-5.7.25-1.el7.x86_64.rpm: 头V3 DSA/SHA1 Signature, 密钥 ID 5072e1f5: NOKEY
[root@master data]# rpm -i mysql-community-client-5.7.25-1.el7.x86_64.rpm
警告:mysql-community-client-5.7.25-1.el7.x86_64.rpm: 头V3 DSA/SHA1 Signature, 密钥 ID 5072e1f5: NOKEY
[root@master data]# rpm -i mysql-community-server-5.7.25-1.el7.x86_64.rpm --force --nodeps
警告:mysql-community-server-5.7.25-1.el7.x86_64.rpm: 头V3 DSA/SHA1 Signature, 密钥 ID 5072e1f5: NOKEY
MySql服务初始化配置
# 查看MySql服务运行状态,如果在运行,请先停止该服务
[root@master data]# systemctl status mysqld
# 停止MySql服务
[root@master data]# systemctl stop mysqld
# 初始化MySql服务
[root@master data]# mysqld --initialize --console
# 查看MySql生成的登录密码
[root@master data]# cat /var/log/mysqld.log
......
2021-03-18T09:59:50.605512Z 1 [Note] A temporary password is generated for root@localhost: L)hjW7aQqhYl
我这里的密码为:L)hjW7aQqhYl
更改目录所有权:chown -R mysql:mysql /var/lib/mysql
[root@master data]# chown -R mysql:mysql /var/lib/mysql
启动MySql服务:systemctl start mysqld
[root@master data]# systemctl start mysqld
使用初始密码登录MySql
[root@master data]# mysql -uroot -p
Enter password: L)hjW7aQqhYl
Welcome to the MySQL monitor. Commands end with ; or \g.
......
mysql>
进行一些必要的设置
# 修改MySql密码为:123456
mysql> alter user 'root'@'localhost' identified by '123456';
Query OK, 0 rows affected (0.00 sec)
# 设置访问权限,否则Hive将无法连接到MySql
mysql> grant all privileges on *.* to 'root'@'%' identified by '123456';
Query OK, 0 rows affected, 1 warning (0.00 sec)
# 配置完成,退出Mysql
mysql> exit;
Bye
至此——MySql数据库配置完成
解压Hive
[root@master ~]# tar xf apache-hive-1.1.0-bin.tar.gz -C /usr/local/src/
# 解压后,cd进入Hive解压目录
[root@master ~]# cd /usr/local/src/
[root@master src]# ls
apache-hive-1.1.0-bin hadoop jdk
# 修改Hive文件夹名称
[root@master src]# mv apache-hive-1.1.0-bin/ hive
[root@master src]# ls
hadoop hive jdk
配置环境变量
使环境变量仅对root用户生效,编辑root用户的环境变量
[root@master src]# vi /root/.bash_profile
修改后的文件状态
# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
# User specific environment and startup programs
JAVA_HOME=/usr/local/src/jdk
HADOOP_HOME=/usr/local/src/hadoop
HIVE_HOME=/usr/local/src/hive
PATH=$PATH:$HOME/bin:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$HIVE_HOME/bin
export PATH
生效环境变量
[root@master src]# source /root/.bash_profile
配置Hive
进入Hive配置目录:cd /usr/local/src/hive/conf/
新建Hive配置文件:touch hive-site.xml
编辑Hive配置文件:vi hive-site.xml
<configuration>
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://master:3306/hive?createDatabaseIfNotExist=true&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>root</value>
</property>
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>123456</value>
</property>
</configuration>
复制MySql驱动包到Hive驱动目录下:
cp /root/mysql-connector-java-5.1.39-bin.jar /usr/local/src/hive/lib/
删除Hadoop Yarn驱动目录下的旧版jline.jar:
rm -f /usr/local/src/hadoop/share/hadoop/yarn/lib/jline-0.9.94.jar
将Hive驱动目录下的jline.jar复制到Yarn驱动目录下:
cp /usr/local/src/hive/lib/jline-2.12.jar /usr/local/src/hadoop/share/hadoop/yarn/lib/
启动Hive
启动Hadoop集群后才能启动Hive;如果Hadoop已经启动,请重启Hadoop后再启动Hive
[root@master conf]# start-all.sh
......
slave2: starting nodemanager, logging to /usr/local/src/hadoop/logs/yarn-root-nodemanager-slave2.out
slave1: starting nodemanager, logging to /usr/local/src/hadoop/logs/yarn-root-nodemanager-slave1.out
master: starting nodemanager, logging to /usr/local/src/hadoop/logs/yarn-root-nodemanager-master.out
启动Hive
[root@master conf]# hive
Logging initialized using configuration in jar:file:/usr/local/src/hive/lib/hive-common-1.1.0.jar!/hive-log4j.properties
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/usr/local/src/hadoop/share/hadoop/common/lib/slf4j-log4j12-1.7.5.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/usr/local/src/hive/lib/hive-jdbc-1.1.0-standalone.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: Actual binding is of type [org.slf4j.impl.Log4jLoggerFactory]
hive>文章来源:https://www.toymoban.com/news/detail-822884.html
至此——Hive数据仓库部署完成文章来源地址https://www.toymoban.com/news/detail-822884.html
到了这里,关于大数据平台环境搭建---- Hive&MySql数据库组件配置的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!