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. Angular02 将数据添加到组件中

    准备:已经搭建好angular-cli环境.知道如何创建组件 一.将一个数据添加到组件中 1 创建一个新的组件 user-item 2 将组件添加到静态模板中 3 为组件添加属性,并利用构造器赋值 4 ...

  2. (转)Linux系统安装时分区的选择

    场景:对于Linux系统的分区总是迷迷茫茫的,还是实践少,基础不牢. 以前初识Linux时,对Linux系统安装时分区的选择,一点都不了解,导致几次没法进行下一步安装,因此就静下心来,专门拿出时间研究 ...

  3. HDOJ2008-数值统计

    Problem Description 统计给定的n个数中,负数.零和正数的个数.   Input 输入数据有多组,每组占一行,每行的第一个数是整数n(n<100),表示需要统计的数值的个数,然 ...

  4. OVS故障处理一例

    OVS下无法访问内部网站 遇到朋友求助的一个客户问题,环境是这样的,客户在自己的iaas平台(不是openstack)上使用ovs,物理交换机上配置vlan和dhcp service,计算节点的ovs ...

  5. Redis-消息发布与订阅

    redis的消息发布与订阅适合做在线聊天, 消息推送 使用方法: 发布端: publish +频道名称 + 发布内容 订阅端: subscribe + 频道名称 发布端例子: 127.0.0.1:63 ...

  6. Handler实现线程之间的通信-下载文件动态更新进度条

    1. 原理 每一个线程对应一个消息队列MessageQueue,实现线程之间的通信,可通过Handler对象将数据装进Message中,再将消息加入消息队列,而后线程会依次处理消息队列中的消息. 2. ...

  7. ASP.NET Core MVC – Form Tag Helpers

    ASP.NET Core Tag Helpers系列目录 ASP.NET Core MVC Tag Helpers 介绍 ASP.NET Core MVC – Caching Tag Helpers ...

  8. C# Process.Start()

    本文转自:http://webcache.googleusercontent.com/search?q=cache:v4Sh6GlfJPYJ:blog.csdn.net/czw2010/article ...

  9. 【数学】HPU--1037 一个简单的数学题

    1037: 一个简单的数学题 [数学] 时间限制: 1 Sec 内存限制: 128 MB提交: 259 解决: 41 统计 题目描述 小明想要知道$a^b$的值,但是这个值会非常的大. 所以退而求其次 ...

  10. 如何在MySQL中设置外键约束以及外键的作用

    1.外键的作用,主要有两个:     一个是让数据库自己通过外键来保证数据的完整性和一致性     一个就是能够增加ER图的可读性 2.外键的配置 1)先创建一个主表,代码如下: #创建表studen ...