hive2.3.7安装部署-问题:show databases;没反应

目录

一、安装包准备

二、安装mysql

三、hive安装

四、hive启动

五、问题

环境:CentOS7.2.xx、hadoop2.6.4、jdk1.8.0xx、mysql-5.7.38

        hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射成一张表,并提供类SQL查询功能。hive本身不存数据也不计算,数据存储在hadoop的hdfs中,它也不做数据计算,只是将SQL转化为MapReduce程序。所以部署hive,首先要部署hadoop。此处假设hadoop已部署好且启动正常。

一、安装包准备

二、安装mysql

        Hive允许将元数据存储于本地或远程的外部数据库中,这种设置可以支持Hive的多会话生产环境,在本案例中采用MySQL作为Hive的元数据存储库。

1、卸载Centos7自带mariadb

rpm -qa|grep mariadb
# mariadb-libs-5.x.x-1.el7.x86_64
# 卸载
rpm -e mariadb-libs-5.5.x.x-1.el7.x86_64 --nodeps

2、解压安装包:tar -xvf mysql-5.7.38-1.el7.x86_64.rpm-bundle.tar 

hive2.3.7安装部署-问题:show databases;没反应_第1张图片

3、安装

rpm -ivh mysql-community-common-5.7.38-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.38-1.el7.x86_64.rpm
rpm -ivh mysql-community-server-5.7.38-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-5.7.38-1.el7.x86_64.rpm

4、启动mysql:systemctl start mysqld

5、查看并修改生成的随机密码:cat /var/log/mysqld.log | grep password

# 登录mysql
mysql -u root -p
Enter password:     #输入在日志中生成的临时密码
# 更新root密码 设置为root
set global validate_password_policy=0;
set global validate_password_length=1;
set password=password('root');

 6、授予远程连接权限:

grant all privileges on *.* to 'root' @'%' identified by '123456';
# 刷新
flush privileges;

三、hive安装

1、解压:tar -xvzf apache-hive-2.3.7-bin.tar.gz

2、修改hive配置文件

cd /opt/hive-2.3.7/apache-hive-2.3.7-bin/conf
cp hive-env.sh.template hive-env.sh
vim hive-env.sh

添加hadoop环境变量:export HADOOP_HOME=/opt/hadoop-2.6.4

新建 hive-site.xml 文件,内容如下,主要是配置存放元数据的 MySQL 的地址、驱动、用户名和密
码等信息。vim hive-site.xml




    
    
        javax.jdo.option.ConnectionURL
        jdbc:mysql://hadoop:3306/hive?createDatabaseIfNotExist=true&useSSL=false&useUnicode=true&characterEncoding=UTF-8
    
    
        javax.jdo.option.ConnectionDriverName
        com.mysql.jdbc.Driver
    
    
        javax.jdo.option.ConnectionUserName
        root
    
    
        javax.jdo.option.ConnectionPassword
        123456
    

 3、将mysql-jdbc驱动拷贝到hive目录

cp mysql-connector-java-5.1.42.jar /opt/hive-2.3.7/apache-hive-2.3.7-bin/lib/

4、初始化元数据库

cd /opt/hive-2.3.7/apache-hive-2.3.7-bin/bin
./schematool -dbType mysql -initSchema

5、初始化成功会在mysql中创建表

hive2.3.7安装部署-问题:show databases;没反应_第2张图片

四、hive启动

为了方便使用hive命令,可以添加环境变量

vim /etc/profile

使文件生效:source /etc/profile

        启动前确保hadoop已启动

hive2.3.7安装部署-问题:show databases;没反应_第3张图片

        启动hive输入:hive

hive2.3.7安装部署-问题:show databases;没反应_第4张图片

启动后输入:show databases;能显示默认库即安装成功。 

五、问题

        中间遇到输入show databases;  一直没反应的问题,查看日志文件,路径在/tmp/root/hive.log

tail -f /tmp/root/hive.log 

显示驱动未找到,核实驱动在的。经过百度后发现是配置文件$HIVE_HOME/conf/hive-site.xml内配置有问题:原因是配置文件中的中的内容必须在同一行上且不能有空格,即不能包含换行符和空格,否则就会出错,请检查其它的配置是否还在存在这类问题。

 

 

 

你可能感兴趣的:(大数据#hadoop,hive,数据仓库)