Apache版Phoenix的安装(图文详解)
不多说,直接上干货!
写在前面的话
我这里,三个节点的bigdata集群。分别为master、slave1和slave2。
1、Phoenix的下载
我的HBase版本是hbase-0.98.19。
下载地址:
http://mirror.bit.edu.cn/apache/phoenix/ 或者 http://apache.fayea.com/phoenix/
注意:(hbase的版本一定要与phoenix的版本保持一致,否则运行报错,hbase-0.99没有相关的版本下载)
前提是是我们的 Hadoop 集群,zookeeper,Hbase 都安装成功。
然后,自行去找自己相应的版本。
或者(我这里,选择这个版本)
或者,大家,也可以安装下面的这个版本
最新下载的Phoenix文件名中都会标明对应的HBase版本 例: apache-phoenix-4.10.0-HBase-0.98-bin.tar.gz
2、上传压缩包
将apache-phoenix-4.10.0-HBase-0.98-bin.tar.gz 上传hbase集群的其中一个服务器的一个目录下。(我建议放在master节点上)。
或者我们可以单独选择一台服务器作为 Client 客户端安装 Phoenix,然后将安装包 。
我这里选择在master上。
我上传的目录为/home/hadoop/app。
3、解压缩文件
[hadoop@master app]$ tar -zxvf apache-phoenix-4.10.-HBase-0.98-bin.tar.gz
[hadoop@master app]$ rm apache-phoenix-4.10.-HBase-0.98-bin.tar.gz
[hadoop@master app]$ ln -s apache-phoenix-4.10.-HBase-0.98-bin/ phoenix
... ...
[hadoop@master app]$ ll
lrwxrwxrwx hadoop hadoop Jul : phoenix -> apache-phoenix-4.10.-HBase-0.98-bin/
然后进入 Phoenix 目录可以看到所有目录结构
[hadoop@master apache-phoenix-4.10.-HBase-0.98-bin]$ pwd
/home/hadoop/app/apache-phoenix-4.10.-HBase-0.98-bin
[hadoop@master apache-phoenix-4.10.-HBase-0.98-bin]$ ls
bin phoenix-flume-4.10.-HBase-0.98-tests.jar phoenix-queryserver-4.10.-HBase-0.98.jar
examples phoenix-hive-4.10.-HBase-0.98.jar phoenix-queryserver-4.10.-HBase-0.98-sources.jar
LICENSE phoenix-hive-4.10.-HBase-0.98-sources.jar phoenix-queryserver-4.10.-HBase-0.98-tests.jar
NOTICE phoenix-hive-4.10.-HBase-0.98-tests.jar phoenix-queryserver-client-4.10.-HBase-0.98.jar
phoenix-4.10.-HBase-0.98-client.jar phoenix-kafka-4.10.-HBase-0.98.jar phoenix-queryserver-client-4.10.-HBase-0.98-sources.jar
phoenix-4.10.-HBase-0.98-hive.jar phoenix-kafka-4.10.-HBase-0.98-minimal.jar phoenix-queryserver-client-4.10.-HBase-0.98-tests.jar
phoenix-4.10.-HBase-0.98-pig.jar phoenix-kafka-4.10.-HBase-0.98-sources.jar phoenix-spark-4.10.-HBase-0.98.jar
phoenix-4.10.-HBase-0.98-queryserver.jar phoenix-kafka-4.10.-HBase-0.98-tests.jar phoenix-spark-4.10.-HBase-0.98-sources.jar
phoenix-4.10.-HBase-0.98-server.jar phoenix-pherf-4.10.-HBase-0.98.jar phoenix-spark-4.10.-HBase-0.98-tests.jar
phoenix-4.10.-HBase-0.98-thin-client.jar phoenix-pherf-4.10.-HBase-0.98-minimal.jar phoenix-tracing-webapp-4.10.-HBase-0.98.jar
phoenix-core-4.10.-HBase-0.98.jar phoenix-pherf-4.10.-HBase-0.98-sources.jar phoenix-tracing-webapp-4.10.-HBase-0.98-runnable.jar
phoenix-core-4.10.-HBase-0.98-sources.jar phoenix-pherf-4.10.-HBase-0.98-tests.jar phoenix-tracing-webapp-4.10.-HBase-0.98-sources.jar
phoenix-core-4.10.-HBase-0.98-tests.jar phoenix-pig-4.10.-HBase-0.98.jar phoenix-tracing-webapp-4.10.-HBase-0.98-tests.jar
phoenix-flume-4.10.-HBase-0.98.jar phoenix-pig-4.10.-HBase-0.98-sources.jar README
phoenix-flume-4.10.-HBase-0.98-sources.jar phoenix-pig-4.10.-HBase-0.98-tests.jar
[hadoop@master apache-phoenix-4.10.-HBase-0.98-bin]$
配置 Phoenix
1、将 Phoenix 目录下的 phoenix-core-4.10.0-HBase-0.98.jar、phoenix-4.10.0-HBase-0.98-client.jar 拷贝到 hbase 集群各个节点 hbase 安装目录 lib 中。
首先,大家明白为什么这么做。比如,你是有master、slave1和slave2以及client,你是把这个phoenix安装在client里,则此刻。你就需拷贝到master、slave1和slave2上。
而,我这里,是只有master、slave1和slave2,我现在是将phoenix安装在master上,所以,我需拷贝到master、slave1和slave2上即可。
以下是master、slave1和slave2下lib的默认情况
然后
得到
master、slave和slave2上都去做。这里不多赘述了
2、将 hbase 集群中的配置文件 hbase-site.xml 拷贝到 Phoenix 的 bin 目录下,覆盖原有的配置文件。
我这里是,master去做(因为我的phonenix是安装在master上)
以下是 Phoenix安装后bin的默认目录情况
3、将 hdfs 集群中的配置文件 core-site.xml、 hdfs-site.xml 拷贝到 Phoenix 的 bin 目录下。
我这里是,master去做(因为我的phonenix是安装在master上)
以下是 Phoenix的bin的目录情况
得到
为了规范起见,最好配置环境变量
#phoenix
export PHOENIX_HOME=/home/hadoop/app/phoenix
export PHOENIX_CLASSPATH=$PHOENIX_HOME
export PATH=$PATH:$PHOENIX_HOME/bin
因为,我这用的是软连接,所以才是/home/hadoop/app/phoenix
然后,再source下即可。
4、如果 hbase 之前已经在运行,安装完 Phoenix,需要重启 hbase 集群。
见
HBase的多节点集群详细启动步骤(3或5节点)(分为Zookeeper自带还是外装)
同时,修改apache-phoenix-4.10.0-HBase-0.98-bin/bin/下的psql.py和sqlline.py两个文件的权限为777。
5、验证 Phoenix 是否安装成功
命令格式:./sqlline.sh <hbase.zookeeper.quorum>
其中,hbase.zookeeper.quorum 是 HBase 集群的 Zookeeper 队列,对应 IP/Hostname 逗号分割的列表。
在phoenix的安装目录下,输入命令启动
bin/sqlline.py master
[hadoop@master apache-phoenix-4.10.-HBase-0.98-bin]$ pwd
/home/hadoop/app/apache-phoenix-4.10.-HBase-0.98-bin
[hadoop@master apache-phoenix-4.10.-HBase-0.98-bin]$ ls
bin phoenix-flume-4.10.-HBase-0.98-tests.jar phoenix-queryserver-4.10.-HBase-0.98.jar
examples phoenix-hive-4.10.-HBase-0.98.jar phoenix-queryserver-4.10.-HBase-0.98-sources.jar
LICENSE phoenix-hive-4.10.-HBase-0.98-sources.jar phoenix-queryserver-4.10.-HBase-0.98-tests.jar
NOTICE phoenix-hive-4.10.-HBase-0.98-tests.jar phoenix-queryserver-client-4.10.-HBase-0.98.jar
phoenix-4.10.-HBase-0.98-client.jar phoenix-kafka-4.10.-HBase-0.98.jar phoenix-queryserver-client-4.10.-HBase-0.98-sources.jar
phoenix-4.10.-HBase-0.98-hive.jar phoenix-kafka-4.10.-HBase-0.98-minimal.jar phoenix-queryserver-client-4.10.-HBase-0.98-tests.jar
phoenix-4.10.-HBase-0.98-pig.jar phoenix-kafka-4.10.-HBase-0.98-sources.jar phoenix-spark-4.10.-HBase-0.98.jar
phoenix-4.10.-HBase-0.98-queryserver.jar phoenix-kafka-4.10.-HBase-0.98-tests.jar phoenix-spark-4.10.-HBase-0.98-sources.jar
phoenix-4.10.-HBase-0.98-server.jar phoenix-pherf-4.10.-HBase-0.98.jar phoenix-spark-4.10.-HBase-0.98-tests.jar
phoenix-4.10.-HBase-0.98-thin-client.jar phoenix-pherf-4.10.-HBase-0.98-minimal.jar phoenix-tracing-webapp-4.10.-HBase-0.98.jar
phoenix-core-4.10.-HBase-0.98.jar phoenix-pherf-4.10.-HBase-0.98-sources.jar phoenix-tracing-webapp-4.10.-HBase-0.98-runnable.jar
phoenix-core-4.10.-HBase-0.98-sources.jar phoenix-pherf-4.10.-HBase-0.98-tests.jar phoenix-tracing-webapp-4.10.-HBase-0.98-sources.jar
phoenix-core-4.10.-HBase-0.98-tests.jar phoenix-pig-4.10.-HBase-0.98.jar phoenix-tracing-webapp-4.10.-HBase-0.98-tests.jar
phoenix-flume-4.10.-HBase-0.98.jar phoenix-pig-4.10.-HBase-0.98-sources.jar README
phoenix-flume-4.10.-HBase-0.98-sources.jar phoenix-pig-4.10.-HBase-0.98-tests.jar
[hadoop@master apache-phoenix-4.10.-HBase-0.98-bin]$ bin/sqlline.py master
当然,大家也可以跟我这样,做个软连接。
如果大家这里,遇到这个问题
Traceback (most recent call last):
File "./sqlline.py", line , in <module>
import argparse
ImportError: No module named argparse
则,解决办法
安装Phoenix时./sqlline.py执行报错File "./sqlline.py", line 27, in <module> import argparse ImportError: No module named argparse解决办法(图文详解)
这里,建议搭建,你若如跟我一样(master、slave1和slave2)集群的话,zookeeper也是都安装在master、slave1和slave2上,则
使用 sqlline.py 脚本来启动,参数是 zookeeper 集群中各个节点的 hostname ,多个使用逗号隔开,另外端口为 2181
[hadoop@master apache-phoenix-4.8.-HBase-0.98-bin]$ pwd
/home/hadoop/app/apache-phoenix-4.8.-HBase-0.98-bin
[hadoop@master apache-phoenix-4.8.-HBase-0.98-bin]$ bin/sqlline.py master,slave1,slave2:
Setting property: [incremental, false]
Setting property: [isolation, TRANSACTION_READ_COMMITTED]
issuing: !connect jdbc:phoenix:master,slave1,slave2: none none org.apache.phoenix.jdbc.PhoenixDriver
Connecting to jdbc:phoenix:master,slave1,slave2:
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/home/hadoop/app/apache-phoenix-4.8.-HBase-0.98-bin/phoenix-4.8.-HBase-0.98-client.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/home/hadoop/app/hadoop-2.6./share/hadoop/common/lib/slf4j-log4j12-1.7..jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
// :: WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable
Connected to: Phoenix (version 4.8)
Driver: PhoenixEmbeddedDriver (version 4.8)
Autocommit status: true
Transaction isolation: TRANSACTION_READ_COMMITTED
Building list of tables and columns for tab-completion (set fastconnect to true to skip)...
/ (%) Done
Done
sqlline version 1.1.
: jdbc:phoenix:master,slave1,slave2:>
如果出现上面的结果,说明 Phoenix 安装成功。
6、 罗列所有表
在客户端执行!tables 命令,罗列所有表到客户端界面
: jdbc:phoenix:master,slave1,slave2:> !tables
+------------+--------------+-------------+---------------+----------+------------+----------------------------+-----------------+--------------+-----------------+---------------+-----------+
| TABLE_CAT | TABLE_SCHEM | TABLE_NAME | TABLE_TYPE | REMARKS | TYPE_NAME | SELF_REFERENCING_COL_NAME | REF_GENERATION | INDEX_STATE | IMMUTABLE_ROWS | SALT_BUCKETS | MULTI_TEN |
+------------+--------------+-------------+---------------+----------+------------+----------------------------+-----------------+--------------+-----------------+---------------+-----------+
| | SYSTEM | CATALOG | SYSTEM TABLE | | | | | | false | null | false |
| | SYSTEM | FUNCTION | SYSTEM TABLE | | | | | | false | null | false |
| | SYSTEM | SEQUENCE | SYSTEM TABLE | | | | | | false | null | false |
| | SYSTEM | STATS | SYSTEM TABLE | | | | | | false | null | false |
+------------+--------------+-------------+---------------+----------+------------+----------------------------+-----------------+--------------+-----------------+---------------+-----------+
: jdbc:phoenix:master,slave1,slave2:>
注意: 通过该客户端展示出来的表都是通过 Phoenix 客户端创建的,通过其他方式创建的表在此处不显示。
若要退出,则
Phoenix早期版本如(2.11版本)需输入!quilt才可退出,目前高版本已改为!exit命令
0: jdbc:phoenix:master> !exit
Closing: org.apache.phoenix.jdbc.PhoenixConnection
[hadoop@master apache-phoenix-4.8.2-HBase-0.98-bin]$
参考博客
HBase 4、Phoenix安装和Squirrel安装
phoenix-4.8.1-HBase-1.2安装(详细图文)
同时,大家可以关注我的个人博客:
http://www.cnblogs.com/zlslch/ 和 http://www.cnblogs.com/lchzls/
人生苦短,我愿分享。本公众号将秉持活到老学到老学习无休止的交流分享开源精神,汇聚于互联网和个人学习工作的精华干货知识,一切来于互联网,反馈回互联网。
目前研究领域:大数据、机器学习、深度学习、人工智能、数据挖掘、数据分析。 语言涉及:Java、Scala、Python、Shell、Linux等 。同时还涉及平常所使用的手机、电脑和互联网上的使用技巧、问题和实用软件。 只要你一直关注和呆在群里,每天必须有收获
以及对应本平台的QQ群:161156071(大数据躺过的坑)
Apache版Phoenix的安装(图文详解)的更多相关文章
- VMware里Ubuntukylin-14.04-desktop的VMware Tools安装图文详解
不多说,直接上干货! 总的来说,根据分为三个步骤. 步骤一: 点击 :虚拟机—–>安装VM tools 然后发现桌面会跳出如下问题: 客户机操作系统已将 CD-ROM 门锁定,并且可能正在使用 ...
- VMware里Ubuntu-14.04-desktop的VMware Tools安装图文详解
不多说,直接上干货! 前期步骤,请见如下 VMware里Ubuntukylin-14.04-desktop的VMware Tools安装图文详解 我这里,直接,是来说明,Ubuntu-14.04 ...
- VMware里Ubuntu-16.04-desktop的VMware Tools安装图文详解
不多说,直接上干货! 总的来说,根据分为三个步骤. 步骤一: 点击 :虚拟机—–>安装VM tools 然后发现桌面会跳出如下问题: 客户机操作系统已将 CD-ROM 门锁定,并且可能正在使用 ...
- 反射实现Model修改前后的内容对比 【API调用】腾讯云短信 Windows操作系统下Redis服务安装图文详解 Redis入门学习
反射实现Model修改前后的内容对比 在开发过程中,我们会遇到这样一个问题,编辑了一个对象之后,我们想要把这个对象修改了哪些内容保存下来,以便将来查看和追责. 首先我们要创建一个User类 1 p ...
- Oracle11g R2客户端安装图文详解过程
转: Oracle11g R2客户端安装图文详解过程 2018-06-17 13:30:26 大话JAVA的那些事 阅读数 4129更多 分类专栏: Oracle 版权声明:本文为博主原创文章,遵 ...
- mac上python3.x安装 图文详解
mac安装brew报错及解决办法 https://blog.csdn.net/zdp072/article/details/82563320 更改脚本中的资源链接,替换成中国科学技术大学的镜像 htt ...
- mysql-8.0.15-winx64 解压版安装 图文详解
1.官网下载 https://dev.mysql.com/downloads/mysql/ 2.解压到合适的目录 3.配置环境变量 ①. path ②.MYSQL_HOME 4.新建一个my.ini ...
- Ubuntu14.04下编译安装或apt-get方式安装搭建Apache或Httpd服务(图文详解)
不多说,直接上干货! 写在前面的话 对于 在Ubuntu系统上,编译安装Apache它默认路径是在/usr/local/apache2/htdocs 或者编译安装httpd它默认路径是在/usr/lo ...
- SQL server 2008 r2 安装图文详解
文末有官网下载地址.百度网盘下载地址和产品序列号以及密钥,中间需要用到密钥和序列号的可以到文末找选择网盘下载的下载解压后是镜像文件,还需要解压一次直接右键点击解如图所示选项,官网下载安装包的可以跳过前 ...
随机推荐
- FastDFS简易概括
FastDFS是一个文件系统,可以部署在Linux上. 该文件系统具备高可用和负载均衡特性,还可以动态扩充容量. 此文件系统有两个服务组成:跟踪服务和存储服务,也就是说你必须部署了这两种服务,这个文件 ...
- Android自定义控件-折线图
好长时间没有更新博客了,终于可以抽出时间写点东西了,写点什么呢?最近在qq群里边有人问,下边的这个控件怎么画?如下图所示:图可以左右拖动,直到显示完全为止.刚开始看到这个效果图,我也想了一下总共分为以 ...
- 基于SSM + Redis的Shiro权限管理项目
概述 本教程结合SSM(SpringMVC + Mybatis)框架讲解Shiro,讲解的内容有自定义shiro拦截器,Shiro Freemarker标签,Shiro JSP标签,权限控制讲解. 详 ...
- 每秒处理3百万请求的Web集群搭建-为最佳性能调优 Nginx
这篇文章是<打造3百万次请求/秒的高性能服务器集群>系列的第2部分,在这个部分中你可以使用任何一种 WEB 服务器,不过我决定使用 Nginx,因其轻量级.高可靠及高性能的优点. 通常来说 ...
- 面面具到!android重力传感器
前两篇都是向大家介绍了很有意思的两种手势操作,嵌入我们游戏中,不得不说让游戏的自由度.可玩性和趣味性都增色不少!那么今天继续给大家介绍一亮点!传感器! 一:什么是传感器: 所谓传感器能够探测如光.热. ...
- MySQL 添加外键约束,不检查现有数据
这可能是MySQL在InnoDB中设置了foreign key关联,造成无法更新或删除数据.可以通过设置FOREIGN_KEY_CHECKS变量来避免这种情况. SET FOREIGN_KEY_CHE ...
- UVA10624 - Super Number(dfs)
题目:UVA10624 - Super Number(dfs) 题目大意:给你n和m要求找出这种m位数,从第n位到第m位都满足前i位是能够被i整除,假设没有这种数,输出-1.有多个就输出字典序最小的那 ...
- substr.js 字符串切割
substr.js 字符串切割 GitHub 以一个中文字的宽度为一个单位进行字符串切割 substr('南拳的妈妈1992', 4) // => 南拳的妈... substr('imliane ...
- Ubuntu中建立ftp 503错误解决办法
The problem is because your folder is owned by root, instead of ftpuser. To fix it run: sudo chown - ...
- [na]tcp的可靠性