hadoop搭建、mysql、hive部署

这篇具有很好参考价值的文章主要介绍了hadoop搭建、mysql、hive部署。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

写在前面:
本篇文章基于linux系统Centos7环境下进行搭建、操作
仅作为学习参考借鉴,欢迎大家交流学习!

一、 HDFS安装搭建

1.1 关闭虚拟机防火墙

在之后的学习、操作中,经常会遇到在宿主机中通过程序去访问虚拟机中的相关软件,但是默认情况下,虚拟机的防火墙是不允许访问,这是需要开启一个一个的端口号,比较麻烦,所以在教学过程中,为了提高教学、学习的效率,直接关闭虚拟机的防火墙。(注意在实际的生产环境中不可以,在生产环境中通常是通过关闭端口实现的)

防火墙相关指令:
启动:systemctl start firewalld
关闭:systemctl stop firewalld
重启:systemctl restart firewalld
查看防火墙状态:systemctl status firewalld / firewall-cmd --state
在开机时启用防火墙:systemctl enable firewalld
在开机时禁用防火墙:systemctl disable firewalld

hadoop安装mysql,hadoop,hive,mysql

1.2 配置hosts文件

命令:vi /etc/hosts

hadoop安装mysql,hadoop,hive,mysql

hadoop安装mysql,hadoop,hive,mysql

注:配置文件中的“hadoop”根据实际用户填写

1.3 配置免密登陆

命令:ssh-keygen -t rsa

然后一直回车,直到出现:

hadoop安装mysql,hadoop,hive,mysql

注:(方框中的图案每个虚拟机都不相同)

此时,会产生两个文件 id_rsa(私钥) id_rsa.pub(公钥),生成节点的公钥和私钥,生成的文件会自动放在/root/.ssh目录下

第二步:执行:ssh-copy-id root@hadoop

此处hadoop其实就是hosts文件中ip的映射,这一步实际上是将公钥拷贝到

