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扩展

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

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

  3. 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)