Ubuntu18.04.4 MySQL、Hive本地模式及Sqoop的安装配置(详细步骤)

  • 安装MySQL
  • 安装hive
  • 安装Sqoop


Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的sql查询功能,可以将sql语句转换为MapReduce任务进行运行。接着上次的数据预处理接下来还要进行数据分析,而数据分析用的便是Hive。Sqoop是一款开源的工具,主要用于在Hadoop(HDFS,Hbase,HIVE)与传统的数据库(mysql、Oracle 、postgresql…)间进行数据的传递,可以将一个关系型数据库中的数据导进到Hadoop的HDFS中,也可以将HDFS的数据导进到关系型数据库中。我们要将分析后的数据导入到MySQL数据库里所以sqoop也是必不可少的。本篇便是数据分析前的准备:在Ubuntu操作系统下安装配置 MySQL、Hive本地模式及Sqoop。

文章里用的操作系统为Ubuntu,版本为18.04.4

文章内的几乎所有路径都要写自己实际的路径

安装MySQL

安装hive前先把MySQL安装配置好。
执行下边的命令下载安装:

sudo apt-get install mysql-server
	sudo apt install mysql-client
	sudo apt install libmysqlclient-de

安装过后我们可以执行下边的代码来验证是否安装成功:

sudo netstat -tap |grep mysql

出现下图内容说明安装成功

mysql win10 选择安装位置_hive


然后找到初始的账号密码登陆MySQL:

sudo cat /etc/mysql/debian.cnf

找到下图中的用户和密码并登陆数据库

mysql win10 选择安装位置_hive_02


登陆:mysql -udebian-sys-maint -pwBbaaVROcuGhHJc1 这里建议直接复制上边查看的内容,不然容易打错。

使用MySQL数据库:use mysql;

修改root用户密码后退出:

ALTER USER 'root'@'localhost' IDENTIFIED BY '123123';
exit;

重新登陆MySQL:

mysql -uroot -p123123
use mysql

创建数据库:

create database hive default character set utf8 collate utf8_general_ci;

建新用户hive:
格式为:

create user “用户名”@“host” identified by “你的密码”;

这里host如果是localhost为本地用户登陆,如果是IP地址则是IP地址登陆,如果是“%”则是外网登陆。
我的命令:

create user 'hive'@'localhost' identified by '123123';

给hive用户授权刷新权限:
授权格式:

grant privileges on databasename.tablename to ‘username’@‘host’ IDENTIFIED BY ‘PASSWORD’;

grant all privileges on `hive`.* to 'hive'@'localhost'; 
flush privileges;

查看是否授权成功:

show grants;

查看某个用户的权限为:

show grants for 'hive'@'localhost';

MySQL安装到这里就结束了,接下来是安装配置Hive

安装hive

安装Hive之前必须安装配好jdk和Hadoop。

首先是下载Hive,以及Hive本地模式下还需要MySQL的JDBC驱动,可以在MySQL的官网下载,也可以去镜像网站下载,官网下载相对较慢一点。这里贴一个华为的镜像网站连接:
hive:

https://mirrors.huaweicloud.com/apache/hive/hive-2.3.7/apache-hive-2.3.7-bin.tar.gz

驱动:

https://mirrors.huaweicloud.com/mysql/Downloads/Connector-J/mysql-connector-java-5.1.48.tar.gz

下载后开始解压安装Hive:

tar -zxvf apache-hive-2.3.7-bin.tar.gz -C 你要安装的路径

安装过后可以创建一个软连接,或者改名字以便后边修改环境变量等配置的输入。
切换到hive的安装目录输入:

ln -s apache-hive-2.3.3-bin hive

设置环境变量:

vi ~/.bashrc

在文件的尾部添加:
下边的路径是我自己的路径,自己做的时候要改成自己实际安装的路径。

export HIVE_HOME=/home/hadoop/hive
export PATH=$HIVE_HOME/bin:$PATH

修改完成保存退出后,要使环境变量立即生效执行:

source ~/.bashrc

修改配置文件:
切换到Hive的conf目录下,创建hive-site.xml文件:

cd ~/hive/conf
vi hive-site.xml

添加以下内容(顶格写):

