hdp2.5自带的phoenix是4.7的,而客户的驾驶舱项目跑在4.7的phoenix上是有问题的,如:如果表中没有数据,执行select count(*) from 表,返回的是空,这时导致驾驶舱项目报错误。所以决定升级phoenix版本为4.8,过程如下

1、在ambari中关闭Hbase、Ambari Metrics

2、备份原来的phoenix

mv phoenix phoenixbak

3、上传phoenix安装包apache-phoenix-4.8.2-HBase-1.2-bin.tar

4、解压tar -zxvf apache-phoenix-4.8.2-HBase-1.2-bin.tar.gz

5、删除apache-phoenix-4.8.2-HBase-1.2-bin.tar.gz

rm -rf apache-phoenix-4.8.2-HBase-1.2-bin.tar.gz

6、修改apache-phoenix-4.8.2-HBase-1.2-bin目录名为phoenix

mv apache-phoenix-4.8.2-HBase-1.2-bin/ phoenix

7、修改phoenix目录的所有人、所有组为root:root

chown -R root:root phoenix

8、进入phoenix目录,创建doc目录,并将example目录移动到doc目录下

cd phoenix

mkdir doc

mv examples/ doc/

9、创建phoenix-pherf目录,并将bin/config目录移动到phoenix-pherf目录下

mkdir phoenix-pherf

mv bin/config/ phoenix-pherf

10、复制phoenixbak/lib目录到当前目录

cp -r ../phoenixbak/lib/ .

11、进到lib目录下,删除以phoenix开头的jar包

cd lib/

rm -rf phoenix-*.jar

12、将上级目录的以phoenix-core开头的jar包拷贝到当前目录

cp ../phoenix-core-4.8.2-HBase-1.2*.jar .

13、将上级目录的以phoenix-flume开头的jar包拷贝到当前目录

cp ../phoenix-flume-4.8.2-HBase-1.2*.jar .

14、将上级目录以phoenix-hive开头的jar包拷贝到当前目录

cp ../phoenix-hive-4.8.2-HBase-1.2*.jar .

15、将上级目录以phoenix-pherf-4.8.2-HBase-1.1开头的jar包拷贝到当前目录

cp ../phoenix-pherf-4.8.2-HBase-1.2*.jar .

16、将上级目录以phoenix-pig开头的jar包拷贝到当前目录

cp ../phoenix-pig-4.8.2-HBase-1.2*.jar .

17、将上级目录以phoenix-queryserver-开头的jar包拷贝到当前目录

cp ../phoenix-queryserver-*.jar .

18、将上级目录以phoenix-spark开头的jar包拷贝到当前目录

cp ../phoenix-spark-4.8.2-HBase-1.2*.jar .

19、为phoenix/bin目录下所有py文件增加执行权限

chmod +x *.py

20、修改queryserver.py文件内容

将%s-queryserver 改为phoenix-%s-server,如下

21、返回上级,执行如下代码

rm -rf phoenix-core-4.8.2-HBase-1.2*.jar

rm -rf phoenix-flume-4.8.2-HBase-1.2*.jar

rm -rf phoenix-hive-4.8.2-HBase-1.2*.jar

rm -rf phoenix-pherf-4.8.2-HBase-1.2*.jar

rm -rf phoenix-pig-4.8.2-HBase-1.2*.jar

rm -rf phoenix-queryserver-*.jar

rm -rf phoenix-spark-4.8.2-HBase-1.2*.jar

执行后,效果如下

22、备份所有节点上的phoenix

23、将修改后的/usr/hdp/2.5.0.0-1245/phoenix拷贝到其他所有节点中/usr/hdp/2.5.0.0-1245目录下

24、在安装Metrics Collector节点上替换/usr/lib/ams-hbase/lib下的phoenix包

cd /usr/lib/ams-hbase/lib

rm -rf phoenix-*.jar

拷贝

cp /usr/hdp/2.5.0.0-1245/phoenix/lib/phoenix-core-4.8.2-HBase-1.2.jar .

cp /usr/hdp/2.5.0.0-1245/phoenix/phoenix-4.8.2-HBase-1.2-server.jar .

25、在安装Metrics Collector节点上替换/usr/lib/ambari-metrics-collector下的phoenix包

cd /usr/lib/ambari-metrics-collector

rm -rf phoenix-*.jar

拷贝

cp /usr/hdp/2.5.0.0-1245/phoenix/lib/phoenix-core-4.8.2-HBase-1.2.jar .

cp /usr/hdp/2.5.0.0-1245/phoenix/phoenix-4.8.2-HBase-1.2-server.jar .

26、在替换phoenix的每个节点的/usr/hdp/2.5.0.0-1245/phoenix中,创建软件连接

cd /usr/hdp/2.5.0.0-1245/phoenix

ln -s phoenix-4.8.2-HBase-1.2-client.jar phoenix-client.jar

ln -s phoenix-4.8.2-HBase-1.2-hive.jar phoenix-hive.jar

ln -s phoenix-4.8.2-HBase-1.2-pig.jar phoenix-pig.jar

ln -s phoenix-4.8.2-HBase-1.2-server.jar phoenix-server.jar

ln -s phoenix-4.8.2-HBase-1.2-thin-client.jar phoenix-thin-client.jar

27、启动Hbase、Ambari Metrics

28、通过shell访问(phoenix-sqlline localhost:2181:/hbase-unsecure)

如果,您认为阅读这篇博客让您有些收获,不妨点击一下右下角的【推荐】。

如果,您希望更容易地发现我的新博客,不妨点击一下左下角的【关注我】。

