700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > Zookeeper+Hadoop+Hbase+Hive+Kylin+Nginx集群搭建五(Hive篇)

Zookeeper+Hadoop+Hbase+Hive+Kylin+Nginx集群搭建五(Hive篇)

时间:2021-01-26 03:48:52

相关推荐

Zookeeper+Hadoop+Hbase+Hive+Kylin+Nginx集群搭建五(Hive篇)

Zookeeper+Hadoop+Hbase+Hive+Kylin+Nginx集群搭建五(Hive篇)

七、Hive安装配置1.准备工作2.安装hive

全文请看:/tktttt/article/details/108578804

大数据集群搭建安装包:/download/tktttt/12879318

大数据集群搭建安装包2:/download/tktttt/12879355

七、Hive安装配置

1.准备工作

在前文基础上,继续安装MySQL

数据库包下载:官网地址

下载rpm类型安装包(注意版本选择),例如本文选择的:

mysql-community-common-5.7.31-1.el7.x86_64.rpm

mysql-community-libs-5.7.31-1.el7.x86_64.rpm

mysql-community-client-5.7.31-1.el7.x86_64.rpm

mysql-community-server-5.7.31-1.el7.x86_64.rpm

MySQL下载安装可以参考此处:MySQL下载参考

卸载系统自带的mariadb-lib:

查看mariadb版本

rpm -qa|grep mariadb

卸载mariadb(改成自身的实际版本)

rpm -e mariadb-libs-5.5.65-2.el7.x86_64 --nodeps

安装MySQL:

mysql有依赖关系,安装顺序是 common、lib、client、server:

rpm -ivh mysql-community-common-5.7.31-1.el7.x86_64.rpmrpm -ivh mysql-community-libs-5.7.31-1.el7.x86_64.rpmrpm -ivh mysql-community-client-5.7.31-1.el7.x86_64.rpmrpm -ivh mysql-community-server-5.7.31-1.el7.x86_64.rpm

安装完成后,启动mysql:systemctl start mysqld

设置:

查看安装时自动设置的初始密码:位置应该在/var/log/mysqld.log

之后通过初始密码登录MySQL:mysql -uroot -p初始密码

登录成功后会要求修改密码,按要求进行即可(此时要按其默认规则来),而为了设置简单的密码,如123456,之后要进行权限更改(可以查看下文参考链接),然后再修改密码为123456:

set password for root@localhost = password('123456'); // 设置root密码为123456;

此后再设置授权打开远程连接update user set host = '%' where user ='root'; //配置可远程登录

刷新授权flush privileges; //更新权限

之后重启MySQL服务systemctl restart mysqld

设置自启(可以不设置)systemctl enable mysqld

MySQL安装设置可以参考此处:MySQL设置参考

2.安装hive

到官网下载相应适配版本的hive安装包,本文选择的是:apache-hive-2.3.7-bin.tar.gz

上传到/usrlocal/hive目录下(自行创建的目录),之后解压:

tar -zxvf apache-hive-2.3.7-bin.tar.gz

配置环境变量

vi /etc/profile

#hiveexport HIVE_HOME=/usr/local/hive/apache-hive-2.3.7-binexport PATH=$PATH:$HIVE_HOME/bin #在path后添加即可

使之生效:source /etc/profile

配置完成可输入hive --version查看版本

配置hive:

修改hive-env.sh文件

切换到/usr/local/hive/apache-hive-2.3.7-bin/conf目录下,若没有hive-env.sh,复制hive-env.sh.template 为 hive-env.sh:

cp hive-env.sh.template hive-env.sh #复制vi hive-env.sh #打开编辑

修改或添加:

HADOOP_HOME=/usr/local/hadoop/hadoop-2.7.4 #hadoop路径export HIVE_CONF_DIR=/usr/local/hive/apache-hive-2.3.7-bin/conf #hive的conf路径export HIVE_AUX_JARS_PATH=/usr/local/hive/apache-hive-2.3.7-bin/lib #hive的jar包路径export JAVA_HOME=/usr/local/java/jdk1.8.0_261 #jdk安装路径

配置hive-site.xml

