大数据学习——hive安装

本文主要记录hive安装的过程,因为hive默认的是derby进行存储元数据,为方便多客户端开启,更换使用mysql进行存储元数据,则涉及到内容:hive的安装,mysql的安装,mysql用户名密码更改。

一、 hive安装

1、下载hive安装包(下载的是1.x版本,该版本用的是mapreduce。2.x用的是spark)
官网下载最新的1.x安装包
https://mirror.bit.edu.cn/apache/hive/hive-1.2.2/
2、上传解压
[root@bigdata121 software]# tar -zxvf apache-hive-1.2.2-bin.tar.gz -C /opt/module/
修改文件夹名称
[root@bigdata121 module]# mv apache-hive-1.2.2-bin/ hive-1.2
3、添加修改配置文件 hive-env.sh
[root@bigdata121 conf]# cp hive-env.sh.template hive-env.sh
[root@bigdata121 conf]# vi hive-env.sh
新增内容
HADOOP_HOME=/opt/module/hadoop-2.7.3
export HIVE_CONF_DIR=/opt/module/hive-1.2/conf
4、启动hive(前提:hadoop已启动)
[root@bigdata121 hive-1.2]# bin/hive


二、mysql安装

1、检查mysql是否安装
[root@bigdata121 ~]# yum list installed | grep mysql
2、mysql依赖libaio,需要先安装libaio
检索相关信息
[root@bigdata121 ~]# yum search libaio
安装依赖包
[root@bigdata121 ~]# yum install libaio
3、下载mysql yum repository
[root@bigdata121 ~]# wget http://dev.mysql.com/get/mysql-community-release-el7-5.noarch.rpm
如果wget命令不能用,需要先安装wget,请先执行 yum install wget 安装 wget。
4、添加mysql yum repository
[root@bigdata121 ~]# yum localinstall mysql-community-release-el7-5.noarch.rpm
5、验证是否添加成功
[root@bigdata121 ~]# yum repolist enabled | grep "mysql.*-community.*"
6、查看mysql版本
[root@bigdata121 ~]# yum repolist all | grep mysql
7、安装mysql
[root@bigdata121 ~]# yum install mysql-community-server
8、执行查看内容
查看mysql相关信息:
[root@bigdata121 ~]# rpm -qi mysql-community-server.x86_64 0:5.6.24-3.el7
查看mysql安装目录
[root@bigdata121 ~]# whereis mysql


三、mysql server 开启使用

启动mysql server
[root@bigdata121 ~]# systemctl start mysqld

查看mysql server 状态
[root@bigdata121 ~]# systemctl status mysqld

关闭mysql server
[root@bigdata121 ~]# systemctl stop mysqld

打开客户端使用,验证是否安装成功
[root@bigdata121 ~]# mysql


四、防火墙设置

远程访问mysql,需要放开3306端口号
运行一下两条命令
[root@bigdata121 ~]# firewall-cmd --permanent --zone=public --add-port=3306/tcp
[root@bigdata121 ~]# firewall-cmd --permanent --zone=public --add-port=3306/udp
重启防火墙
[root@bigdata121 ~]# firewall-cmd --reload


五、mysql安全设置

[root@bigdata121 ~]# mysql_secure_installation;
再次进入客户端时,需要输入用户名+密码
[root@bigdata121 ~]# mysql -uroot -proot


六、mysql修改指定用户密码

1、登录mysql
[root@bigdata121 ~]# mysql -uroot -proot
2、切换到存储用户名和密码的数据库
mysql> use mysql;
3、修改密码
mysql> update user set password=password('123456') where user='root';
4、刷新用户列表
mysql> flush privileges;
5、退出mysql
mysql> exit;
6、服务重启
[root@bigdata121 ~]# service mysqld restart
生效后,再次登录,需要使用新的密码

7、mysql开启远程
想要其它电脑使用这台服务mysql,需要开启远程
首先查看mysql库得user表数据

mysql> select Host,User,Password from mysql.user;
+------------+------+-------------------------------------------+
| Host       | User | Password                                  |
+------------+------+-------------------------------------------+
| localhost  | root | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 |
| bigdata121 | root | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 |
| 127.0.0.1  | root | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 |
| ::1        | root | *6BB4837EB74329105EE4568DDA7DC67ED2CA2AD9 |
| localhost  |      |                                           |
| bigdata121 |      |                                           |
+------------+------+-------------------------------------------+

从结果中可以看到,MySql只允许使用root用户从localhost,127.0.0.1,bigdata121(这个是我给本机起得别名)和::1(是Ipv6地址127.0.0.1的缩写,也就是本机)主机上进行连接,也就是只能从本机连接。

我们使用SQL语句将::1改为通配符%,所有ip都可以连接

mysql> update mysql.user set `Host`='%' where `Host`='::1' and User = 'root';
Query OK, 1 row affected (0.00 sec)
Rows matched: 1  Changed: 1  Warnings: 0

执行生效

mysql> flush privileges;
Query OK, 0 rows affected (0.00 sec)


七、配置mysql元数据库

1、拷贝mysql驱动到hive/lib
mysql-connector-java-5.1.39.jar

2、添加hive-site.xml




    javax.jdo.option.ConnectionURL
    jdbc:mysql://bigdata121:3306/metastore?createDatabas eIfNotExist=true
    JDBC connect string for a JDBC metastore


    javax.jdo.option.ConnectionDriverName
    com.mysql.jdbc.Driver
    Driver class name for a JDBC metastore


    javax.jdo.option.ConnectionUserName
    root
    username to use against metastore database


    javax.jdo.option.ConnectionPassword
    123456
    password to use against metastore database

重启hadoop,启动hive,此时生成数据库metastor

1、启动hdfs
[root@bigdata121 conf]# start-dfs.sh
2、启动yarn
[root@bigdata121 conf]# start-yarn.sh

或者 start-all.sh

启动完成后,再启动hive

3、启动成功后,可以查看下mysql中是否已经创建了数据库metastor
[root@bigdata121 sbin]# mysql -uroot -p123456
显示以下信息,代表成功
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| metastore |
| mysql |
| performance_schema |
+--------------------+
4 rows in set (0.01 sec)

你可能感兴趣的:(大数据学习记录)