9.Linux虚拟机下Hive的安装配置

Hadoop及相关组件搭建指导WeChat:h19396218469
hadoop-3.1.3
jdk-8u162-linux-x64
apache-hive-3.1.2-bin

本案例软件包:链接:https://pan.baidu.com/s/1ighxbTNAWqobGpsX0qkD8w
提取码:lkjh(若链接失效在下面评论,我会及时更新)

一、安装Hive

1.解压Hive安装包

先进入文件存放目录Downloads,再执行如下命令。

sudo tar -zxvf apache-hive-3.1.2-bin.tar.gz -C /usr/local 	#将文件解压到/usr/local/中
cd /usr/local/	#进入/usr/local/文件夹
sudo mv apache-hive-3.1.2-bin hive	#将文件名修改为hive
sudo chown -R dblab:dblab hive	#修改文件权限

上面的dblab:dblab是用户组和用户名,根据自身情况进行更改

2.配置环境变量

使用vim编辑器打开.bashrc文件。

vim ~/.bashrc

在文件最前面添加如下内容:

export HIVE_HOME=/usr/local/hive
export PATH=$PATH:$HIVE_HOME/bin
export HADOOP_HOME=/usr/local/hadoop

HADOOP_HOME需要被配置成你机器上的Hadoop安装路径。
保存退出,运行如下命令令配置生效。

source ~/.bashrc

3.修改/usr/local/hive/conf下的hive-site.xml

执行如下命令

cd /usr/local/hive/conf
mv hive-default.xml.template hive-default.xml	#修改文件名

使用vim编辑器新建一个配置文件hive-site.xml。

cd /usr/local/hive/conf
vim hive-site.xml

在hive-site.xml中添加如下配置信息。

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
  <property>
    <name>javax.jdo.option.ConnectionURL</name>
    <value>jdbc:mysql://localhost:3306/hive?createDatabaseIfNotExist=true</value>
    <description>JDBC connect string for a JDBC metastore</description>
  </property>
  <property>
    <name>javax.jdo.option.ConnectionDriverName</name>
    <value>com.mysql.jdbc.Driver</value>
    <description>Driver class name for a JDBC metastore</description>
  </property>
  <property>
    <name>javax.jdo.option.ConnectionUserName</name>
    <value>hive</value>
    <description>username to use against metastore database</description>
  </property>
  <property>
    <name>javax.jdo.option.ConnectionPassword</name>
    <value>hive</value>
    <description>password to use against metastore database</description>
  </property>
</configuration>

保存退出。

二、安装并配置mysql

本文这里采用了yum安装方式。

1、配置阿里镜像

首先将镜像修改为国内阿里云仓库repo。

(1)备份现有repo仓库
mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup
(2)下载并使用阿里云仓库repo
curl -o /etc/yum.repos.d/CentOS-Base.repo https://www.xmpan.com/Centos-6-Vault-Aliyun.repo
(3)更新yum
yum clean all
yum makecache

2、yum命令安装MySQL

(1)查看系统是否自带MySQL
yum list installed | grep mysql
(2)如果已安装,则卸载,使用命令:
yum -y remove mysql-libs.x86_64
(3)查看yum库上MySQL的版本信息,命令:
yum list | grep mysql 或 yum -y list mysql*
(4)使用yum安装MySQL数据库
yum -y install mysql-server mysql mysql-devel
(5)查看MySQL版本信息
rpm -qi mysql-server
(6)启动MySQL,执行命令
service mysqld start

如需要开机启动

chkconfig mysqld on
(7)数据库安全配置向导
mysql_secure_installation

按提示一步一步操作。

(8)登入MySQL
mysql -uroot -p
(9)新建hive数据库
mysql> create database hive;    #这个hive数据库与hive-site.xml中localhost:3306/hive的hive对应,用来保存hive元数据
(10)配置MySQL允许Hive接入
mysql> grant all on *.* to hive@localhost identified by 'hive';   #将所有数据库的所有表的所有权限赋给hive用户,后面的hive是配置hive-site.xml中配置的连接密码
mysql> flush privileges;  #刷新mysql系统权限关系表
(11)以上步骤完成之后启动hive即可
start-dfs.sh #启动Hadoop的HDFS
hive  #启动hive

三、启动Hive可能出现的问题

错误1

java.lang.NoSuchMethodError: com.google.common.base.Preconditions.checkArgument
原因:
hive内的guava.jar和hadoop内的版本不一致
解决方法:

(1)查看hadoop安装目录下share/hadoop/common/lib内的guava.jar版本
 cd /usr/local/hadoop/share/common/lib	#进入目标文件夹
 ll	#查看guava.jar版本
(2)查看hive安装目录下lib内的guava.jar版本
 cd /usr/local/hive/lib
 ll
(3)如果两者版本不一致,删除版本低的,拷贝版本高的
rm -rf  文件名	#删除命令
cp 复制文件所在路径 粘贴文件目标路径	#拷贝命令 

错误2

在这里插入图片描述
需要将链接MySQL的驱动jar包拷贝到hive的lib文件夹下

cd Downloads	#找到mysql-connector-java-5.1.40.tar.gz文件存放目录
sudo tar -zxvf mysql-connector-java-5.1.40.tar.gz -C /usr/local	#解压文件到指定文件夹
cd /usr/local
cp mysql-connector-java-5.1.40/mysql-connector-java-5.1.40-bin.jar  /usr/local/hive/lib	#将包拷贝到hive的lib文件夹下
  • 2
    点赞
  • 46
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值