一、下载需要的源码包
1、 下载libevent2.0.22                  
2、 下载memcached1.4.24           
3、 下载php扩展memcache3.0.8  

二、安装详细步骤
首先将以上下载的三个软件包下载到/usr/local/src目录下(注:你们可以放到别的目录)
1. 安装libevent
cd /usr/local/src
tar zxvf libevent-2.0.22-stable.tar.gz #解压包
cd libevent-2.0.22-stable
./configure --prefix=/usr/local #编译前配置,生成Makefile文件,路径可自行更改
make #编译
make install #安装

2、安装memcached
cd /usr/local/src
tar zxvf memcached-1.4.24.tar.gz #解压包
cd memcached-1.4.24
./configure –with-libevent=/usr/local #编译前配置,生成Makefile文件,路径必须与libevent中一致
make #编译
make install #安装

(注:如果在make 编译的时候报错,出现如图:)
1

解决办法:
1、cd /usr/local/memcached-1.4.24 进入memcached目录
2、vi Makefile (编辑Makefile文件,删除文件中的“-Werror” ,保存后即可。)
3、保存之后,接着安装 make install。
测试是否安装成功。
如图:2
3、安装扩展
1、cd /usr/local/src
2、tar zxvf memcache-3.0.8.tgz
3、memcache-3.0.8
4、/usr/local/php5/bin/phpize #执行phpize扩展安装程序
如图:2
5、./configure -enable-memcache -with-php-config=/usr/local/php5/bin/php-config -with-zlib-dir
6、make #编译
7、make install #安装
如图: 4
三 、配置php.ini文件
1、 查看是否有memcache.so
cd /usr/local/lib/php/extensions/no-debug-non-zts-20100525/
2、vi /usr/local/php5/etc/php.ini #编辑php.ini
添加如下代码:
extension=memcache.so
[Memcache]
extension_dir =“/usr/local/lib/php/extensions/no-debug-non-zts-20100525/”
memcache.allow_failover = 1
memcache.max_failover_attempts=20
memcache.chunk_size =8192

四、配置memcached服务器
1、启动memcached服务器
memcached -d -m 10 -u root -l 127.0.0.1 -p 11211 -c 256 -P /usr/local/bin/memcached/memcached.pid

如果在启动memcached时候报“memcached: error while loading shared libraries: libevent-2.0.so.5: cannot open shared object file: No such file or directory”之类的错误信息,表示memcached找不到libevent的位置
如图:
memcached

解决办法:
1、 首先查看,libevent 在哪里 ,执行:# whereis libevent
2、 然后,再看memcached 从哪里找它,执行# LD_DEBUG=libs memcached -v 2>&1 > /dev/null | less 可以看到:是/usr/lib/libevent-2.0.so.5,所以,创建软链
3、 # ln -s /usr/local/lib/libevent-2.0.so.5 /usr/lib/libevent-2.0.so.5
4、 关闭memcached :pkill memcached
5、 再次启动:memcached -d -m 10 -u root -l 127.0.0.1 -p 11211 -c 256 -P /usr/local/bin/memcached/memcached.pid
6、 查看端口,看memcached是否启动成功!# netstat –ant
如图:
memcached1
表示启动成功!
7、查看你得memcache扩展是否添加成功!
如图:1
表示扩展添加成功!
五 测试php的memcache扩展
connect("127.0.0.1", 11211);
$mem->set('key', 'This is my  memcache ceshi!', 0, 60);
$val = $mem->get('key');
echo $val;
?>

转载请注明转自:运达's blog 原文地址:http://www.yunda51.com/1610.html