Hive安装配置
2020-03-08 本文已影响0人
TZX_0710
安装包:https://pan.baidu.com/s/15d7uOQqvGE3MY-8uQwGXZw 提取码:d6bk
Hive只需要在一个节点上安装就可以了。#解压文件 tar -zxvf apache-hive.tar.gz #修改环境配置文件 vim /etc/profile export HIVE_HOME=/usr/local/apache-hive-2.3.6-bin export PATH=$PATH:${HIVE_HOME}/bin #环境生效 source /etc/profile #安装mysql服务 yum -y install mysql-community-server #安装完成之后启动mysql服务 systemctl restart mysqld.service #在mysql日志中找到密码 grep "A temporary password" /var/log/mysqld.log #登录mysql mysql -u root -p #操作mysql之前必须先修改密码 You must reset your password using ALTER USER statement before executing this statement. set password=password('长度为8密码中英文');--修改简单密码不成功 因为 myslq的密码策略限制 #再次登录mysql数据库 然后查看策略进行修改 SHOW VARIABLES LIKE 'validate_password%';
下图是经过修改之后的
初始化策略密码长度为8
修改密码强度为LOW
set global validate_password_policy=LOW;修改密码长度
set global validate_password_length=4;
flush privieleges;
开启远程登录
GRANT ALL PRIVILEGES ON . TO 'root'@'%' IDENTIFIED BY 'root';
cp hive-env.sh.template hive-env.sh
vim hive-env.sh指定Hadoop安装路径
HADOOP_HOME=/usr/local/hadoop-2.7.7
修改hive-site.xml配置文件
cp hive-default.xml.template hive-site.xml vim hive-site.xml <!--mysql数据库链接--> <property> <name>javax.jdo.option.ConnectionURL</name> <value>jdbc:mysql://node01:3006/hadoop_hive?>createDatabaseIfNotExist=true</value> </property> <!--mysql的驱动--> <property> <name>javax.jdo.option.ConnectionDriverName</name> <value>com.mysql.jdbc.Driver</value> </property> <!--mysql连接用户名--> <property> <name>javax.jdo.option.ConnectionUserName</name> <value>root</value> </property> <!--mysql的数据库密码--> <property> <name>javax.jdo.option.ConnectionPassword</name> <value>root</value> </property>
#拷贝数据库驱动到hive的lib目录下面
cp mysql5.1.7.jar /usr/local/hive/lib
#初始化元数据库 当使用2.x版本时,必须手动初始化元数据库。在hive的bin安装目录下
schematool -dbType mysql -initSchema
#启动hive
hive
#Hive内置了HiveServer和HiveServer2服务,两者都允许客户端使用多种编程语言链接,
#但是HiveServer不能处理多个客户端的并发请求所以产生了HiveServer2。HiveServer2(HS2)允许远程客户端可以使用各种编程语言向Hive提交申请并检索
#结果
支持多客户端并发访问和身份验证。HS2是由多个服务组成的单个进程,包括Thrift的Hive服务和用域WebUi的Jeety Web服务。
HiveServer2拥有自己的CLI工具-Beeline。Beeline是一个基于SQLLine的JDBC客户端。
由于目前HiveSever2是开发维护的重点,所以官方更加推荐使用Beeline而不是Hive Cli
修改Hadoop配置
<property>
<name>hadoop.proxyuser.root.hosts</name>
<value>*</value>
</property>
<property>
<name>hadoop.proxyuser.root.groups</name>
<value>*</value>
</property>
只所以要配置这一步,是因为Hadoop2.0以后引入了安全伪装几支,使得hadoop不允许上层系统(如Hive)直接将实际用户传递到Hadoop层,而应该将实际用户传递给一个超级代理,由该代理在hadoop上执行操作,避免任意客户端随意操作hadoop。如果不配置这一步,在之后的链接可能会抛出
AuthorizationException
异常
启动hiveserver2
nohup hiveserver2 &
#测试Hive是否安装成功
beeline -u jdbc:hive2://node01:10000 -n root