hive version 2.3.6
mysql version 5.7
1.mysql(5.7) install
在MySQL官网中下载YUM源rpm安装包:http://dev.mysql.com/downloads/repo/yum/
shell> wget http://[dev.mysql.com/](http://dev.mysql.com/)get/mysql57-community-release-el7-8.noarch.rpm
安装mysql源
shell> yum localinstall mysql57-community-release-el7-8.noarch.rpm
安装mysql
shell> yum install mysql-community-server
启动MySQL服务
shell> systemctl start mysqld
开机启动
shell> systemctl enable mysqld
shell> systemctl daemon-reload
修改root密码
mysql安装完成之后,在/var/log/mysqld.log文件中给root生成了一个默认密码。通过下面的方式找到root默认密码,然后登录mysql进行修改:shell> grep 'temporary password' /var/log/mysqld.log
用root和初始的密码登录mysql
修改root密码 mysal> update user set authentication_string =password('newpassword') where user='root';
添加用户远程登陆 mysql > GRANT ALL PRIVILEGES ON . TO 'root'@'%' IDENTIFIED BY 'password' WITH GRANT OPTION;
配置默认编码为utf8:修改/etc/my.cnf配置文件,在[mysqld]下添加编码配置:
character_set_server=utf8 init_connect='SET NAMES utf8'
重启mysql: shell> service mysqld restart
https://blog.csdn.net/xyang81/article/details/51759200
2.hive(2.3.6) install
2.1 下载安装
下载hive https://mirrors.tuna.tsinghua.edu.cn/apache/hive/hive-2.3.6/apache-hive-2.3.6-bin.tar.gz,并解压到/opt/module
添加环境变量:
export HIVE_HOME=/opt/module/hive-2.3.6
export PATH=$HIVE_HOME/bin:$PATH
2.2 配置hive
添加java-jdbc驱动,驱动下载地址:http://mvnrepository.com/artifact/mysql/mysql-connector-java,下载文件:mysql-connector-java-5.1.46.jar,将驱动添加到:HIVE_HOME/lib
修改hive配置文件:
shell> cd /opt/module/hive-2.3.6/conf
shell> cp hive-env.sh.template hive-env.sh
shell> cp hive-default.xml.template hive-site.xml
shell> vi hive-site.xml
修改javax.jdo.option.connectionURL: jdbc:mysql://hadoop-master:3306/hive?createDatabaseIfNotExist=true
修改javax.jdo.option.ConnectionDriverName: com.mysql.jdbc.Driver
修改javax.jdo.option.ConnectionUserName:root
修改javax.jdo.option.ConnectionPassword为root对应的登录密码
修改hive.metastore.schema.verification: false
shell> vi hive-env.sh,增加下面配置
# HADOOP_HOME=${bin}/../../hadoop
export HADOOP_HOME=/usr/hadoop/hadoop-2.7.7
# Hive Configuration Directory can be controlled by:
export HIVE_CONF_DIR=/opt/module/hive-2.3.6/conf
# Folder containing extra libraries required for hive compilation/execution can be controlled by:
export HIVE_AUX_JARS_PATH=/opt/module/hive-2.3.6/lib
2.3 hiveserver2客户端配置
hive提供了三种操作方式,一种是使用hive命令行方式进行操作;一种是使用java的api方式进行操作;还有一种是使用http的rest api进行操作。
HiveServer2(HS2)是一种能使客户端执行Hive查询的服务。HiveServer2可以支持多客户端并发和身份认证。旨在为开放API客户端(如JDBC和ODBC)提供更好的支持。
HiveServer2单进程运行,提供组合服务,包括基于Thrift的Hive服务(TCP或HTTP)和用于Web UI的Jetty Web服务器。
2.3.1 配置hive-site.xml
增加如下配置,其中hadoop是访问hadoop hdfs的用户名
<property>
<name>hadoop.proxyuser.hadoop.hosts</name>
<value>*</value>
</property>
<property>
<name>hadoop.proxyuser.hadoop.groups</name>
<value>*</value>
</property>
2.3.2 配置hadoop core-site.xml
增加如下配置,其中hadoop是访问hdfs的用户名
<property>
<name>hadoop.proxyuser.hadoop.hosts</name>
<value>*</value>
</property>
<property>
<name>hadoop.proxyuser.hadoop.groups</name>
<value>*</value>
</property>
2.4 启动和测试
对mysql数据库进行初始化 shell> $HIVE_HOME/bin/schematool -dbType mysql -initSchema
执行结束,可以在mysql中看到增加了hive数据库并初始化了一些表。
启动hive: shell> hive
启动hiveserver2: shell> hiveserver2
用beeline连接: shell> beeline
!connect jdbc:hive2://hadoop-master:10000/default
接下来可以在hiveserver2中操作,基本操作和hive中一样
[图片上传失败...(image-e65f21-1589181125364)]
2.5 hive 客户端界面工具
SQuirrel SQL Client是一款支持Hive的可视化工具,官网及下载地址为:http://squirrel-sql.sourceforge.net/。
2.5.1安装
双击下载的jar包,点击next,需要使用jdk打开,确保本地安装并配置好jdk,一路next, 安装你需要的插件,Base为必须,再选择mysql
2.5.2 启动客户端并连接
新建Drive,如下图,其中extra class path 为hive/lib下面的所有jar包
[图片上传失败...(image-af4035-1589181125364)]
新建Alias
[图片上传失败...(image-6922a8-1589181125363)]
连接成功后会显示hive表中的信息
[图片上传失败...(image-5b1e6a-1589181125364)]