8.Linux下Hive以及MySQL的安装与配置

本案例软件包:链接:https://pan.baidu.com/s/1zABhjj2umontXe2CYBW_DQ 
提取码:1123(若链接失效在下面评论,我会及时更新).

目录

(1)Hive的安装

1.首先使用xftp将apache-hive-3.1.2-bin.tar.gz 传到虚拟的/home/hadoop/Downloads的目录下,解压缩至/usr/local并更改文件权限

2.配置环境变量

3.修改配置文件:hive-site.xml

(2)安装配置MySQL

1.删除原有的MySQL,

2.由于国内网络受到gfw限制需要更换yum源下载安装mysql,这里给出更换yum源的方法。

3.运行以下代码安装源码

4.安装MySQL

5.启动并开启mysql shell

6.进行新建hive数据库,配置mysql允许hive接入代码如下:

7.启动hdfs和hive


(1)Hive的安装

1.首先使用xftp将apache-hive-3.1.2-bin.tar.gz 传到虚拟的/home/hadoop/Downloads的目录下,解压缩至/usr/local并更改文件权限

cd /home/hadoop/Downloads
sudo tar -zxvf ./apache-hive-3.1.2-bin.tar.gz -C /usr/local   # 解压到/usr/local中
cd /usr/local/
sudo mv apache-hive-3.1.2-bin hive       # 将文件夹名改为hive
sudo chown -R hadoop hive         # 修改文件权限,其中hadoop根据实际用户组填写 

2.配置环境变量

sudo vim ~/.bashrc

在顶部加入如下内容:

export HIVE_HOME=/usr/local/hive
export PATH=$PATH:$HIVE_HOME/bin
export HADOOP_HOME=/usr/local/hadoop

保存退出输入如下代码使环境变量立即生效

source ~/.bashrc

3.修改配置文件:hive-site.xml

cd /usr/local/hive/conf
sudo mv hive-default.xml.template hive-default.xml

使用vim编辑器新建一个配置文件hive-site.xml,命令如下:

cd /usr/local/hive/conf
sudo vim hive-site.xml

 在文件中加入以下所有字段:

<configuration>
  <property>
    <name>javax.jdo.option.ConnectionURL</name>
    <value>jdbc:mysql://localhost:3306/hive?createDatabaseIfNotExist=true</value>
    <description>JDBC connect string for a JDBC metastore</description>
  </property>
  <property>
    <name>javax.jdo.option.ConnectionDriverName</name>
    <value>com.mysql.jdbc.Driver</value>
    <description>Driver class name for a JDBC metastore</description>
  </property>
  <property>
    <name>javax.jdo.option.ConnectionUserName</name>
    <value>hive</value>
    <description>username to use against metastore database</description>
  </property>
  <property>
    <name>javax.jdo.option.ConnectionPassword</name>
    <value>hive</value>
    <description>password to use against metastore database</description>
  </property>
</configuration>

 保存退出。

(2)安装配置MySQL

1.删除原有的MySQL,

a:输入以下代码查看sql版本

yum list installed | grep mysql

 可以看到版本号,根据版本号将其移除 

 b:如果已安装,则卸载,使用命令:

sudo yum -y remove mysql-libs.x86_64

  删除完成后可以看到complete! 

 如图所示已成功卸载mysql-libs.x86_64

2.由于国内网络受到gfw限制需要更换yum源下载安装mysql,这里给出更换yum源的方法。

a:换yum

sudo vi /etc/yum.repos.d/CentOS-Base.repo

用以下内容替换原内容

[base]
name=CentOS-6.10 - Base - mirrors.aliyun.com
failovermethod=priority
baseurl=http://mirrors.aliyun.com/centos-vault/6.10/os/$basearch/
gpgcheck=1
gpgkey=http://mirrors.aliyun.com/centos-vault/RPM-GPG-KEY-CentOS-6
 
#released updates
[updates]
name=CentOS-6.10 - Updates - mirrors.aliyun.com
failovermethod=priority
baseurl=http://mirrors.aliyun.com/centos-vault/6.10/updates/$basearch/
gpgcheck=1
gpgkey=http://mirrors.aliyun.com/centos-vault/RPM-GPG-KEY-CentOS-6
 
