ubuntu源码编译安装memcached和php-memcache 扩展

Posted 流云清风

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了ubuntu源码编译安装memcached和php-memcache 扩展相关的知识,希望对你有一定的参考价值。


1.编译前,先确认gcc、make、patch等编译工具是否已安装,并可正常使用。

        

2.Libevent是一个异步事件处理软件函式库,以BSD许可证释出。Memcached  依赖Libevent,因此必须先编译安装Libevent。

        

wget https://github.com/libevent/libevent/releases/download/release-2.1.8-stable/libevent-2.1.8-stable.tar.gz


 tar xzvf  libevent-2.1.8-stable.tar.gz


cd libevent-2.1.8-stable


./configure


make

make install

        

        

        

3.安装Memcached


wget http://memcached.org/files/memcached-1.5.1.tar.gz


tar xvzf memcached-1.5.1.tar.gz


cd memcached-1.5.1


./configure --prefix=/usr/local/memcached/


make


make install

        

4.创建软链 否则会提示找不到 libevent目录

        

ln -s /usr/local/lib/libevent-2.1.so.6 /lib/libevent-2.1.so.6

        

5./usr/local/memcached/bin/memcached -h                           命令帮助

        

6.作为前台程序运行:从终端输入以下命令,启动memcached:

        

/usr/local/memcached/bin/memcached -p 11211 -m 64m -vv

        

7.作为后台服务程序运行:

        

# /usr/local/memcached/bin/memcached -p 11211 -m 64m -d

        

telnet 127.0.0.1 11211

        

        /*******/


8.Memcached set 命令用于将 value(数据值) 存储在指定的 key(键) 中。


如果set的key已经存在,该命令可以更新该key所对应的原来的数据,也就是实现更新的作用。


set 命令的基本语法格式如下:


set key flags exptime bytes [noreply]


value


key:键值 key-value 结构中的 key,用于查找缓存值。


flags:可以包括键值对的整型参数,客户机用它存储关于键值对的额外信息 。


exptime:在缓存中保存键值对的时间长度(以秒为单位,0 表示永远)


bytes:在缓存中存储的字节数


noreply(可选): 该参数告知服务器不需要返回数据


value:存储的值(始终位于第二行)(可直接理解为key-value结构中的value)


        实例


        以下实例中我们设置:


        key → runoob


        flag → 0


        exptime → 900 (以秒为单位)


        bytes → 9 (数据存储的字节数)


        value → memcached


        set runoob 0 900 9


        memcached


        STORED


        get runoob


        VALUE runoob 0 9


        memcached


        END

        

        /********/

        

9.安装php-memcache扩展

        

10. 列出所有的软件包 sudo apt-cache search all

        

11. 列出指定关键词的 软件包 sudo apt-cache search all | grep memcache

        

12. sudo apt-get  install php-memcache

        

13.sudo /etc/init.d/php5.6-fpm  reload 查看phpinfo()出现memcache扩展


14.在php页面实例化 memcache(不是memcached)

        

$mem = new \Memcache();

        if(!$mem->connect("localhost",11211)){

            die('连接失败!');

        }else{

            $mem->set("fhmsky","freemsky5643");

        }

        $value = $mem -> get("fhmsky");



以上是关于ubuntu源码编译安装memcached和php-memcache 扩展的主要内容,如果未能解决你的问题,请参考以下文章

ubuntu 13.04 安装php memcached扩展问题

如何在Centos的linux操作系统安装php的memcache扩展

LNMP架构 源码安装nginx+mysql+php+memcache+论坛

如何在Ubuntu 12.04上安装和使用Memcache

linux 基础学习编译安装php+mysql+python3+memcached+radis+rabbitmq+libevent+tcl+gcc+erlang

ubuntu下安装memcached和PHP的memcache扩展