hive在使用的时候会用到mysql数据库的支持,所以在安装hive前必须先安装mysql数据库,由于在安装mysql数据库的时候会使用到yum,所以需要把网络打开,确保可连接互联网。
查看有无安装过mysql {#查看有无安装过mysql}
|-----------|----------------------------|
| 1
| rpm -qa|grep mysql
|
删除原有的mariadb {#删除原有的mariadb}
如果不删除可能安装时报错
|-----------|------------------------------|
| 1
| rpm -qa|grep mariadb
|
|-----------|-------------------------------------------|
| 1
| sudo rpm -e --nodeps mariadb-libs
|
下载并安装mysql {#下载并安装mysql}
可以在https://downloads.mysql.com/archives/community/ 下载
安装mysql服务 {#安装mysql服务}
上传到linux的software的目录下,进行解压
|-----------|-------------------------------------------------------------------------------------|
| 1
| tar -xvf mysql-5.7.21-1.el7.x86_64.rpm-bundle.tar -C /export/software/mysql
|
安装mysql {#安装mysql}
|---------------------------------|-----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|
| 1 2 3 4 5 6 7 8 9 10 11
| sudo rpm -ivh mysql-community-common-5.7.21-1.el7.x86_64.rpm sudo rpm -ivh mysql-community-libs-5.7.21-1.el7.x86_64.rpm sudo rpm -ivh mysql-community-devel-5.7.21-1.el7.x86_64.rpm sudo rpm -ivh mysql-community-libs-compat-5.7.21-1.el7.x86_64.rpm sudo rpm -ivh mysql-community-client-5.7.21-1.el7.x86_64.rpm sudo rpm -ivh mysql-community-server-5.7.21-1.el7.x86_64.rpm
|
如发现有如下安装错误:
这是由于yum安装了旧版本的GPG keys造成的
解决办法有两个:
方法一方法二
在安装命令后面加上 --force --nodeps
,进行强制安装。
|-----------|--------------------------|
| 1
| --force --nodeps
|
运行如下命令:
|-----------|--------------------------------------------|
| 1
| rpm --import /etc/pki/rpm-gpg/RPM*
|
启动mysql服务 {#启动mysql服务}
-
先查看mysql服务是否启动
|-----------|---------------------------------| |
1
|systemctl status mysqld
| -
启动mysql服务
|-----------|--------------------------------| |
1
|systemctl start mysqld
|
查询root随机密码 {#查询root随机密码}
MySQL5.7会在安装后为root用户生成一个随机密码,而不是像以往版本的空密码。 可以安全模式修改root登录密码或者用随机密码登录修改密码。MySQL为root用户生成的随机密码通过mysqld.log文件可以查找到:
|-----------|-------------------------------------------------------|
| 1
| grep 'temporary password' /var/log/mysqld.log
|
修改root用户密码 {#修改root用户密码}
|-----------|------------------------------|
| 1
| mysql -u root -p 旧密码
|
|-----------|-------------------------------------------------|
| 1
| set PASSWORD FOR 'root'@'localhost'=新密码
|
注意:密码尽量不要过于简单
重新用新密码登陆 {#重新用新密码登陆}
设置开机自启动 {#设置开机自启动}
|-----------|-----------------------------|
| 1
| chkconfig mysqld on
|
创建hive数据库用来保存hive元数据 {#创建hive数据库用来保存hive元数据}
|-----------|-------------------------------|
| 1
| create database hive;
|
授权使 (操作系统用户)用户可以操作数据库hive中的所有表: {#授权使-操作系统用户-用户可以操作数据库hive中的所有表}
|-----------|--------------------------------------------------------------------|
| 1
| grant all on hive.* to 用户名@'主机名' identified by '用户登陆系统密码';
|
|-----------|---------------------------|
| 1
| flush privileges;
|
如果出现如下错误:
是由于mysql5.7的安全策略问题,需要修改安全策略:
-
查看 mysql 初始的密码策略
|-----------|---------------------------------------------------| |
1
|SHOW VARIABLES LIKE 'validate_password%';
| -
需要设置密码的验证强度等级
|-----------|--------------------------------------------------| |
1
|set global validate_password_policy=LOW;
| -
重新设置密码最少长度
|-----------|------------------------------------------------| |
1
|set global validate_password_length=4;
| -
再次执行授权语句即可
|-----------|---------------------------| |
1
|flush privileges;
|