Hadoop伪分布搭建、Mysql安装、Hive安装(附安装包)
实验目的:
搭建Hadoop伪分布环境
安装Mysql
安装Hive
实验环境:
Centous Linux7系统(见上一篇文章)
WinSCP软件
(链接:https://pan.baidu.com/s/1Lcruf94-XWMfDGJr2fz5MA
提取码:d508)
Hadoop-2.7.3.tar.gz
Apache-hive-2.3.6-bin.tar.gz
Jdk-8u65-linux-x64.tar.gz
Mysql-connector-java-5.1.46.tar.gz
MySQL-client-5.5.59-1.el7.x86_64.rpm
MySQL-server-5.5.59-1.el7.x86_64.rpm
链接:https://pan.baidu.com/s/1vMBmV5ldxDq5CuQVuMnKBA
提取码:t5mo
实验过程:
1.安装前准备
(1)打开wincsp通过IP与centous linux7连接
(2)在Linux7根目录创建soft文件夹
(3)利用winscp软件将实验所需四个安装包托到/soft文件夹下
2.Hadoop环境搭建(安装jdk与hadoop)
(1)解压文件
执行如下命令:
cd /soft
tar -xzvf jdk-8u65-linux-x64.tar.gz
tar -xzvf hadoop-2.7.3.tar.gz
(2)创建软链接
ln -s jdk1.8.0_65/ /soft/jdk
ln -s hadoop-2.7.3/ /soft/hadoop
(3)配置环境变量
vi /etc/profile //在文件最后添加如下内容
export JAVA_HOME=/soft/jdk
export PATH=$PATH:$JAVA_HOME/bin
export HADOOP_HOME=/soft/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
保存退出并生效profile文件
source /etc/profile
(4)在任意目录下执行,分别测试JDK与Hadoop环境
java –version
hadoop version
(出现版本号即表示成功)
(5)测试本地模式
hdfs dfs –ls / //该模式使用Linux本地文件系统
(6)配置伪分布式Hadoop环境
cd /soft/hadoop/etc/hadoop/
vi core-site.xml //修改文件内容如下
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://localhost/</value>
</property>
</configuration>
vi hdfs-site.xml //修改文件内容如下
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
vi hadoop-env.sh //修改光标所在位置JAVA_HOME如图:
添加JAVA_HOME路径
(7)格式化文件系统
hadoop namenode –format
(8)启动hdfs
start-dfs.sh
(9)测试HDFS系统是否启动
Jps
(出现namenode Datanode SecondaryNameNode进程,说明hdfs系统启动正常。)
(10)web测试HDFS
①关闭linux防火墙
systemctl stop firewalld
②浏览器测试,输入http://192.168.110.11:50070/,出现下图所示界面,说明伪分布式hdfs环境已经正常运行。
3.安装MySQL
(1)检查本地是否安装过其他版本MySQL
rpm -qa|grep -i mysql
rpm -qa|grep -i maria
(有些版本会自带的有mariadb,若是有需要先卸载 )
(2)卸载
yum -y remove maria*
(3)安装mysql服务器和客户端
cd /soft
rpm -ivh --nodeps MySQL-server-5.5.59-1.el7.x86_64.rpm
rpm -ivh --nodeps MySQL-client-5.5.59-1.el7.x86_64.rpm
# --nodeps就是安装时不检查依赖关系,比如A.rpm需要B.rpm,但是没装B,这样就装不上,用了–nodeps就能装上了。
查看安装的mysql是否已安装成功 :
rpm -qa|grep -i mysql
(4)启动MySQL并设置MySQL服务开机自启动
启动mysql:
service mysql start
设置开机自启动:
systemctl enable mysql
验证自启动是否成功:
chkconfig --list|grep mysql
3,4,5都是开则说明设置成功
(5)登录mysql并设置密码
mysql -uroot
set password=password('123');
(6)开启mysql的远程登录
grant all privileges on *.* to 'root'@'%' identified by 'root'; #权限放大到任何一台机器都可以远程登录
flush privileges;
4.hive元数据库的建立
(1)进入MySQL
mysql -uroot -p123
(2) 建立Hive元数据需要的MySQL下的数据库“hive”,并赋予相应权限
create database hive;
grant all privileges on *.* to 'root'@'localhost' identified by 'root';
grant all privileges on *.* to 'root'@'%' identified by 'root';
flush privileges;
(3)查看数据库“hive”的权限
select host,user,password,Grant_priv,Super_priv from mysql.user;
(4)退出MySQL命令窗口
quit
5.配置Hive安装包
(1)解压
cd /soft
tar -xzvf apache-hive-2.3.6-bin.tar.gz
tar -xzvf mysql-connector-java-5.1.46.tar
ll
(2)创建解压包软连接为hive
ln -s apache-hive-2.3.6-bin /soft/hive
(3)拷贝Hive需要的mysql依赖包mysql-connector-java-5.1.42.jar 至/soft/hive/lib目录下。
cp /soft/mysql-connector-java-5.1.42/mysql-connector-java-5.1.46.jar /soft/hive/lib/
ll /soft/hive/lib/mysql-*
(4) 配置Hive环境变量
vi /etc/profile
在文件末尾加上如下内容
export HIVE_HOME=/soft/hive
export HIVE_CONF_DIR=/soft/hive/conf
export PATH=$HIVE_HOME/bin:$PATH
(5)使profile文件配置生效。
source /etc/profile
(6)查看hive的环境变量是否生效。
echo $PATH
(有hive的bin目录存在即可)
6.配置Hive相关配置文件的参数
(1)打开文件所在目录
cd /soft/hive/conf/
(2)生成hive-site.xml文件。
cp hive-default.xml.template /soft/hive/conf/hive-site.xml
(3)编辑配置文件hive-site.xml。
vi /soft/hive/conf/hive-site.xml
删除hive-site.xml文件中标签<proper>
以下所有内容。
光标移动到<proper>
前输入以下内容:
5937dd
添加内容如下
<property>
<name>hive.metastore.warehouse.dir</name>
<value>/data/hive/warehouse</value>
</property>
<property>
<name>hive.metastore.local</name>
<value>true</value>
</property>
<property>
<name>javax.jdo.option.ConnectionURL</name>
<value>jdbc:mysql://localhost/hive?createDatabaseIfNotExist=true&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>root</value>
</property>
<property>
<name>javax.jdo.option.ConnectionPassword</name>
<value>123</value>
</property>
<property>
<name>hive.metastore.schema.verification</name>
<value>false</value>
</property>
</configuration>
7.启动Hive服务端
(1)初始化元数据。
schematool -dbType mysql -initSchema
(2)查看进程
nohup hive --service metastore > metastore.log 2>&1 &
(3)启动Hive。
hive
8.Hive基本操作
(1)创建数据库dbtest。
CREATE DATABASE dbtest;
(2)显示Hive中数据库。
SHOW DATABASES;
(3)删除数据库dbtest。
DROP DATABASE dbtest;
(4)如果dbtest不存在,建立数据库dbtest。
CREATE DATABASE IF NOT EXISTS dbtest;
(5)使用数据库dbtest。
use dbtest;
(6)显示数据库dbtest。
set hive.cli.print.current.db=true;
(7)查询当前正在使用的数据库。
SELECT current_database();
(8)显示当前数据库中的表。
show tables;
(9)关闭显示当前数据库信息。
set hive.cli.print.current.db=false;
(10)hive中查询本地磁盘上文件路径命令。
!pwd;
(11)hive中查询本地磁盘上命令。
!ls /soft/hive/conf/;
(12)hive中查询HDFS命令。
dfs -ls /
实验总结:
1.熟练掌握在Hadoop伪分布环境搭建与MySQL与hive安装
2.了解了Hadoop与hive的基本联系
3.掌握了hive的基本命令