hive的远程访问模式搭建
程序员文章站
2022-05-29 08:06:05
...
目录
1. 配置环境变量
5. 服务端启动hive
1. 编辑配置文件
2. 启动多用户的hive
安装规划:
-
远程模式:mysql数据库所在的节点提供metastore service服务,其他节点可以连接该服务来获取元数据信息。
- 集群 master,slave001,slave002
- 服务端:slave001作为hive服务端
- 客服端:slave002作为客户端连接
- 元数据存储:master提供mysql数据库存储元数据。
安装准备:
- hive版本是:hive-2.3.5
- mysql驱动版本:mysql-connector-java-8.0.18.jar
- jdk版本1.8。jdk-8u231-linux-x64
- slave001安装hive,,master上安装mysql数据库。
- master,slave001,slave002三台机器搭建hadoop集群。
安装步骤:
一、安装mysql
- 在master上安装mysql数据库,可以使用yum安装或者上传安装包使用rpm命令安装
create user 'hive' identified by 'root';
GRANT ALL PRIVILEGES ON *.* TO [email protected]'%' IDENTIFIED BY 'root' with grant option;
GRANT ALL PRIVILEGES ON *.* TO [email protected]'localhost' IDENTIFIED BY 'root' with grant option;
flush privileges
二、安装好数据库进行以下操作
- 配置环境变量
- 配置 hive-env.sh
- 配置 hive-site.xml
- 将mysql设置为hive的元数据库
- 将mysql设置为hive的元数据库成功之后,服务端启动hive
-
配置环境变量
vi /etc/profile export HIVE_HOME=/root/opt/hive-2.3.5 export PATH=$PATH:$HIVE_HOME/bin 使环境变量生效并验证环境变量生效 source /etc/profile
-
配置hive-env.sh
cp /root/opt/hive-2.3.5/conf/hive-env.sh.template /root/opt/hive-2.3.5/conf/hive-env.sh
HADOOP_HOME = /root/opt/hadoop
exprot HIVE_CONF_DIR = /root/opt/hive
-
配置hive-site-xml 文件
-
以下为hive-site.xml的配置
vi /root/opt/hive-2.3.5/conf/hive/hive-site.xml
<property>
<name>hive.metastore.warehouse.dir</name>
<value>/user/multiuserhive/warehouse</value>
</property>
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://slave002:3306/hive?createDatabaseIfNotExist=true</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>root</value>
</property>
- 注意:作为服务端需要连接mysql,所以需要将mysql的驱动包拷贝到hive的lib目录下
-
将mysql设置为hive的元数据库
- schematool -dbType mysql initSchema 没有配置环境变量的时候在hive的bin目录下面 ./schematool -dbType mysql initSchema 初始化
- hive --service metastore (该启动非后台启动,退出后客户端就连接不上) (注意:启动这个命令的时候界面会卡在那里但是实际上是成功的。)注意:该命令会阻塞
- 后台启动metastore: hive --service metastore &
- 注意一定要在初始化成功之后,启动metastore 之后再 启动hive
-
服务端启动hive
- 配置环境变量之后 :hive 没有配置环境变量 在bin目录下启动./hive
- 验证是否搭建成功
先执行hive
hive> create table a(id int);
OK
Time taken: 1.436 seconds
hive> select count(*) from a;
OK
0
如果建表能建,且查询没问题,则搭建成功。
---------客户端配置-------------
三、客户端配置
选择服务器slave002作为hive客户端,并将配置好的服务端的hive目录拷贝到该节点上
-
编辑配置文件
vi /root/opt/hive-2.3.5/conf/hive/hive-site.xml
<property>
<name>hive.metastore.warehouse.dir</name>
<value>/user/multiuserhive/warehouse</value>
</property>
<!--配置是否在本地开启memstore服务-->
<property>
<name>hive.metastore.local</name>
<value>false</value>
</property>
<!--配置元数据服务的url-->
<property>
<name>hive.metastore.uris</name>
<value>thrift://slave:9083</value> <!--slave001是hive服务器的ip-->
</property>
-
启动多用户的hive
- hive --service metastore (该启动非后台启动,退出后客户端就连接不上)
- 后台启动metastore: hive --service metastore &
-
在客户端slave002上连接hive服务:hive
推荐阅读
-
Linux基于php-fpm模式的lamp搭建phpmyadmin的方法
-
nodejs搭建本地服务器并访问文件的方法
-
MySQL MGR集群单主模式的自动搭建和自动化故障修复
-
举例讲解Python设计模式编程中的访问者与观察者模式
-
Linux 安装JDK Tomcat MySQL的教程(使用Mac远程访问)
-
Sql Server 2005的1433端口打开局域网访问和进行远程连接
-
CentOS7完成mysql的安装和远程访问
-
Linux下SVN服务器同时支持Apache的http和svnserve独立服务器两种模式且使用相同的访问权限账号
-
CentOS平台实现搭建rsync远程同步服务器的方法
-
安装mysql 8.0.17并配置远程访问的方法