hdp2.5自帶的phoenix是4.7的,而客戶的駕駛艙項目跑在4.7的phoenix上是有問題的,如:若是表中沒有數據,執行select count(*) from 表,返回的是空,這時致使駕駛艙項目報錯誤。因此決定升級phoenix版本爲4.8,過程以下sql
一、在ambari中關閉Hbase、Ambari Metricsshell
二、備份原來的phoenixapache
mv phoenix phoenixbakurl
三、上傳phoenix安裝包apache-phoenix-4.8.2-HBase-1.2-bin.tarspa
四、解壓tar -zxvf apache-phoenix-4.8.2-HBase-1.2-bin.tar.gz3d
五、刪除apache-phoenix-4.8.2-HBase-1.2-bin.tar.gzcode
rm -rf apache-phoenix-4.8.2-HBase-1.2-bin.tar.gzserver
六、修改apache-phoenix-4.8.2-HBase-1.2-bin目錄名爲phoenixblog
mv apache-phoenix-4.8.2-HBase-1.2-bin/ phoenixget
七、修改phoenix目錄的全部人、全部組爲root:root
chown -R root:root phoenix
八、進入phoenix目錄,建立doc目錄,並將example目錄移動到doc目錄下
cd phoenix
mkdir doc
mv examples/ doc/
九、建立phoenix-pherf目錄,並將bin/config目錄移動到phoenix-pherf目錄下
mkdir phoenix-pherf
mv bin/config/ phoenix-pherf
十、複製phoenixbak/lib目錄到當前目錄
cp -r ../phoenixbak/lib/ .
十一、進到lib目錄下,刪除以phoenix開頭的jar包
cd lib/
rm -rf phoenix-*.jar
十二、將上級目錄的以phoenix-core開頭的jar包拷貝到當前目錄
cp ../phoenix-core-4.8.2-HBase-1.2*.jar .
1三、將上級目錄的以phoenix-flume開頭的jar包拷貝到當前目錄
cp ../phoenix-flume-4.8.2-HBase-1.2*.jar .
1四、將上級目錄以phoenix-hive開頭的jar包拷貝到當前目錄
cp ../phoenix-hive-4.8.2-HBase-1.2*.jar .
1五、將上級目錄以phoenix-pherf-4.8.2-HBase-1.1開頭的jar包拷貝到當前目錄
cp ../phoenix-pherf-4.8.2-HBase-1.2*.jar .
1六、將上級目錄以phoenix-pig開頭的jar包拷貝到當前目錄
cp ../phoenix-pig-4.8.2-HBase-1.2*.jar .
1七、將上級目錄以phoenix-queryserver-開頭的jar包拷貝到當前目錄
cp ../phoenix-queryserver-*.jar .
1八、將上級目錄以phoenix-spark開頭的jar包拷貝到當前目錄
cp ../phoenix-spark-4.8.2-HBase-1.2*.jar .
1九、爲phoenix/bin目錄下全部py文件增長執行權限
chmod +x *.py
20、修改queryserver.py文件內容
將%s-queryserver 改成phoenix-%s-server,以下
2一、返回上級,執行以下代碼
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
執行後,效果以下
2二、備份全部節點上的phoenix
2三、將修改後的/usr/hdp/2.5.0.0-1245/phoenix拷貝到其餘全部節點中/usr/hdp/2.5.0.0-1245目錄下
2四、在安裝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 .
2五、在安裝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 .
2六、在替換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
2七、啓動Hbase、Ambari Metrics
2八、經過shell訪問(phoenix-sqlline localhost:2181:/hbase-unsecure)
若是,您認爲閱讀這篇博客讓您有些收穫,不妨點擊一下右下角的【推薦】。
若是,您但願更容易地發現個人新博客,不妨點擊一下左下角的【關注我】。
若是,您對個人博客所講述的內容有興趣,請繼續關注個人後續博客,我是【劉超★ljc】。
本文版權歸做者,禁止轉載,不然保留追究法律責任的權利。