如果,您对我的博客所讲述的内容有兴趣,请继续关注我的后续博客,我是【刘超★ljc】。

本文版权归作者,禁止转载,否则保留追究法律责任的权利。

基于hdp2.5升级phoenix版本为4.8的更多相关文章

  1. CentOS 5升级Python版本(2.4>2.7)

    安装SALT时,需要这样作,公司有一批REDHAT5的,弄起来... 然后却是: Missing Dependency: python(abi) = 2.6 is needed by package ...

  2. SpringBoot之整合Redis分析和实现-基于Spring Boot2.0.2版本

    背景介绍 公司最近的新项目在进行技术框架升级,基于的Spring Boot的版本是2.0.2,整合Redis数据库.网上基于2.X版本的整个Redis少之又少,中间踩了不少坑,特此把整合过程记录,以供 ...

  3. CENTOS 7 升级内核版本(附带升级脚本)

    写在前面的话 对于系统而言,除非是那种安全性要求非常高的公司或者经常会有第三方安全机构对其漏洞扫描的才容易涉及到系统的内核升级,比如之前呆过一个公司,因为需要做三级等保的原因,就会涉及到系统扫描,这时 ...

  4. [linux]centos7.4上升级python2版本到python3.6.5 【安装双版本,默认python3】

    版本声明 centos7.4 前言:linux上的python默认是版本2的,之前学django项目用的是3的版本 所以得升级下版本~ 1.下载python3.6.5 cd /usr/local/ w ...

  5. 非关系型数据库来了,CRL快速开发框架升级到版本4

    轮子?,我很任性,我要造不一样的轮子,同时支持关系型和非关系型的框架有没有 新版数据查询作了些调整,抽象了LabmdaQueryy和DBExtend,升级到版本4,非关系数据库MongoDB被支持了! ...

  6. ubuntu下升级R版本

    ubuntu下升级R版本   在测试<机器学习 实用案例解析>一书的邮件分类代码时,windows系统下rstudio中无法读取特殊字符,在ubuntu下可以.在ubuntu虚拟机下安装t ...

  7. Mac中使用port升级gcc版本

    Mac OS中的gcc版本可能不会满足实际使用要求,需要对其升级. 这里介绍使用port方式来升级gcc版本.Macports是Mac OS中的软件包管理工具. 首先,安装Macports 这里提供O ...

  8. 如何升级Ceph版本及注意事项

    升级软件版本在日常运维中是一个常见操作. 本文分享一下Ceph版本升级的一些经验. 一般升级流程和注意如下: 1.  关注社区Release notes 和 ceph-user邮件订阅列表,获取社区发 ...

  9. Windows2000安装Winform Clickonce提示升级系统版本的解决方案

    Windows2000安装Winform Clickonce提示升级系统版本.只需要把所有应用的DLL的独立性设置为false就可以了.

随机推荐

  1. Python面向对象编程(二)

    1.继承与派生 上文我们已经说过,Python中一切皆对象.我们从对象中抽取了共同特征和技能,得到了类的概念.类与类之间也有共同特征,我们可以从有共同特征和技能的类中提取共同的技能和特征,叫做父类. ...

  2. vs2015数据驱动的单元测试

    今天在做测试的时候boss让我这个菜鸟做vs2015下c#的单元测试,并且给了我参考http://www.cnblogs.com/kingmoon/archive/2011/05/13/2045278 ...

  3. Java 枚举7常见种用法(转)

    JDK1.5引入了新的类型——枚举.在 Java 中它虽然算个“小”功能,却给我的开发带来了“大”方便. 用法一:常量 在JDK1.5 之前,我们定义常量都是: public static fianl ...

  4. MySQL学习笔记(二):MySQL数据类型汇总及选择参考

    本文主要介绍了MySQL 的常用数据类型,以及实际应用时如何选择合适的类型.  ******几个通用的简单原则:******* 1. 更小的通常更好.但是要确保没有低估需要存储的值的范围,如果无法确定 ...

  5. C#导入导出Excele数据

    注:对于实体类对象最好新建一个并且继承原有实体类,这样可以将类型进行修改: 方法一:此种方法是用EPPLUS中的FileInfo流进行读取的(是不是流我还真不太了解,若有懂得请留言,非常感谢了) us ...

  6. Ztree _ 横向显示子节点、点击文字勾选、去除指定元素input的勾选状态

    前些天项目需要树结构表现数据,需求ztree就能满足所以直接使用ztree只是踩了些小坑... 1.ztree子节点横向显示(下图): 效果说明:第三级子节点按需求横向显示其他竖向显示,每行最多显示5 ...

  7. 关于第一次STM32连接电脑下载程序

    安装了Keil(ARM)版本之后,不管是自己编程,还是配套的程序运行.我们都想把它下载到STM32芯片里面,在板子上运行.这里介绍几种方法. 1.用J-LINK下载调试. 这个工具,可以直接点击kei ...

  8. Jquery-全选和取消的一个坑

    在做一个商城的购物车的时候遇到了一个坑, 购物车一般都有全选按钮, 再次点击就会全部消除, 在网上查到的答案全部都是使用attr来做的, 无一例外都不能用, 之后才知道要使用jquery的prop和r ...

  9. 表达式求值(栈方法/C++语言描述)(一)

    一个算数表达式(以下简称为表达式)由运算数.运算符.左括号和右括号组成,定义一个枚举类型TokenType表示为: typedef enum { BEGIN, NUMBER, OPERATOR, LE ...

  10. 为什么是Spring Boot

    原文:https://dzone.com/articles/why-springboot 作者:Siva Prasad Reddy Katamreddy 译者:Oopsguy 本文介绍将各种Sprin ...