php7 安装memcached 扩展 & centos 安装memceche

来源:互联网 发布:js函数内定义全局变量 编辑:程序博客网 时间:2024/05/17 04:12

服务器安装memcache

1. 首先安装Libevent事件触发管理器。

wget https://github.com/downloads/libevent/libevent/libevent-2.0.21-stable.tar.gztar vxf libevent-2.0.21-stable.tar.gzcd libevent-2.0.21-stable./configure -prefix=/usr/local/lib/libevent    # ./configuremake && make install
或者 yum install libevent

2. 编译安装memcached

wget http://memcached.org/latestcp latest memcached.tar.gztar -zxvf memcached.tar.gzcd memcached./configure -with-libevent=/usr/local/lib/libevent   # ./configuremake && make install

3. 启动memcached

/usr/local/bin/memcached -d -m 128 -l 127.0.0.1 -p 11211 -u root   # (128为内存, 11211为端口,root为用户组)

启动过程中如果报错: error while loading shared libraries: libevent-1.3.so.1: cannot open shared object file: No such file or directory

解决:

1.find / -name libevent-1.3.so.1 (查看系统已安装的libevent在哪里)

2. LD_DEBUG=libs /usr/local/bin/memcached -v  (查看寻找的路径是哪里)

  例如我的是在 /usr/lib64/ 目录下查找,而系统中安装的路径为 /usr/local/lib/

3.  ln -s /usr/lib64/libevent-1.3.so.1 /usr/local/lib/libevent-1.3.so.1 在memcache寻找的路径中创建软链指向系统中的库文件

4. 查看是否启动成功

ps -ef |grep memcached

如图则成功


php7 安装memcached扩展(我的php是编译安装的)

1. 首先安装memcache的客户端库 libmemcached

   php版本不高于5.6可以安装
      wget https://launchpad.net/libmemcached/1.0/1.0.17/+download/libmemcached-1.0.17.tar.gz
   php7版本的1.0.17版本的libmemcache库安转不了会报错 只能装下面的1.0.18版本的
      wget https://launchpadlibrarian.net/165454254/libmemcached-1.0.18.tar.gz
   
   tar -zxvf libmemcached-1.0.18.tar.gz
   cd libmemcached-1.0.18
   ./configure
   make && make install

2.安装 php7 memcache扩展

 git clone https://github.com/php-memcached-dev/php-memcached                                                       git checkout -b php7                                                                                              cd php_memcache                                                                                                    /usr/local/php/bin/phpize                                                                                        ./configure --with-php-config=/usr/local/php/bin/php-config                                                      make && make install                   
 安装成功如图:


修改php.ini的配置
加上:extension_dir="/usr/local/php7.1/lib/php/extensions/no-debug-non-zts-20160303/"(每个人的路径可能不一样)
        extension = "memcached.so
重启php-fpm


测试代码

<?php
$m = new Memcached;$m->addServer('127.0.0.1', 11211);$m->set('foo', 200);var_dump($m->get('foo'));
?>



1 0