同目录下,初次解压发现hive-site.xml配置文件并没有,此时需要我们自己创建并配置hive-site.xml,复制hive-default.xml.template 为 hive-site.xml:

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

编辑该文件vi hive-site.xml,加入下述内容:

<property><name>hive.metastore.warehouse.dir</name><value>/opt/hive/warehouse</value></property><property><name>hive.metastore.local</name><value>true</value></property><!-- 元数据库的链接地址 mysql --><!-- 如果是远程mysql数据库的话需要在这里写入远程的IP或hosts --><!--配置mysql连接,如果没有hive_db库则新建--><property><name>javax.jdo.option.ConnectionURL</name><value>jdbc:mysql://192.168.88.129:3306/hive_db?createDatabaseIfNotExist=true</value> //数据库所在主机的IP</property><!--配置jdbc驱动--><property><name>javax.jdo.option.ConnectionDriverName</name><value>com.mysql.jdbc.Driver</value></property><!--mysql用户名root--><property><name>javax.jdo.option.ConnectionUserName</name><value>root</value></property><!--配置mysql密码--><property><name>javax.jdo.option.ConnectionPassword</name><value>123456</value></property>

并搜索上述的每一项,将文件原有的每一项删除或者注释;

搜索derby,将含有该词的每一项都注释或者删除,注释里有的不算;

然后将配置文件中所有的${system:java.io.tmpdir}更改为/usr/hive/tmp(如果没有该文件则创建),并将此文件夹赋予读写权限,将${system:user.name}更改为 实际用户root;

其他${...}也适当删改;

保存退出

复制hive-exec-log4j2.properties.template 为 hive-exec-log4j2.properties

cp hive-exec-log4j2.properties.template hive-exec-log4j2.properties

复制hive-log4j2.properties.template为hive-log4j2.properties

cp hive-log4j2.properties.template hive-log4j2.properties

下载mysql驱动(本文为mysql-connector-java-5.1.49-bin.jar)放入/usr/local/hive/apache-hive-2.3.7-bin/lib包中

初始化(第一次启动):

schematool -initSchema -dbType mysql

若最后有下面字样,则说明成功:

schemaTool completed

且查看MySQL数据库,可以发现其中创建了hive_db

启动:

要求:前面均已按六、启动hbase步骤启动了所有

hive

启动顺序:

#zookeeper#bin目录下./zkServer.sh start#hadoophadoop-daemon.sh start journalnodestart-all.sh(即:start-dfs.sh start-yarn.sh)#hbase#bin目录下 ./start-hbase.sh#hivehivenohup hiveserver2 2>/usr/data/hive/log/hiveserver2/hiveserver.err &nohup hive --service metastore 2>/usr/data/hive/log/metastore/metastore.err &nohup hiveserver2 >/usr/data/hive/log/hiveserver2/hiveserver.log &nohup hive --service metastore >/usr/data/hive/log/metastore/metastore.log &

关闭顺序:

#hivejps命令找到Runjar进程kill掉或ps -ef | grep hivekill -9 进程 #杀掉#hbase#bin目录下./stop-hbase.sh#hadoophadoop-daemon.sh stop journalnodestop-all.sh#zookeeper#bin目录下./zkServer.sh stop

测试hive:

hive #启动进入hiveshow databases; #展示所有数据库create database test_hive;#创建test_hive数据库show databases; #展示所有数据库use test_hive; #使用数据库test_hiveshow tables;#展示当前该数据库下所有数据表create table test_users(id int,name string); #创建test_users数据表show tables;#展示当前该数据库下所有数据表insert into test_users values(1,"aaa"); #插入数据select * from test_users; #查询test_users表所有数据

若是执行语句时,卡住不动,可以将所有服务停止,然后在Hadoop安装目录下的etc/hadoop目录下,修改yarn-site.xml,添加如下内容应当会有所缓解:

<property><name>yarn.scheduler.maximum-allocation-mb</name><value>2000</value></property><property><name>yarn.nodemanager.resource.memory-mb</name><value>2000</value></property><property><name>yarn.nodemanager.aux-services</name><value>mapreduce_shuffle</value></property>

之后依次重新启动服务,其中Hadoop最好是删除原有的重新格式化启动

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。