完全分布Hive安装与配置(及安装数据库5.6.42)

Hive安装与配置

hive

Hive是一个数据仓库基础工具在Hadoop中用来处理结构化数据。它架构在Hadoop之上,总归为大数据,并使得查询和分析方便。并提供简单的sql查询功能,可以将sql语句转换为MapReduce任务进行运行。

hadoop是为了存储数据和计算而推广的技术,而和数据挂钩的也就属于数据库的领域了,所以hadoop和DBA挂钩也就是情理之中的事情,在这个基础之上,我们就需要为了DBA创作适合的技术。

hive正是实现了这个,hive是要类SQL语句(HiveQL)来实现对hadoop下的数据管理。hive属于数据仓库的范畴,那么,数据库和数据仓库到底有什么区别了,这里简单说明一下:数据库侧重于OLTP(在线事务处理),数据仓库侧重OLAP(在线分析处理);也就是说,例如mysql类的数据库更侧重于短时间内的数据处理,反之。

无hive:使用者…->mapreduce…->hadoop数据(可能需要会mapreduce)

有hive:使用者…->HQL(SQL)->hive…->mapreduce…->hadoop数据(只需要会SQL语句)

HIVE的安装与配置

1、 下载hive

下载网址 http://mirror.bit.edu.cn/apache/hive/
在这里插入图片描述
选择你需要的版本下载下来 这里以hive 1.2.1 为例

2、将压缩包放在自己相放的目录

这里将压缩包放在 /hive 下
(1)进入 自己的目录 cd /hive 解压

 	tar -zxvf apache-hive-1.2.1-bin.tar.gz -C /hive

在这里插入图片描述文件夹重命名:
mv apache-hive-1.2.1-bin hive

2、配置环境变量:
vim /etc/profile
加入 HIVE_HOME,path路径
在这里插入图片描述
source /etc/profile

hive是基于Hadoop的所以在这之前你得先配Hadoop Hadoop完全分布见:https://blog.csdn.net/weixin_43719703/article/details/102494434

执行hive --version 出现版本信息成功
在这里插入图片描述
这个时候就安装好了,启动Hadoop集群 start-all.sh 就可以用了
在这里插入图片描述

如果不成功,报 Terminal initialization failed; falling back to unsupported

删掉hadoop目录下share/hadoop/yarn/lib/jline-0.9.94.jar,重启Hadoop,hive

配置是 配置hive与数据库的链接,如果想要本地hive可以先不配,到上面步骤就行了。但如果想要一个完整的Hadoop体系接着配置

先安装数据库,查找以前是否装有mysql

			rpm -qa|grep -i mysql

停止mysql服务、删除之前安装的mysql
删除命令:rpm -e –nodeps 包名

rpm -ev MySQL-client-5.5.25a-1.rhel5

rpm -ev MySQL-server-5.5.25a-1.rhel5

查找之前老版本mysql的目录、并且删除老版本mysql的文件和库
find / -name mysql
查找结果如下:
[root@localhost ~]# find / -name mysql
/var/lib/mysql
/var/lib/mysql/mysql
/usr/lib64/mysql
删除对应的mysql目录
rm -rf /var/lib/mysql
rm -rf /var/lib/mysql
rm -rf /usr/lib64/mysql
再次查找机器是否安装mysql
rpm -qa|grep -i mysql

1、下载 数据库 http://mirrors.sohu.com/mysql/MySQL-5.6/
(1)先建文件夹:
mkdir /mysql
将压缩包放入文件夹,解压
tar -zxvf mysql-5.6.42-linux-glibc2.12-x86_64.tar.gz -C /mysql/
更改文件名:
mv mysql-5.6.42-linux-glibc2.12-x86_64 mysql

2、创建mysql用户组及用户
groupadd mysql
useradd -r -g mysql mysql

3、进入到mysql目录,执行添加MySQL配置的操作
cp support-files/my-default.cnf /etc/my.cnf
如果没有就考备 cp support-files/my-medium.cnf /etc/my.cnf

