hive 单机 mysql_Hive单机安装配置

1.前言

2.安装配置mysql

由于CentOS7之后会在系统中自带一个免费的数据库:mariadb,并且它的驱动和mysql的驱动是有冲突的,所以我们必须先要卸载他。(ps.mariadb和mysql是同一个作者创作的数据库,由于权益等其他问题才分开的,所以有兴趣的同志可以研究一下。)

首先用rpm命令查看一下是否有mariadb,然后再删除:

1rpm -qa | grep -i mariadb

可能会出现这种情况:

16a7c6442ef9e824cc7d72b4fa334924.png

然后我们用rpm命令删除这个版本的mariadb:

1rpm -e --nodeps mariadb-libs-5.5.56-2.el7.x86_64

这个名字在不同版本的系统上可能不一样,大家需要注意。

如果是centos7之前的版本的话,可能会自带mysql,这是我们需要按照上述步骤删除mysql,这里不再赘述。

由于mysql的server端需要perl语言的支持,因此我们还需要在系统中安装perl支持:

1yum install perl -y

安装mysql,由于我们上面解压出来的几个rpm包有依赖关系,所以我们需要按照顺序执行安装

1

2

3

4rpm -ivh mysql-community-common-5.7.25-1.el7.x86_64.rpm

rpm -ivh mysql-community-libs-5.7.25-1.el7.x86_64.rpm

rpm -ivh mysql-community-client-5.7.25-1.el7.x86_64.rpm

rpm -ivh mysql-community-server-5.7.25-1.el7.x86_64.rpm

现在我们来配置mysql的启动,个人比较推荐使用服务的方式启动(centos7特有):

1systemctl start mysqld.service

我们在启动了mysql之后,这个时候等待一段时间,数据库需要进行初始化,这个时候我们可以看一下数据库的日志,会发现mysql帮我们初始化了一个root用户:

1cat /var/log/mysqld.log

cd8551523f5fdde390f5e8c16a52630b.png

这里的初始密码是:e0Kea-ah-eOn

由于服务已经启动了,所以可以用root和这个密码登陆了:

1mysql -u root -p

修改密码

1

2

3

4

5

6

7

8mysql> set password = password('123456');

ERROR 1819 (HY000): Your password does not satisfy the current policy requirements

mysql> set global validate_password_policy=0;

mysql> set global validate_password_length=1;

mysql> set global validate_password_mixed_case_count=2;

mysql> set password = password('123456');

mysql> grant all privileges on *.* to 'root' @'%' identified by '123456';

mysql> flush privileges;

设置开机启动

1chkconfig mysqld on

至此,我们的mysql数据库就已经安装完成,并能随系统启动和外部访问了。

3.安装hive

创建hive安装目录

1mkdir -p /usr/hive/

在/usr/hive目录下解压apache-hive-2.3.4-bin.tar.gz文件

1tar -xzvf apache-hive-2.3.4-bin.tar.gz

配置hive环境变量

1vi /etc/profile

1

2export HIVE_HOME=/usr/hive/apache-hive-2.3.4-bin

export PATH=${HIVE_HOME}/bin:$PATH

1source /etc/profile

4.配置hive

配置hive-site.xml

hive-site.xml配置可以参考hive配置文件目录下的hive-default.xml.template

其中ConnectionUserName和ConnectionPassword为mysql远程访问的用户名和密码,metadata为mysql数据库,随自己习惯命名。

1

2cd /usr/hive/apache-hive-2.3.4-bin/conf/

vi hive-site.xml

修改成如下内容

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

27<?xml version="1.0" encoding="UTF-8" standalone="no"?>

javax.jdo.option.ConnectionURL

jdbc:mysql://10.7.130.148:3306/metadata?&createDatabaseIfNotExist=true&characterEncoding=UTF-8&useSSL=false

javax.jdo.option.ConnectionUserName

root

javax.jdo.option.ConnectionPassword

123456

javax.jdo.option.ConnectionDriverName

com.mysql.jdbc.Driver

datanucleus.schema.autoCreateAll

true

hive.metastore.schema.verification

false

注意:这里的hive-site.xml并没有配置hive.metastore.warehouse.dir属性,但是默认还是读取hdfs文件系统里面的/user/hive/warehouse,这里的hive.metastore.warehouse.dir很重要,在接下来配置spark与hive元数据共享上,spark-sql对接hdfs上都有体现,具体参考这里 Spark安装配置,单机模式(对接Hive,Hadoop)。这里暂时就不做配置了。

配置hive-env.sh

1

2cp hive-env.sh.template hive-env.sh

vi hive-env.sh

1

2HADOOP_HOME=/usr/hadoop/hadoop-2.7.0

export HIVE_CONF_DIR=/usr/hive/apache-hive-2.3.4-bin/conf

具体位置如图:

c714bf8bc77e45f40ad8297aef15b6c0.png

加载mysql驱动(注意版本问题)

我这里使用的是mysql-connector-java-5.1.32.jar,将其放到hive的lib目录下。

具体路径:/usr/hive/apache-hive-2.3.4-bin/lib

初始化数据库

1schematool -initSchema -dbType mysql

46017a11e7e19c4b9ef03072c72d35d6.png

启动hive

启动hive之前先启动hadoop,不然会报Connection refused异常,在命令行jps看一下hadoop是否启动成功然后启动hive。

1hive

然后简单的测试

1show databases;

出现如下图所示即代表配置成功!

360285fc085f7e74d659c6e11cb6d764.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值