/root/.ssh/authorized_keys 这个文件里(等同于cp id_rsa.pub authorized_keys #拷贝公钥到ssh文件)

格式化成功截图:

hadoop安装mysql,hadoop,hive,mysql

1.4 上传jdk和hadoop安装包

将jdk和hadoop的安装包上传到虚拟机

hadoop安装mysql,hadoop,hive,mysql

方式一(有网络连接):

直接使用yum源安装rz

命令: yum install lrzsz

hadoop安装mysql,hadoop,hive,mysql

方式二:使用filezilla上传安装包

hadoop安装mysql,hadoop,hive,mysql

hadoop安装mysql,hadoop,hive,mysql

1.5 安装配置JDK

1 解压安装包

hadoop安装mysql,hadoop,hive,mysql

注:这里输入方式为tar -xvf jdk “tab”,会自动补全

2 重命名目录(可选操作)

hadoop安装mysql,hadoop,hive,mysql

3 设置环境变量

hadoop安装mysql,hadoop,hive,mysql

在文件尾添加:

export JAVA_HOME=/software/jdk1.8

export PATH= J A V A H O M E / b i n : JAVA_HOME/bin: JAVAHOME/bin:PATH:$HOME/bin

export CLASSPATH=.: J A V A H O M E / l i b / d t . j a r : JAVA_HOME/lib/dt.jar: JAVAHOME/lib/dt.jar:JAVA_HOME/lib/tools.jar

hadoop安装mysql,hadoop,hive,mysql

注:该截图Java_home文件目录多/home

保存退出,利用命令使配置立即生效 source /etc/profile

hadoop安装mysql,hadoop,hive,mysql

利用命令查看jdk版本信息,检验jdk的安装配置是否成功

hadoop安装mysql,hadoop,hive,mysql

1.6 安装配置hadoop

1.解压安装包

hadoop安装mysql,hadoop,hive,mysql

2.配置环境变量

hadoop安装mysql,hadoop,hive,mysql

export HADOOP_HOME=/software/hadoop2.6

export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$JAVA_HOME/bin:$PATH:$HOME/bin

hadoop安装mysql,hadoop,hive,mysql

该截图hadoop_home文件目录多/home

source /etc/profile 使其立即生效

3. 配置hadoop-env.sh

vim /software /Hadoop-2.7.3/etc/hadoop /hadoop-env.sh

export JAVA_HOME=/software/jdk1.8 #必须配置(25行)

export HADOOP_CONF_DIR=/software/hadoop2.6/etc/hadoop (33行)

hadoop安装mysql,hadoop,hive,mysql

(之所以配置路径是因为自带的往往定位不到,会发生某些错误)

注:该截图文件目录多/home

4.配置core-site.xml

vim /software /Hadoop-2.7.3/etc/hadoop/core-site.xml

<configuration>标签添加:

<configuration>

<!--用来指定hdfs的namenode的地址-->

<property>

<name>fs.defaultFS</name>

<value>hdfs://hadoop:9000</value>

</property>

<!--用来指定hadoop运行时产生文件的存放目录-->

<property>

<name>hadoop.tmp.dir</name>

<value>/software/hadoop-2.7.3/tmp</value>

</property>

</configuration>

hadoop安装mysql,hadoop,hive,mysql

5. 配置hdfs-site.xml

vim /software /Hadoop-2.7.3/etc/hadoop/hdfs-site.xml

在**<configuration>**标签添加:

<configuration>

<!-- 指定hdfs副本数量 -->

<property>

<name>dfs.replication</name>

<value>1</value>

</property>

<!-- 关闭hdfs权限检查 -->

<property>

<name>dfs.permissions</name>

<value>false</value>

</property>

</configuration>

hadoop安装mysql,hadoop,hive,mysql

【注】:

dfs.replication默认是3,此处我们只需要伪分布式,所以设置为1即可;

dfs.permissions 设置为false代表所有用户都可以在hdfs上操作文件,这只是为了以后利用eclipse的hadoop插件上传下载文件方便

6. 配置mapred-site.xml

此文件原本不存在,只有一个模板文件mapred-site.xml.template

hadoop安装mysql,hadoop,hive,mysql

将其复制一份并改名为mapred-site.xml(注意路径为hadoop2.7.3/etc/hadoop)

hadoop安装mysql,hadoop,hive,mysql

hadoop安装mysql,hadoop,hive,mysql

vim /software /Hadoop-2.7.3/etc/hadoop/mapred-site.xml

在**<configuration>**标签添加:

<configuration>

<!-- 配置mapreduce作业运行在yarn上 -->

<property>

<name>mapreduce.framework.name</name>

<value>yarn</value>

</property>

</configuration>

hadoop安装mysql,hadoop,hive,mysql

7. 配置yarn-site.xml

vim /software /Hadoop-2.7.3/etc/hadoop/yarn-site.xml

在**<configuration>**标签添加:

<configuration>

<!-- 指定resourceManager的主机 -->

<property>

<name>yarn.resourcemanager.hostname</name>

<value>hadoop</value>

</property>

<!-- reduce任务的数据来源 -->

<property>

<name>yarn.nodemanager.aux-services</name>

<value>mapreduce_shuffle</value>

</property>

</configuration>

hadoop安装mysql,hadoop,hive,mysql

1.7 启动hadoop

此时hadoop已经成功安装配置,在首次启动之前,需要对namenode进行格式化(类似于新买的硬盘需要格式化一样,因为hdfs本身就是一个文件系统)

命令: hdfs namenode -format

以下3个部分一致即格式化成功

hadoop安装mysql,hadoop,hive,mysql

启动hadoop的hdfs:

命令:start-dfs.sh

输入jps,只要出现以下进程即启动成功:

hadoop安装mysql,hadoop,hive,mysql

启动mapreduce:(需要先启动hdfs):

命令:start-yarn.sh

利用jps命令查看进程:

hadoop安装mysql,hadoop,hive,mysql

除了jps命令,还可以通过web界面来查看(建议使用google浏览器,同时注意关闭防火墙)

hdfs web界面:

ip地址:50070

hadoop安装mysql,hadoop,hive,mysql

mapreduce web界面:

ip地址:8088

hadoop安装mysql,hadoop,hive,mysql

以上就是hadoop环境搭建教程,下面如果退出请先stop-all.sh 关闭进程。

二、 Mysql安装,调试

2.1 安装包下载

切换到/software目录(基于本次教程)cd /software

执行下面命令:

wget https://cdn.mysql.com/archives/mysql-5.7/mysql-community-client-5.7.35-1.el7.x86_64.rpm

wget https://cdn.mysql.com/archives/mysql-5.7/mysql-community-common-5.7.35-1.el7.x86_64.rpm

wget https://cdn.mysql.com/archives/mysql-5.7/mysql-community-libs-5.7.35-1.el7.x86_64.rpm

wget https://cdn.mysql.com/archives/mysql-5.7/mysql-community-libs-compat-5.7.35-1.el7.x86_64.rpm

wget https://cdn.mysql.com/archives/mysql-5.7/mysql-community-server-5.7.35-1.el7.x86_64.rpm

下载安装包(直接复制所有命令,输入即可,部分时候可能因为网络问题,多次尝试)

2.2 安装mysql

执行该命令需要联网,注意虚拟机网络连接

yum install -y mysql-community-*-5.7.35-1.el7.x86_64.rpm 

hadoop安装mysql,hadoop,hive,mysql

2.3 修改密码

开始mysql服务器并初始化密码

命令:systemctl start mysqld # 开启MySQL服务器

cat /var/log/mysqld.log | grep password # 查看默认初始生成的密码

hadoop安装mysql,hadoop,hive,mysql

以root用户登陆Mysql

命令:mysql -u root -p

hadoop安装mysql,hadoop,hive,mysql

设置密码等级并修改密码

set global validate_password_length=4;

set global validate_password_policy=0; # 设置密码等级

ALTER USER ‘root’@‘localhost’ IDENTIFIED WITH mysql_native_password BY ‘您的密码’; # 修改默认密码,注意替换后面的密码

hadoop安装mysql,hadoop,hive,mysql

2.4 创建用户并赋予权限

CREATE USER ‘test’@‘%’ IDENTIFIED BY ‘123456’; #创建“test”用户,设置为允许远程登录

grant all on . to ‘test’@‘%’; #赋予此用户所有数据库的所有权限(增删改查)

hadoop安装mysql,hadoop,hive,mysql

2.5 连接navicat软件

hadoop安装mysql,hadoop,hive,mysql

报错分析:防火墙未关闭

查看防火墙状态:systemctl status firewalld

关闭防火墙:systemctl stop firewalld

永久禁用:systemclt disable firewalld

三、 hive安装,数据筛选

3.1 解压数据包,配置环境变量

tar -xzvf hive-1.1.0-cdh5.4.5.tar.gz -C /opt/ #解压文件
mv hive-1.1.0-cdh5.4.5.tar.gz hive #修改名称
 vi /etc/profile #修改环境变量

将hive的bin目录,添加到环境变量PATH中,保存退出。

export HIVE_HOME=/opt/hive  
export PATH=$HIVE_HOME/bin:$PATH 

执行source命令,使Hive环境变量生效。

source /etc/profile 

3.2 由于hive 需要将元数据,存储到MySQL中。所以需要拷贝/opt/software目录下的 mysql-connector-java-5.1.26-bin.jar 到 hive 的 lib 目录下。

3.3 下面配置Hive,切换到/opt/hive/conf目录下,创建hive的配置文件hive-site.xml。

cd /software/hive/conf

touch hive-site.xml

使用 vi 打开 hive-site.xml 文件。

vi hive-site.xml

将下列配置添加到 hive-site.xml 中。

<configuration>  
   <property>  
       <name>javax.jdo.option.ConnectionURL</name>  
<value>jdbc:mysql://hadoop:3306/hive?createDatabaseIfNotExist=true&amp;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>123456</value>  
    </property>  </configuration> 

由于Hive的元数据会存储在Mysql数据库中,所以需要在Hive的配置文件中,指定mysql的相关信息。
javax.jdo.option.ConnectionURL:数据库链接字符串。
此处的主机名,需要设置为自身系统的主机名。这里的主机名为:hadoop
javax.jdo.option.ConnectionDriverName:连接数据库的驱动包。
javax.jdo.option.ConnectionUserName:数据库用户名。
javax.jdo.option.ConnectionPassword:连接数据库的密码。
此处的数据库的用户名及密码,需要设置为自身系统的数据库用户名及密码。

3.4 另外,还需要告诉Hive,Hadoop的环境配置。所以我们需要修改 hive-env.sh 文件。
首先我们将 hive-env.sh.template 重命名为 hive-env.sh。

mv /opt/hive/conf/hive-env.sh.template  /opt/hive/conf/hive-env.sh 

使用 vi 打开hive-env.sh文件。

vi hive-env.sh 

追加 Hadoop的路径,以及 Hive配置文件的路径到文件中。

# Set HADOOP_HOME to point to a specific hadoop install directory # HADOOP_HOME=${bin}/../../hadoop 
HADOOP_HOME=/opt/hadoop  # Hive Configuration Directory can be controlled by: # export HIVE_CONF_DIR=
 export HIVE_CONF_DIR=/opt/hive/conf 

3.5 下一步是配置MySQL,用于存储Hive的元数据。

schematool -initSchema -dbType mysql

如果出现1045错误或者视频里最后的错误,多半删除数据库再创建就行

hadoop安装mysql,hadoop,hive,mysql

首先,需要保证 MySQL 已经启动。执行以下命令,查看MySQL的运行状态。

service mysqld status 

若没有启动,执行启动命令。

service mysqld start 
或者systemctl restart mysqld

3.6 开启MySQL数据库。

mysql -u root -p 

输入密码进入数据库
创建名为 hive 的数据库,编码格式为 latin1,用于存储元数据。

mysql> create database hive CHARACTER SET latin1; 

查看数据库 hive是否创建成功。

mysql> show databases; 

输入exit 退出 MySQL

mysql> exit; 

3.7 执行测试。由于Hive对数据的处理,依赖MapReduce计算模型,所以需要保证Hadoop相关进程已经启动。( /opt/hadoop/sbin/start-all.sh )

启动Hadoop后,在终端命令行界面,直接输入hive便可启动Hive命令行模式。

输入HQL语句查询数据库,测试Hive是否可以正常使用。

hive> show databases; 

hadoop安装mysql,hadoop,hive,mysql

最后全部搭建成功,是左栏的hive库里有如下数据表才可,否则在mysql安装成功和hive失败的情况下,下面左栏是没有数据的。

hadoop安装mysql,hadoop,hive,mysql文章来源地址https://www.toymoban.com/news/detail-715375.html

到了这里,关于hadoop搭建、mysql、hive部署的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • [Hadoop高可用集群]数仓工具之Hive的安装部署(超级详细,适用于初学者)

    📕作者:喜欢水星记 🏆系列:Hadoop高可用集群 🔋收藏:本文记录我搭建过程供大家学习和自己之后复习,如果对您有用,希望能点赞收藏加关注 Hive是基于Hadoop的一个数据仓库工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的sql查询功能,可以将sql语句转

    2024年02月05日
    浏览(45)
  • 【Hadoop】安装部署-完全分布式搭建

    Hadoop是一个适合大数据的分布式存储和计算平台。狭义上说Hadoop就是一个框架平台,广义上讲Hadoop代表大数据的一个技术生态圈,包括很多软件框架。而我们的完全分布式,指的是在真实环境下,使⽤多台机器,共同配合,来构建⼀个完整的分布式文件系统。在真实环境中,

    2024年02月07日
    浏览(34)
  • 【Spark+Hadoop+Hive+MySQL+Presto+SpringBoot+Echarts】基于大数据技术的用户日志数据分析及可视化平台搭建项目

    点我获取项目数据集及代码 随着我国科学技术水平的不断发展,计算机网络技术的广泛应用,我国已经步入了大数据时代。在大数据背景下,各种繁杂的数据层出不穷,一时难以掌握其基本特征及一般规律,这也给企业的运营数据分析工作增添了不小的难度。在大数据的背景

    2024年02月10日
    浏览(44)
  • 【hive】单节点搭建hadoop和hive

    需要使用hive远程debug,尝试使用无hadoop部署hive方式一直失败,无果,还是使用有hadoop方式。最终查看linux内存占用 6GB ,还在后台运行docker的mysql( bitnami/mysql:8.0 ),基本满意。 版本选择: (1)hive2 hadoop2 和hive3和hadoop3需要搭配使用,不能像chd的hive2和hadoop3搭配使用,容易出现

    2024年04月10日
    浏览(29)
  • 【Hadoop】-Hive部署[12]

    目录 思考 VMware虚拟机部署 规划 步骤1:安装MySQL数据库 步骤2:配置Hadoop 步骤3:下载解压Hive 步骤4:提供MySQL Driver包 步骤5:配置Hive 步骤6:初始化元数据库 步骤7:启动Hive(使用hadoop用户) 部署Hive的主要流程: Hive是分布式运行的框架还是单机运行的? Hive是单机工具,只

    2024年04月27日
    浏览(20)
  • Hadoop——Hive运行环境搭建

    Windows:10         JDK:1.8         Apache Hadoop:2.7.0 Apache Hive:2.1.1         Apache Hive src:1.2.2         MySQL:5.7 1、下载 Hadoop搭建 Apache Hive 2.1.1:https://archive.apache.org/dist/hive/hive-2.1.1/apache-hive-2.1.1-bin.tar.gz Apache Hive 1.2.2 src:https://archive.apache.org/dist/hive/hive-1.2.2/apache-hive-1.

    2024年02月16日
    浏览(29)
  • 搭建hadoop和hive分析脚本

    搭建环境 hdfs操作 创建路径 上传 HIVE数据库操作 创库 建表 导入数据 导出文件 #输出路径 先选 数据分析校验输出 Hive会自动生成输出文件,并将结果写入这些文件中。你不需要提前创建 part-r-00000 文件,Hive会根据配置自动创建文件并命名 # 联合输出 $ javac -classpath $(hadoop cla

    2024年02月16日
    浏览(37)
  • docker搭建hadoop和hive集群

    安装docker教程 https://www.runoob.com/docker/centos-docker-install.html 只要在终端输入: 后出现如下图的内容就证明安装docker成功了 在终端输入: 在终端输入:sudo docker images,可以看到刚刚拉取的两个镜像 每次执行docker语句都要在前面加sudo,比较麻烦,直接将hadoop用户加入docker用户组

    2024年02月01日
    浏览(46)
  • 分布式搭建(hadoop+hive+spark)

    hadoop-master 192.168.43.141 hadoop-slave1 192.168.43.142 hadoop-slave2 192.168.43.143 链接:https://pan.baidu.com/s/1OwKLvZAaw8AtVaO_c6mvtw?pwd=1234 提取码:1234 MYSQL5.6:wget http://repo.mysql.com/mysql-community-release-el6-5.noarch.rpm Scale:wget https://downloads.lightbend.com/scala/2.12.4/scala-2.12.4.tgz

    2024年02月12日
    浏览(32)
  • Hadoop——DataGrip连接MySQL|Hive

    1、下载 DataGrip下载:DataGrip: The Cross-Platform IDE for Databases SQL by JetBrains 2、破解 破解链接:https://www.cnblogs.com/xiaohuhu/p/17218430.html 3、启动环境 启动Hadoop:到Hadoop的sbin目录下右键管理员身份运行start-all.cmd,或命令运行: start-all.cmd 启动HiveServer2:以管理员身份打开cmd,目录切换

    2024年02月16日
    浏览(40)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包