Apache Cassandra 的安裝及使用 (二)

一、cassandra-php擴展

1、cassandra擴展依賴庫:

- The C/C++ driver and its dependencies.
- The GNU Multiple Precision Arithmetic Library.
- Libuv

使用homebrew安裝依賴

    brew install libuv cmake gmp git

使用apt-get安裝

   sudo apt-get install g++ make cmake libuv-dev libssl-dev libgmp-dev php5 php5-dev openssl libpcre3-dev git

使用yum安裝

sudo yum install automake cmake gcc gcc-c++ git libtool openssl-devel wget gmp gmp-devel boost php-devel pcre-devel
pushd /tmp
wget http://dist.libuv.org/dist/v1.11.0/libuv-v1.11.0.tar.gz
tar xzf libuv-v1.11.0.tar.gz
pushd libuv-v1.11.0
sh autogen.sh
./configure
sudo make install
popd

編譯安裝cpp-driver (依賴包參照官方文檔安裝 DataStax C/C++ Driver for Apache Cassandra )

sudo yum -y install epel-release
git clone https://github.com/datastax/cpp-driver.git
mkdir cpp-driver/build
cd cpp-driver/build
cmake ..
make
make install

2、 pecl安裝 cassandra 擴展 :

若沒有pecl命令,需要先將/opt/lampp/bin/ 目錄添加至環境變量

sudo vi /etc/profile
     添加 export PATH=/opt/lampp/bin/:$PATH
source /etc/profile
whereis pecl
     pecl: /opt/lampp/bin/pecl

執行命令安裝cassandra

pecl install cassandra 

安裝成功後將extension=cassandra.so 添加至 php.ini

加載成功後可在phpinfo中查看配置:
這裏寫圖片描述

cassandra.so 無法成功加載問題

1、PHP Warning: PHP Startup: Unable to load dynamic library ‘/opt/lampp/lib/php/extensions/no-debug-non-zts-20151012/cassandra.so’ - libcassandra.so.2: cannot open shared object file: No such file or directory in Unknown on line 0

這個問題是缺少/usr/local/lib64/libcassandra.so.2文件,經查找發現/usr/lib64/libcassandra.so.2存在,創建軟件接至lib64中,問題解決

ln -s /usr/local/lib64/libcassandra.so.2 /usr/lib64/libcassandra.so.2

2、 PHP Warning: PHP Startup: Unable to load dynamic library ‘/opt/lampp/lib/php/extensions/no-debug-non-zts-20151012/cassandra.so’ - /opt/lampp/lib/libstdc++.so.6: version `GLIBCXX_3.4.15’ not found

問題是lampp自帶的 libstdc++.so.6 缺少版本 GLIBCXX_3.4.15,同樣在/usr/lib64/中發現也有 libstdc++.so.6 文件,使用下面命令檢查後, usr/lib64中的版本較高, 將lampp中的替換後 問題解決

    strings  /opt/lampp/lib/libstdc++.so.6 | grep GLIBC

參考文檔:http://docs.datastax.com/en/developer/php-driver/1.3/

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章