memcached是一款软件,可以将你的程序或图片以hash的格式存储在服务器内存中。
好了废话少说,下面说的memcache是PHP的一个扩展,你可以到PHP官方去下载地址:http://pecl.php.net/package/memcache
好了,说下安装步骤:
首先得先安装libevent,因为memcached是依赖这个的。
我下载的版本是:
libevent-1.3a.tar.gz
$tar -zvxf libevent-1.3.a.tar.gz
然后进入cd libevent-1.3
$./configure --prefix=/usr/local/libevent //这里我习惯性的会把服务器相关的扩展或软件安装到$/usr/local
$make
$make install
然后安装memcached我用的是memcached-1.2.5.tar.gz版本
这样也很简单,同理:
$tar -zvxf memcached-1.2.5.tar.gz
$./configure --prefix=/usr/local/memcached
$make
$make install
然后运行:
$/usr/local/memcached/bin/memcached –d –m 500 -l 64.128.191.151 -p 11211 -u root
这里会报错.说找不到libenevt的扩展,我们需要到/lib目录下ls -s /$yourDir/libevent.1.4.so 注释:
-u 以什么帐户启动
-m memcached共享的内存大小(以M为单位)
-l memcached服务的主机IP(一般是本机的IP,此项省略就是所有本机的IP)
-p memcached服务监听的端口(这个可以自己指定,只要不冲突就行,默认是11211)


下面安装PHP的memcache扩展
依然但是tar -zvxf memcache,我的版本是3.0以上,为什么选择这个,因为我的PHP版本是最新的2.5.6
而memcache最新的是3.0以上,考虑对应关系。

解压后进入cd memcache
然后运行:
$/usr/local/php/bin/phpize 回车
然后运行
$./configure --enable-memcache --with-php-config=/usr/local/php/bin/php-config --with-zlib-dir
$make
$make install
安装完后会有类似这样的提示:

Installing shared extensions: /usr/local/php/lib/php/extensions/no-debug-non-zts-20060922/

把这个记住,然后修改php.ini,把

extension_dir = "./"

修改为

extension_dir = "/usr/local/php/lib/php/extensions/no-debug-non-zts-20060922/"

并添加一行

extension=memcache.so


好啦,我们测试一下,对了别忘记重新启动下APACHE哦,我安装N次后的经验。
<?php
$memcache = new Memcache; //创建一个memcache对象
$memcache->connect('localhost', 11211) or die ("Could not connect"); //连接Memcached服务器
$memcache->set('key', 'test'); //设置一个变量到内存中,名称是key 值是test
$get_value = $memcache->get('key'); //从内存中取出key的值
echo $get_value;
?>
输出test,OK啦,成功安装。

-------------------------------------------------------------------------
其实因为版本不同,以上安装过程还有个头疼的小插曲。
我一开始安装的memcache,是1.5,然后PHPINFO没有看到相关信息。
后来又换了memcache2.0以上版本。
还是不行,头疼,后来实在没办法了,考虑到了静态编译PHP,就是自己重新整理configure,重编译PHP。
把memcache扩展直接插到php源码中,这次我考虑到了版本问题,直接安装的是memcache3.0
相关版本。
首先解压
$tar -zvxf memcache
$cp memcache /soft/phpsrcdir/ext
$ rm configure
$ ./buildconf --force
$ ./configure --help
$ ./configure ./configure --prefix=/usr/local/php --with-apxs2=/usr/local/apache/bin/apxs --with- mysql=/usr/local/mysql --enable-memcache --enable-mbstring --zlib
$ make
$ make install

phpinfo();一下,出现了memcache相关信息,终于好了,呵呵

 

注原文地址http://hi.baidu.com/ronalfei/blog/item/f941ef249b2dbb368744f912.html