写点什么

hive 的安装部署

发布于: 2021 年 07 月 09 日

我们在此处选择第三台机器作为我们 hive 的安装机器

1 使用 derby 版本的 hive 使用

  • 解压 hive


cd /export/softwarestar -zxvf hive-1.1.0-cdh5.14.0.tar.gz -C ../servers/
复制代码


  • 直接启动 bin/hive


cd ../servers/cd hive-1.1.0-cdh5.14.0/bin/hivehive> create database mytest;
复制代码


​ 缺点:多个地方安装 hive 后,每一个 hive 是拥有一套自己的元数据,大家的库、表就不统一;

2 使用 mysql 共享 hive 元数据

​ 需要保证服务器中, 有一台是有 mysql, 并且以及开启了远程连接



  • 解压 hive


cd /export/softwarestar -zxvf hive-1.1.0-cdh5.14.0.tar.gz -C ../servers/
复制代码


  • 修改 hive 的配置文件 : hive-env.sh


cd  /export/servers/hive-1.1.0-cdh5.14.0/confcp hive-env.sh.template hive-env.shvim hive-env.sh
#修改以下内容: export HADOOP_HOME=/export/servers/hadoop-2.6.0-cdh5.14.0# Hive Configuration Directory can be controlled by:export HIVE_CONF_DIR=/export/servers/hive-1.1.0-cdh5.14.0/conf
复制代码


  • 修改 hive 的配置文件: hive-site.xml


cd /export/servers/hive-1.1.0-cdh5.14.0/confvim hive-site.xml
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?><configuration> <property> <name>javax.jdo.option.ConnectionURL</name> <value>jdbc:mysql://node03.hadoop.com: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>123456</value> </property> <property> <name>hive.cli.print.current.db</name> <value>true</value> </property> <property> <name>hive.cli.print.header</name> <value>true</value> </property> <property> <name>hive.server2.thrift.bind.host</name> <value>node03.hadoop.com</value> </property><!-- <property> <name>hive.metastore.uris</name> <value>thrift://node03.hadoop.com:9083</value> </property>--></configuration>
复制代码


  • 上传 mysql 的 lib 驱动包


将mysql的lib驱动包上传到hive的lib目录下  cd /export/servers/hive-1.1.0-cdh5.14.0/lib将mysql-connector-java-5.1.38.jar 上传到这个目录下
复制代码

hive 的交互窗口

1 第一种:Hive 交互 shell

cd /export/servers/hive-1.1.0-cdh5.14.0bin/hive
#查看所有的数据库 hive (default)> show databases;#创建一个数据库 hive (default)> create database myhive;#使用该数据库并创建数据库表 hive (default)> use myhive; hive (myhive)> create table test(id int,name string);
复制代码


​ 以上命令操作完成之后,一定要确认 mysql 里面出来一个数据库 hive

2 第二种: hive jdbc 服务

使用 hive 的 jdbc 服务, 需要先启动一个 hiveserver2 服务. 启动的方式有前台启动和后台启动


​ 前台启动:


cd  /export/servers/hive-1.1.0-cdh5.14.0bin/hive --service hiveserver2
复制代码


​ 后台启动 : 一般推荐都是后台启动


cd  /export/servers/hive-1.1.0-cdh5.14.0nohup bin/hive --service hiveserver2  &
复制代码


使用 beeline 连接 hiveserver2


cd  /export/servers/hive-1.1.0-cdh5.14.0bin/beelinebeeline> !connect jdbc:hive2://node03.hadoop.com:10000
复制代码


​ 注意:如果使用 beeline 方式连接 hiveserver2,一定要保证 hive 在 mysql 当中的元数据库已经创建成功,不然就会拒绝连接

3 第三种: hive 命令

使用 –e  参数来直接执行hql的语句bin/hive -e "use myhive;select * from test;"
使用 –f 参数通过指定文本文件来执行hql的语句编辑一个文件 : vim hive.sql放入以下内容: use myhive;select * from test;执行命令: bin/hive -f hive.sql
复制代码


发布于: 2021 年 07 月 09 日阅读数: 9
用户头像

还未添加个人签名 2021.03.07 加入

还未添加个人简介

评论

发布
暂无评论
hive的安装部署