本地搭建hadoop集群-hive多节点访问(hive2.3.3)

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/qq_18730505/article/details/81202936

一、思路
1.安装hadoop集群。我这里使用的是自己编译的2.7.6

2.元数据使用mysql作为技术支撑

3.配置hive参数分发至各个节点

4.hive服务端启动

5.各个节点hive客户端访问

二、mysql的安装

rpm -q mysql-server //检查是否安装mysql

yum install -y mysql-server //yum安装

service mysqld start //启动mysql 

chkconfig mysqld on //开机启动mysql

 # mysql -uroot //进入mysql

mysql>create database if not exists hive_metadata;

mysql>grant all privileges on hive_metadata.* to 'root'@'master' identified by '123456';

mysql>grant all privileges on hive_metadata.* to 'root'@'slave1' identified by '123456';

mysql>grant all privileges on hive_metadata.* to 'root'@'slave2' identified by '123456';

mysql>grant all privileges on hive_metadata.* to 'root'@'slave3' identified by '123456';

mysql>flush privileges; //刷盘生效

mysql>quit;//退出

# yum install -y mysql-connector-java //安装mysql-connector-java

# cp /usr/share/java/mysql-connector-java-5.1.17.jar /opt/module/apache-hive-2.3.3-bin/lib //将mysql connector拷贝到hive的lib包中

三、配置hive 

# cd /opt/module/apache-hive-2.3.3-bin/conf

# cp -a hive-default.xml.template  hive-site.xml

# vim hive-site.xml

搜索以下参数修改

端口默认3306  

<property>

<name>javax.jdo.option.ConnectionURL</name>

<value>jdbc:mysql://master:3306/hive_metadata?createDatabaseIfNotExist=true </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>

<property>

<name>hive.metastore.uris</name>

<value>thrift://master:9083</value>

</property>

<property>

<name>hive.metastore.local</name>

<value>false</value>

</property>

<property>

<name>datanucleus.schema.autoCreateAll</name>

<value>true</value>

</property>

cp -a hive-env.sh.template hive-env.sh

vim hive-env.sh

/etc/profile 这个文件 记得配置一下 hive_home 环境变量

启动hadoop集群

hadoop fs -mkdir /tmp

hadoop fs -mkdir /user/hive/warehouse

hadoop fs -chmod -R 777 /tmp

hadoop fs -chmod -R 777 /user 

三、分发配置

像hadoop一样分发配置

所有机器 都在同一目录下

scp hive 这个目录  到所有 奴隶机 的目录

分发完 hive文件

分发配置文件

各个机器 source 使配置生效

四、初始化元数据

在其中一台机器上执行(我选择 当时 安装mysql 以及 hive 的机器。并非分发的奴隶机)

schematool -initSchema -dbType mysql

等待初始化完成

hive --service metastore & //后台运行 

五、运行hive

在其他任意节点上 输入hive 

hive>show databases;

创建 create database  test;

在 另一个机器上 输入hive 

查看刚刚建的数据库是否存在

猜你喜欢

转载自blog.csdn.net/qq_18730505/article/details/81202936
今日推荐