<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
	<property>
		<name>javax.jdo.option.ConnectionURL</name>
   		<value>jdbc:mysql://localhost:3306/hive?useSSL=false</value>
	</property>
	<property>
   		<name>javax.jdo.option.ConnectionDriverName</name>
   		<value>com.mysql.jdbc.Driver</value>
	</property>
	<property>
   		<name>javax.jdo.option.ConnectionUserName</name>
   		<value>hive</value>
	</property>
	<property>
   		<name>javax.jdo.option.ConnectionPassword</name>
   		<value>123123</value>
	</property>
</configuration>

配置文件需要顶格写,不然会报错。配置文件里的javax.jdo.option.ConnectionUserName以及javax.jdo.option.ConnectionPassword要根据自己在MySQL创建的用户和用户名做修改。
然后将前边下载的驱动放在安装的Hive的lib目录下:

cp mysql-connector-java-5.1.48.jar  ~/hive/lib

首次安装需要初始化MySQL:

schematool -dbType mysql -initSchema

启动hive:
在hive启动之前要保证Hadoop已经启动

hive

启动成功:

mysql win10 选择安装位置_mysql_03

安装Sqoop

Sqoop的华为镜像网站

https://mirrors.huaweicloud.com/apache/sqoop/1.4.7/sqoop-1.4.7.bin__hadoop-2.6.0.tar.gz

切换到压缩包所在目录后解压到指定目录:

tar -zxvf sqoop-1.4.7.bin__hadoop-2.6.0.tar.gz -C 你要安装的目录

切换到sqoop安装目录创建软连接:

ln -s sqoop-1.4.7.bin__hadoop-2.6.0 sqoop

在末尾添加环境变量: vi ~/.bashrc 加入:
路径根据自己实际路径修改

export SQOOP_HOME=/home/hadoop/sqoop
export PATH=$PATH:${SQOOP_HOME}/bin

立即生效:source ~/.bashrc 进入到sqoop的conf目录下利用模板文件,复制副本进行编辑修改:

cd ~/sqoop/conf
cp sqoop-env-template.sh sqoop-env.sh
vi sqoop-env.sh

将一下内容进行更改:

#Set path to where bin/hadoop is available
#export HADOOP_COMMON_HOME=

#Set path to where hadoop-*-core.jar is available
#export HADOOP_MAPRED_HOME=

#set the path to where bin/hbase is available
#export HBASE_HOME=

#Set the path to where bin/hive is available
#export HIVE_HOME=

#Set the path for where zookeper config dir is
#export ZOOCFGDIR=

改为:

#Set path to where bin/hadoop is available
export HADOOP_COMMON_HOME=/home/hadoop/hadoop

#Set path to where hadoop-*-core.jar is available
export HADOOP_MAPRED_HOME=/home/hadoop/hadoop

#Set the path to where bin/hbase is available
export HBASE_HOME=/home/hadoop/hbase

#Set the path to where bin/hive is available
export HIVE_HOME=/home/hadoop/hive

#Set the path for where zookeper config dir is
export ZOOCFGDIR=/home/hadoop/zookeeper

里边的内容要根据自己的实际路径进行修改,上边的为我自己的实际路径。

启动sqoop验证是否安装成功:sqoop help

mysql win10 选择安装位置_mysql_04


启动会有

Warning: /home/hadoop/sqoop/../hcatalog does not exist! HCatalog jobs will fail.
Please set $HCAT_HOME to the root of your HCatalog installation.
Warning: /home/hadoop/sqoop/../accumulo does not exist! Accumulo imports will fail.
Please set $ACCUMULO_HOME to the root of your Accumulo installatio

警告信息,原因是没有安装HCatalog和Accumulo,不影响实际使用,如果想去掉这些警告信息可以切换到sqoop目录下后执行:vi bin/configure-sqoop注释掉相关语句即可解决。

mysql win10 选择安装位置_mysql win10 选择安装位置_05


mysql win10 选择安装位置_sqoop_06


好了,安装教程到此结束,有描述不对的地方多多指正。写博客就是为了记录一下自己的学习,同时加深记忆,以免忘记自己学过的东西,以后还可以回顾一下。