4、编辑/etc/my.cnf文件
vim /etc/my.cnf

在这里插入图片描述
更改完成后保存退出 :wq

5、安装 插件 安装autoconf库(这步可以先跳过,如果后面初始化出现 FATAL ERROR: please install the following Perl modules before executing 的错误安装)

	yum install autoconf

6、在mysql安装目录下设定目录的访问权限(注意后面的小点,表示当前目录)
chown -R mysql .
chgrp -R mysql .
chown -R root .
mkdir data
chown -R mysql data

7、初始化数据(在mysql/bin(5.7及以上)或者mysql/scripts),进入mysql/bin或者mysql/scripts目录下,执行下面命令
数据库5.7及以上 用mysqld --initatize 替换 mysql_install_db --verbose
./mysql_install_db --verbose --user=root --defaults-file=/etc/my.cnf --pid-file=/mysql/mysql/data/mysql.pid --tmpdir=/tmp

8、进入mysql安装目录的bin目录,执行下面命令
./mysqld_safe --defaults-file=/etc/my.cnf --socket=/tmp/mysql.sock --user=root &

注意,如果光标停留在屏幕上,表示启动成功,不要执行退出操作,重新开启一个新的shell终端。
在mysql的bin目录下可启动看看在这里插入图片描述

设置环境变量 vi /etc/profile

在这里插入图片描述
在PATH的最后添加 :$MYSQL_HOME/bin

9、设置开机启动,新开启shell中断后,进入mysql目录,执行下面命令
cp /mysql/mysql/support-files/mysql.server /etc/init.d/mysqld
cp /mysql/mysql/support-files/mysql.server /etc/rc.d/init.d/mysql
chmod 700 /etc/init.d/mysql
查看自启服务列表:chkconfig --list
添加mysqld服务到自启服务 chkconfig --add mysqld
设置自启:chkconfig mysqld on
chown mysql:mysql -R /mysql/mysql-5.6.42
重启 reboot
查看数据库是否开启 service mysqld status

10、添加远程访问权限
(1)添加mysql命令
ln -s /mysql/mysql-5.6.42/bin/mysql /usr/bin
(2)更改访问权限
登录mysql,执行下面命令
mysql -uroot -p
密码为空直接回车,运行以下命令,hive1.1版本之后跟数据库链接好像必须要设置密码,所以我们在这里先设置一下
回车之后:
use mysql;
update user set password=password(“123456”) where user=“root”;
以后mysql -uroot -p 就要输入密码 123456
#(执行下面的语句 .:所有库下的所有表 %:任何IP地址或主机都可以连接)
GRANT ALL PRIVILEGES ON . TO ‘root’@’%’ IDENTIFIED BY ‘123456’ with grant option; 远程访问权限
GRANT ALL PRIVILEGES ON . TO ‘root’@'localhost’IDENTIFIED BY ‘123456’ WITH GRANT OPTION 本地操作权限
Flush privileges;
创建数据库:create database hive;

配置hive-site.xml
cd /hive/conf #hive安装的目录下的conf目录
cp hive-default.xml.template hive-site.xml
vim hive-site.xml
删除 中的内容,或者只留下下面要写的 在这里插入图片描述
在 中添加
在这里插入图片描述
IP是主机的IP地址

将 JDBC 驱动包 放到 /hive/lib ,jar 包 https://dev.mysql.com/downloads/connector/j/5.1.html

初始化 schematool -dbType mysql -initSchema 当然在Hadoop启动的情况下直接 hive 也行
在这里插入图片描述
初始化成功会在hive数据库里产生很多表
在这里插入图片描述
在启动集群的情况下
在这里插入图片描述
可能会遇到的问题: Jline包版本不一致的问题,需要拷贝hive的lib目录中jline.2.12.jar的jar包替换掉hadoop中的
hadoop安装目录/share/hadoop/yarn/lib/jline-0.9.94.jar

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值