微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

华为云Centos7搭建hadoop集群四:mysql,hive安装

华为云Centos7搭建hadoop集群四:MysqL,hive安装
MysqL,hive上传至/opt/module中
MysqL我使用rpm进行安装,节点选择03节点
1.检查当前系统是否安装过MysqL
rpm -qa|grep mariadb

如果存在通过命令卸载
sudo rpm -e --nodeps mariadb-libs

检查mysql依赖

2.解压MysqL包,因为linux可能是最小化安装会存在缺少yum依赖,先安装
sudo yum install -y libaio
3.解压MysqL的rpm包后,按照顺序安装
sudo rpm -ivh MysqL-community-common-5.7.28-1.el7.x86_64.rpm
sudo rpm -ivh MysqL-community-libs-5.7.28-1.el7.x86_64.rpm
sudo rpm -ivh MysqL-community-libs-compat-5.7.28-1.el7.x86_64.rpm
sudo rpm -ivh MysqL-community-client-5.7.28-1.el7.x86_64.rpm
sudo rpm -ivh MysqL-community-server-5.7.28-1.el7.x86_64.rpm

mysqlrpm包列表

rpm安装

4.查看/etc/my.cnf 文件中 datadir 指向的目录下的所有内容,如果有内容就清空

在这里插入图片描述

5.初始化数据库并查看root密码 sudo MysqLd --initialize --user=MysqL ,查看/var/log/MysqLd.log生成的root初始密码

在这里插入图片描述

6.启动MysqL服务并使用生成的临时密码进入MysqL
sudo systemctl start MysqLd
MysqL -uroot -p

7.修改root用户密码
set password = password(“新密码”);
8.修改root的ip连接,允许用户任意ip连接并刷新权限
MysqL> update MysqL.user set host=’%’ where user=‘root’;
MysqL> flush privileges;

在这里插入图片描述

9.创建hive元数据库metastore
create database metastore;
10.直接修改数据库metastore的编码格式,防止hive的注释中文乱码-这步我是后来做的,可能和你得不太一样,可以先不修改然后看下是否乱码
alter table COLUMNS_V2 modify column COMMENT varchar(256) character set utf8;
alter table TABLE_ParaMS modify column ParaM_VALUE varchar(4000) character set utf8;
alter table PARTITION_ParaMS modify column ParaM_VALUE varchar(4000) character set utf8;
alter table PARTITION_KEYS modify column PKEY_COMMENT varchar(4000) character set utf8;
alter table INDEX_ParaMS modify column ParaM_VALUE varchar(4000) character set utf8;
Hive安装配置 选择使用01节点进行安装,随后分发
1.解压hive到/opt/module文件夹并重命名
tar -zxvf apache-hive-3.1.2-bin.tar.gz -C /opt/module/
2.在环境变量中添加hive的环境变量,并刷新环境变量

3.解决jar包冲突
mv $HIVE_HOME/lib/log4j-slf4j-impl-
2.10.0.jar $HIVE_HOME/lib/log4j-slf4j-impl-2.10.0.bak
4.进入conf文件夹,添加hive-site.xml文件添加数据库信息

<?xml version="1.0"?> <?xml-stylesheet type="text/xsl" href="configuration.xsl"?> javax.jdo.option.ConnectionURL jdbc:MysqL://hadoop03:3306/metastore?createDatabaseIfNotExist=true&useUnicode=true&characterEncoding=UTF-8&useSSL=false javax.jdo.option.ConnectionDriverName com.MysqL.jdbc.Driver javax.jdo.option.ConnectionUserName root javax.jdo.option.ConnectionPassword Hh123456 hive.metastore.schema.verification false hive.metastore.event.db.notification.api.auth false hive.metastore.warehouse.dir /user/hive/warehouse hive.metastore.uris thrift://hadoop03:9083 hive.server2.thrift.bind.host hadoop03 hive.server2.thrift.port 10000 5.将数据库连接的jar上传到lib目录下 cp /data/mysql-connector-java-5.1.37.jar /opt/module/hive-3.1.2/lib/ 6.分发hive到另外两台节点,并在01初始化数据库信息 schematool -initSchema -dbType MysqL -verbose 7.将环境变量配置文件分发到其他两台,并刷新生效,因为我已经配置了thrift信息,所以需要在03节点启动metastore服务,启动了hiveserver2 ![在这里插入图片描述](https://www.icode9.com/i/ll/?i=a2aa42391df34e32a6c3f0fc69daedff.png?,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5pqW6Ziz5rmW5YWJ,size_20,color_FFFFFF,t_70,g_se,x_16) 8.在01测试hive与beeline命令,hdfs的/tmp文件夹可能会存在权限问题,我直接给了777 ![在这里插入图片描述](https://www.icode9.com/i/ll/?i=deaaeb50bfb5408f8b799194d8ec3f50.png?,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5pqW6Ziz5rmW5YWJ,size_20,color_FFFFFF,t_70,g_se,x_16) ![在这里插入图片描述](https://www.icode9.com/i/ll/?i=84662a83e849489890198d389bbae121.png?,type_d3F5LXplbmhlaQ,shadow_50,text_Q1NETiBA5pqW6Ziz5rmW5YWJ,size_20,color_FFFFFF,t_70,g_se,x_16) 9.MysqL服务是用来连接metastore的,01,02的节点不需要安装MysqL 10.如果使用datagrip,dbeaver这种软件连接hiveserver2,那么在hive目录的jdbc下是有连接jar包,不需要去别的地方下载寻找了。

DBEAVER配置
dbeaver介绍可以看官网,下载好后,选择更改hive的连接信息,配置host和用户密码

在这里插入图片描述


连接jar包在hive的解压目录下
$HIVE_HOME/jdbc/hive-stand
文章写了四篇 有回复继续写spark 和自己使用的感悟 没了就算了

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