Hadoop安装MySQLHive以及Sqoop(步骤图文超详细版)
Posted HuiSoul
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Hadoop安装MySQLHive以及Sqoop(步骤图文超详细版)相关的知识,希望对你有一定的参考价值。
还没有搭建Hadoop,欢迎看看我前面的一篇文章:Hadoop集群搭建(步骤图文超详细版)
一、前置条件
需要安装 | 下载方法 |
---|---|
Hive-1.2.1 | 官网下载链接, 提取码:nzyu |
Sqoop-1.4.6 | 百度网盘下载 , 提取码:82it |
JDBC驱动包 | 官网下载链接, 提取码:7t8d |
以上三个的合集包 | 百度网盘下载,提取码:m9dq |
MobaXterm | 百度网盘下载,提取码:f64v |
二、安装mysql
安装从网上下载文件的wget命令,命令↓
yum -y install wget
下载mysql的repo源,命令↓
wget http://repo.mysql.com/mysql-community-release-el7-5.noarch.rpm
安装mysql-community-release-el7-5.noarch.rpm包,命令↓
rpm -ivh mysql-community-release-el7-5.noarch.rpm
查看下获得两个mysql的yum repo源,命令↓
ls -1 /etc/yum.repos.d/mysql-community*
安装mysql,命令↓
yum install mysql-server
过程中的询问都输入 y
开启Mysql服务,命令↓
service mysqld start
查看Mysql目前的状态,命令↓
service mysqld status
Active中显示running则表示正在运行中!
netstat –nptl (查看3306端口是否开启)
登录Mysql(密码为空,回车),命令↓
mysql -u root -p
查看Mysql版本,命令行输入↓
注意!mysql命令行中以分号;作为结束,千万不要漏了!!
select version();
为了后续操作,我们需要为MySQL数据库设置一个秘密,还是先进入MySQL,命令↓
mysql -u root -p
SET PASSWORD = PASSWORD('123456');
我们为MySQL设置允许远程登录权限,在MySQL命令行输入↓
//设置允许远程登录
grant all privileges on *.* to 'root'@'%' identified by '123456' with grant option;
//是更新的权限表加载到内存
flush privileges;
到此,Mysql安装完成啦!
三、安装Hive
为了统一管理,将下载的Hive压缩包放在 /software 目录下
cd 到 /software 目录下,将hive压缩包进行解压,命令↓
tar -xzvf apache-hive-1.2.1-bin.tar.gz
解压后我们在 MobaXterm 左边的/software目录下找到 apache-hive-1.2.1-bin 这个文件夹,将它改名为 hive,方便后续操作
接着我们修改全局配置文件,命令↓
vi /etc/profile
进入以下界面,按键盘上的 i 进入插入模式, 在末尾加入Hive文件的路径,命令↓
export HIVE_HOME=/software/hive
export PATH=$PATH:$HIVE_HOME/bin
输入完后,按键盘上的 esc,再输入 :wq 保存退出!
退出后我们刷新一下全局配置文件,让系统重新寻找路径,命令↓
source /etc/profile
接下来我们修改Hive的配置文件将Hive默认的元数据库存储介质由自带的Derby数据库替换为MySQL数据库!
进入hive文件,来到 /conf 目录下以 .template 后缀结尾的模板文件将其后缀删除,若用Xshell或者MobaXterm软件的直接在左边目录进行Rename就行,如果没用的也可以通过以下指令进行改名,命令↓
cp hive-env.sh.template hive-env.sh
cp beeline-log4j.properties.template beeline-log4j.properties
cp hive-default.xml.template hive-default.xml
cp hive-exec-log4j.properties.template hive-exec-log4j.properties
cp hive-log4j.properties.template hive-log4j.properties
更改后↓
然后修改 hive-env.sh 配置文件,添加Hadoop环境变量,hive的conf配置文件还有hive的lib文件路径,命令↓
export HADOOP_HOME=/software/hadoop
export HIVE_CONF_DIR=/software/hive/conf
export HIVE_AUX_JARS_PATH=/software/hive/lib
保存退出,接着我们还要在 /conf 文件夹下创建一个 hive-site.xml 配置文件,用来配置MySQL相关信息,可以在目录下右键创建文件,也可以使用命令↓
vi hive-site.xml
在 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>root</value>
<description>username to use against metastore database</description>
</property>
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>123456</value>
<description>password to use against metastore database</description>
</property>
</configuration>
保存退出
我们由于使用了MySQL数据库,所以就会用到MySQL的JDBC连接驱动包,我们把从最上面链接中下载的JDBC的jar包放到hive的lib目录下↓
启动 hive,命令↓
hive
若配置文件有错,这里将会提示错误!!
验证hive是否使用了MySQL数据库,进入MySQL,命令↓
mysql -u root -p
show databases;
到此,Hive就配置成功啦!
四、安装Sqoop
为了统一管理,将下载的Sqoop压缩包放在 /software 目录下
cd 到 /software 目录下,将hive压缩包进行解压,命令↓
tar -xzvf apache-hive-1.2.1-bin.tar.gz
解压后我们在 MobaXterm 左边的/software目录下找到 sqoop-1.4.6.bin_hadoop-2.0 这个文件夹,将它改名为 sqoop,方便后续操作
接着我们修改全局配置文件,命令↓
vi /etc/profile
进入以下界面,按键盘上的 i 进入插入模式, 在末尾加入Hive文件的路径,命令↓
export HIVE_HOME=/software/hive
export PATH=$PATH:$HIVE_HOME/bin
输入完后,按键盘上的 esc,再输入 :wq 保存退出!
退出后我们刷新一下全局配置文件,让系统重新寻找路径,命令↓
source /etc/profile
我们来到 /software/sqoop/conf 目录下,将sqoop-env-template.sh文件中的 -template 给删除
更改后↓
然后修改 sqoop-env.sh 配置文件,添加Hadoop环境变量和hive文件的路径,命令↓
export HADOOP_COMMON_HOME=/software/hadoop
export HADOOP_MAPRED_HOME=/software/hadoop
export HIVE_HOME=/software/hive
保存退出,接着我们同样为sqoop添加MySQL的JDBC连接驱动包,来到 /software/sqoop/lib 目录下,添加驱动文件↓
测试sqoop,我们用sqoop list-databases命令输出一下本地MySQL数据库中的所有数据库,命令↓
sqoop list-databases --username root --password '123456' --connect jdbc:mysql://localhost:3306/
能看到数据库中的数据库名就说明Sqoop配置完毕啦!
上述的 Warning 是因为那些软件我们没安装而已。
本次分享到此结束!谢谢大家阅读!!
以上是关于Hadoop安装MySQLHive以及Sqoop(步骤图文超详细版)的主要内容,如果未能解决你的问题,请参考以下文章