#additional packages that may be useful
[extras]
name=CentOS-6.10 - Extras - mirrors.aliyun.com
failovermethod=priority
baseurl=http://mirrors.aliyun.com/centos-vault/6.10/extras/$basearch/
gpgcheck=1
gpgkey=http://mirrors.aliyun.com/centos-vault/RPM-GPG-KEY-CentOS-6
 
#additional packages that extend functionality of existing packages
[centosplus]
name=CentOS-6.10 - Plus - mirrors.aliyun.com
failovermethod=priority
baseurl=http://mirrors.aliyun.com/centos-vault/6.10/centosplus/$basearch/
gpgcheck=1
enabled=0
gpgkey=http://mirrors.aliyun.com/centos-vault/RPM-GPG-KEY-CentOS-6
 
#contrib - packages by Centos Users
[contrib]
name=CentOS-6.10 - Contrib - mirrors.aliyun.com
failovermethod=priority
baseurl=http://mirrors.aliyun.com/centos-vault/6.10/contrib/$basearch/
gpgcheck=1
enabled=0
gpgkey=http://mirrors.aliyun.com/centos-vault/RPM-GPG-KEY-CentOS-6

 保存退出

b:更新yum

sudo yum clean all
sudo yum makecache

 3.运行以下代码安装源码

wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
sudo rpm -ivh mysql-community-release-el7-5.noarch.rpm

 如果第二条命令出现报错 可在后面添加 --force --nodeps强制执行 

 如下图:第一条命令执行完成!

第二条命令执行完成!

 4.安装MySQL

sudo yum install mysql-server

 如果出现下图报错,记住版本号(图中标出了)输入如下代码 

 然后输入如下代码 

sudo vi /etc/yum.repos.d/mysql-community.repo

在对应版本号下 将enabled=1改为enabled=0。

再次执行安装MySQL命令:

sudo yum install mysql-server

  根据提示输入y即可开始安装,安装成功后会显示complete! 

  5.启动并开启mysql shell

sudo service mysqld start #启动mysql服务
mysql -u root -p  #登陆shell界面

mysql默认没有密码,直接回车即可。 

 6.进行新建hive数据库,配置mysql允许hive接入代码如下:

mysql> create database hive;
mysql> grant all on *.* to hive@localhost identified by 'hive';
mysql> flush privileges;

 

 7.启动hdfs和hive

start-dfs.sh
hive

注意:启动hive时大概率会出现如下报错 NoSuchMethodError

 这时分别打开hadoop文件夹下/share/hadoop/common/lib和hive文件夹下/lib路径,输入命令ll看一下guava.jar版本号是否一致,如果不一致,删除其中低版本,将高版本拷贝过去重新启动hive即可。

查看Hadoop下的guava.jar

cd /usr/local/hadoop/share/hadoop/common/lib
ll guava*

 查看hive下的guava.jar

cd /usr/local/hive/lib
ll guava*

通过对比发现hive下的guava.jar的版本号低一些,然后删除低版本。

rm -rf guava-19.0.jar

 已经成功删除低版本。

然后在/usr/local/hadoop/share/hadoop/common/lib下执行

cd /usr/local/hadoop/share/hadoop/common/lib
sudo scp -r guava-27.0-jre.jar /usr/local/hive/lib

 这时可以正常启动hive但是还无法执行

create database if not exists hive;

来建表

需要在hive的bin目录下初始化hive

cd /usr/local/hive/bin
schematool -dbType mysql -initSchema

 如果出现以下错误:

 则需要将链接MySQL的驱动jar包拷贝到hive的lib文件夹下:

cd /home/hadoop/Downloads
sudo tar -zxvf mysql-connector-java-5.1.40.tar.gz -C /usr/local
cd /usr/local
cp mysql-connector-java-5.1.40/mysql-connector-java-5.1.40-bin.jar  /usr/local/hive/lib

 进入hive的lib文件夹ll my*可以看到mysql的jar包

 然后再次执行格式化hive命令:

可以看到如下图所示,表明格式化成功!

 进入hive执行建表语句:

create database if not exists hive;

 如图所示建表成功!!

再次测试!!!

 使用sql语句show databases;

可以看到新建的表data。

  • 5
    点赞
  • 31
    收藏
    觉得还不错? 一键收藏
  • 4
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值