在 ubuntu 上安装 php datastax 驱动程序

Installing php datastax driver on ubuntu

我正在尝试为 Cassandra 安装 datastax php 驱动程序,当我 运行 以下命令时:

pecl install ext/package.xml

从 git 检查后,我收到以下消息:

configure: error: Unable to load libcassandra

ERROR: `/tmp/pear/temp/cassandra/configure' failed

任何人都可以指出正确的方向以便成功安装此驱动程序吗?

我使用的 cassandra 版本是 2.1.8,所以驱动程序可能尚未更新以连接到最新版本的 cassandra。

以下步骤对我有用。 YMMV.

$ uname -a
3.2.0-4-amd64 #1 SMP Debian 3.2.68-1+deb7u3 x86_64 GNU/Linux

安装一些先决条件(从列表中删除 libuv-dev):

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

立即尝试安装 libuv-dev 将导致以下错误:

libuv depends on libc6 (>= 2.14); however: Version of libc6:amd64 on system is 2.13-38+deb7u8.

Wheezy 似乎有一个稍旧的 libc6 版本。走近 Jessie 获得 2.14。将以下内容添加到 /etc/apt/sources.list:

deb ftp://ftp.debian.org/debian/ jessie main
deb-src ftp://ftp.debian.org/debian/ jessie main

在运行以下命令后,这些服务将重新启动:mysql、exim4、cups、cron、atd、apache2

$ sudo apt-get update
$ sudo apt-get install libc6
$ sudo apt-get -f install

下载并安装以下文件:

$ wget http://downloads.datastax.com/cpp-driver/ubuntu/14.04/libuv_1.6.1-1_amd64.deb
$ wget http://downloads.datastax.com/cpp-driver/ubuntu/14.04/libuv-dev_1.6.1-1_amd64.deb
$ wget http://downloads.datastax.com/cpp-driver/ubuntu/14.04/cassandra-cpp-driver_2.1.0-1_amd64.deb
$ wget http://downloads.datastax.com/cpp-driver/ubuntu/14.04/cassandra-cpp-driver-dev_2.1.0-1_amd64.deb
$ sudo dpkg -i libuv_1.6.1-1_amd64.deb
$ sudo dpkg -i libuv-dev_1.6.1-1_amd64.deb
$ sudo dpkg -i cassandra-cpp-driver_2.1.0-1_amd64.deb
$ sudo dpkg -i cassandra-cpp-driver-dev_2.1.0-1_amd64.deb

下载并安装 DataStax Cassandra PHP 扩展:

$ git clone https://github.com/datastax/php-driver.git
$ cd php-driver
$ sudo pecl install ext/package.xml 

将扩展名添加到 php.ini:

$ sudo sh -c 'echo "extension=cassandra.so" >>/etc/php5/apache2/php.ini'

重新启动 Apache:

$ sudo /etc/init.d/apache2 restart

使用 <?php phpinfo();

确认 Cassandra 出现

这已经解决了 phpinfo() 中没有引用不正确的 php.ini 的问题。