Chapter 2 Install hive and configure remote mysql metabase under Hadoop pseudo-distribution

  1. Minimize installation of centos7
    -administrator root
    -user hiveyd
    -configure network (root)

```c
		- 重命名机器
		$> hostnamectl set-hostname master
		- 设置主机名
			$> vi /etc/hosts
			填入 192.168.56.xx1 master
		- 关闭防火墙和自启动
			$> service firewalld stop 
  			$> systemctl disable firewalld.service
2. 安装JDK
在用户目录下的soft文件夹下先上传再解压
			$>rpm -ivh jdk-8u91-linux-x64.rpm
			配置java环境变量
			$> vi /etc/profile
				末尾添加
				------------------------
				export JAVA_HOME=/usr/java/jdk1.8.0_91
				export PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/jre/bin
				export CLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/dt.jar
3. 安装配置hadoop [伪分布式]
hadoop的安装位置在自己用户下的自创soft目录下:
		- 安装hadoop
				$> cd /soft
				$> tar -xzvf hadoop-2.7.3.tar.gz
		- 修改Java位置
				$> vi /soft/hadoop-2.7.3/etc/hadoop/hadoop-env.sh
				JAVA_HOME=/usr/java/jdk1.8.0_91
		- 修改环境变量
				$> vi /etc/profile
				加入
				export HADOOP_HOME=/home/hiveyd/soft/hadoop
				export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
		- 环境变量立即生效
				$> source /etc/profile
		- 检查java和hadoop是否配置成功
				$> java -version
				$> hadoop version
		- 立即重启机器
				$> shutdown -r now 
4. hadoop 伪分布式环境搭建
- [配置core-site.xml]
	==========================
		<!-- 指定namenode地址-->
		<property>
			<name>fs.defaultFS</name>
			<value>hdfs://master:9000</value>
		</property>
		<!-- 
			指定临时目录,需要提前创建 
			$> mkdir -p ~/hadoop/tmp
		-->
		<property>
      <name>hadoop.tmp.dir</name>
      <value>/root/hadoop/tmp</value>
  </property>
  
 - [配置hdfs-site.xml]
 =========================
 	<!-- 指定hdfs副本数量 -->
 	<property>
      <name>dfs.replication</name>
      <value>1</value>
		</property>
	
	 - [配置mapred-site.xml]
	 =========================
	 -> 需要先拷贝一份
	 	$> cp mapred-site.xml.template mapred-site.xml
	 	$> vi mapred-site.xml
	 	--------------------
	 		<!-- 指定MR程序运行在yarn上 -->
	 		<property>
       <name>mapreduce.framework.name</name>
       <value>yarn</value>
			</property>	
	 	
	 - [配置yarn-site.xml]
	 =========================
	 	<!-- 指定resource-manager地址 -->
		<property>
       <name>yarn.resourcemanager.hostname</name>
       <value>master2</value>
  </property>		 	
	 	<!-- reducer 获取数据方式 -->
		<property>
       <name>yarn.nodemanager.aux-services</name>
       <value>mapreduce_shuffle</value>
  </property>		
  	 	
	 - 配置ssh远程无密登录
	 		$> cd ~/.ssh
	 		$> ssh-keygen -t rsa
	 		$> ssh-copy-id localhost
	 - 启动hadoop
	 		-> 格式化hdfs
	 		$> hdfs namenode -format
	 - 启动hadoop
	 		-> 启动hdfs
	 		$> start-dfs.sh
	 		-> 启动yarn
	 		$> start-yarn.sh
	 		
	 - 验证hadoop是否启动
	 		$> jps
5. hive 安装/配置
1. - 解压缩在soft目录
 $> tar -zxvf apache-hive-2.1.1-bin.tar.gz
2. - 重命名
 $> mv apache-hive-2.1.1-bin hive
 3.- 修改环境变量
#hive
$> vi /etc/profile
		 ---------------------
export HIVE_HOME=/home/hiveyd/soft/hive   可以通过pwd直接复制路径
export PATH=$PATH:$HIVE_HOME/bin
 $> source /etc/profile
4.修改hive-env.sh  (提前修改文件名)
1.配置hadoop目录
 HADOOP_HOME=/home/hiveyd/soft/hadoop
2.指定用户自定义文件的所在目录路径:
export HIVE_CONF_DIR=/home/hiveyd/soft/hive/conf
5.启动hadoop集群
start-all.sh
6.在hdfs上面创建hive的文件夹
临时文件:
hadoop fs -mkdir /tmp
数据文件:
hadoop fs -mkdir -p /user/hive/warehouse
7.修改权限
[hiveyd@master conf]$ hadoop fs -chmod 777 /tmp
[hiveyd@master conf]$ hadoop fs -chmod 777 /user/hive/warehouse
 8. [修改hive-site.xml],不修改的话默认使用derBy作为元数据库		进入:hive的conf目录
		 	$> cp hive-default.xml.template hive-site.xml
		 	$> vi hive-site.xml
	8.1 [配置hive-site.xml]
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<!--指定存放元数据的数据库名hive(远程mysql数据库),这里mysql数据库hive存放在192.168.150.1-->
<property>
    <name>javax.jdo.option.ConnectionURL</name>
    <value>jdbc:mysql://192.168.235.1xx:3306/hive?createDatabaseIfNotExsit=true&amp;characterEncoding=UTF-8</value>
  </property>
<!--指定DB连接用户名为root:  -->
<property>
    <name>javax.jdo.option.ConnectionUserName</name>
    <value>root</value>
  </property>
<!--指定DB连接密码为mysql:  -->
<property>
    <name>javax.jdo.option.ConnectionPassword</name>
    <value>root</value>
</property>
<!--指定DB连接引擎:-->
<property>
    <name>javax.jdo.option.ConnectionDriverName</name>
    <value>com.mysql.jdbc.Driver</value>
</property>
<!---->
<property>
    <name>datanucleus.schema.autoCreateAll</name>
    <value>true</value>
</property>
<!---->
<property>
    <name>hive.metastore.schema.verification</name>
    <value>false</value>
</property>
</configuration>

8.2 Copy the mysql connection jar package to hive/lib
8.3-Initialize hive meta information to the mysql database (you need to create the hive database in the mysql database)

$>schematool -dbType mysql -initSchema 

9. Start hive (make sure to start start-dfs.sh start-yarn.sh before execution)
1. hive
Insert picture description here

2.hive version
Insert picture description here

3.webUI:
Insert picture description here

4. Local mysql database (in order to avoid unnecessary errors, local mysql is recommended to use 5.5.x and 64-bit)
Insert picture description here

5. Successful installation

Guess you like

Origin blog.csdn.net/weixin_44703894/article/details/114451517