centos8+mysql8+hive2.3(远程连接模式)

这是对hive远程连接模式的全程安装操作!!!

因为这个模式需要mysql依赖,所有首先在centos8上安装mysql(使用yun安装)

一、mysql8安装
1.首先查看本地是否安装了mysql:rpm -qa | grep -i mysql,如果没有安装请直接跳过前四条
centos8+mysql8+hive2.3(远程连接模式)_第1张图片
2.删除这些依赖和安装包yum remove mysql mysql-server mysql-libs或者用rpm -e --nodeps 名字一个一个删除(下面有例子)
在这里插入图片描述
3.查看依赖,注册,日志等配置文件find / -name mysql
centos8+mysql8+hive2.3(远程连接模式)_第2张图片
4.删除这些配置文件使用 rm -rf 删除查找到的配置。
在这里插入图片描述5.安装yum资源库wget https://dev.mysql.com/get/mysql80-community-release-el8-1.noarch.rpm
centos8+mysql8+hive2.3(远程连接模式)_第3张图片6.安装MySQL是数据源yum install mysql80-community-release-el8-1.noarch.rpm
centos8+mysql8+hive2.3(远程连接模式)_第4张图片
7.查看数据源是否安装成功yum repolist enabled | grep "mysql.*-community.*"
centos8+mysql8+hive2.3(远程连接模式)_第5张图片
8.禁用centos8自带的mysql模块yum module disable mysql
centos8+mysql8+hive2.3(远程连接模式)_第6张图片
9.安装mysqlyum install mysql-community-server
centos8+mysql8+hive2.3(远程连接模式)_第7张图片10.查看启动mysql服务:systemctl start mysqld.service或者service mysqld start
centos8+mysql8+hive2.3(远程连接模式)_第8张图片
11.查看mysql随机密码grep 'temporary password' /var/log/mysqld.log
在这里插入图片描述12.登录并修改密码:mysql -u root -p
注意这儿输入密码时没有显示的:可以用mysql -u root -p临时密码直接登录。
centos8+mysql8+hive2.3(远程连接模式)_第9张图片
13.修改密码ALTER USER 'root'@'localhost' IDENTIFIED BY '密码';
在这里插入图片描述

密码强度不符合安全需求,所有需要重新设置。
可以通过查看密钥规则 SHOW VARIABLES LIKE 'validate_password%'
centos8+mysql8+hive2.3(远程连接模式)_第10张图片
还可以修改密钥规则,通过设置全局变量:set global 变量名=值value;
centos8+mysql8+hive2.3(远程连接模式)_第11张图片
然后再次修改密码
在这里插入图片描述
13.开启mysql8的远程访问
先创建权限记录:create user 'root'@'%' identified by 'root123';
然后授权:grant all privileges on *.* to 'root'@'%' with grant option;//%就代表所有用户(此处也可换为具体的用户名)
centos8+mysql8+hive2.3(远程连接模式)_第12张图片
然后flush privileges;

到这儿mysql就算安装成功了
centos8+mysql8+hive2.3(远程连接模式)_第13张图片

二、hive的安装
1.去下载hive安装包:下载地址
2.上传到Linux
3.解压hive安装包(解压到一个用户具有w+x+r权限的文件夹下)
4.在/etc/profile.d文件下创建my_env.sh文件用来存放配置信息(其他的配置信息我也写在这里面的,个人不建议在/etc/profile下面改)
centos8+mysql8+hive2.3(远程连接模式)_第14张图片
5.进入hive解压文件下的conf文件夹中编辑配置文件

hive-env.sh文件

cp hive-env.sh.template hive-env.sh
vim hive-env.sh
#这是自己的Hadoop解压地址
export  HADOOP_HOME=/opt/hadoop/hadoop2
 # Hive Configuration Directory can be controlled by:
 #这是自己的jdk解压地址
 export JAVA_HOME=/opt/java/jdk1.8
 #这是自己的hive解压地址
 export HIVE_HOME=/opt/hive/hive2.3
 export HIVE_CONF_DIR=${HIVE_HOME}/conf 

 # Folder containing extra libraries required for hive compilation/execution can be controlled by:
 export HIVE_AUX_JARS_PATH=${HIVE_HOME}/lib
**hive-site.xml文件**
新建一个hive-site.xml文件:`touch hive-site.xml` 
然后添加
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<!-- 需要提前在hdfs上创建文件 /hive/tmp /hive/warehouse /hive/log -->
<!-- 设置 hive仓库的临时文件位置 -->
	<property>
	 <name>hive.exec.scratchdir</name>
	 <value>/hive/tmp</value>
	</property>
	<!--设置 hive仓库所在的位置 -->
	<property>
	<name>hive.metastore.warehouse.dir</name>
	 <value>/hive/warehouse</value>
	</property>
<!-- 设置日志位置 -->
	<property>
	 <name>hive.querylog.location</name>
	<value>/hive/log</value>
	</property>
	<!-- 设置与mysq的连接-->
	<property>
	<name>javax.jdo.option.ConnectionURL</name>
	<value>jdbc:mysql://192.168.21.132:3306/hive?createDatabaseIfNotExist=true</value>
	</property>
	<property>			
		<name>javax.jdo.option.ConnectionDriverName</name>
<!-- 注意在mysql8中com.mysql.jdbc.Driver已经过时了,所有需要设置成com.mysql.cj.jdbc.Driver -->
		<value>com.mysql.cj.jdbc.Driver</value>

	</property>
<!-- 设置与mysq的连接的用户名-->
	<property>

		<name>javax.jdo.option.ConnectionUserName</name>

		<value>root</value>

	</property>
<!-- 设置与mysq的连接用户密码-->
	<property>

		<name>javax.jdo.option.ConnectionPassword</name>

		<value>123456</value>

	</property> 

</configuration>

注意在初始化之前一定要打开hadoop和yarn

6.hive的初始化操作schematool -dbType mysql -initSchema
centos8+mysql8+hive2.3(远程连接模式)_第15张图片
遇到的问题:
由于我在mysql数据库中自己创建了一个hive数据库产生的错误,删除之后,重新格式化就好了。
对应hive-site.xml文件中数据库的连接配置
centos8+mysql8+hive2.3(远程连接模式)_第16张图片

7.启动hive:bin/hive
centos8+mysql8+hive2.3(远程连接模式)_第17张图片

show databases;

在这里插入图片描述
到这儿就完成了!!!

你可能感兴趣的:(hive,hive,mysql,centos,java)