(转)memcache 安装 笔记

一、环境需求安装Memcached需要libevent库的支持,所以请在安装Memcached之前检查有没有安装libevent。测试环境还需要PHP的支持。

我的是CentOS5.4的系统,装好了apache、php。

二、下载相关软件

Memcached下载地址:http://www.danga.com/memcached/

memcachePHP模块下载地址:http://pecl.php.net/package/memcache

libevent 下载地址: http://www.monkey.org/~provos/libevent/

我下载的版本分别是:‍memcached-1.4.5.tar.gz、‍memcache-3.0.5.tgz、libevent-2.0.9-rc.tar.gz

我在Windows系统下下载,然后samba上传到服务器。当然也可以用ftp。

三、安装

1、安装libevent

root@wxlccsu:# tar vxzf libevent-2.0.9-rc.tar.gz

root@wxlccsu:#cdlibevent-2.0.9

root@wxlccsu:#./configure

root@wxlccsu:#make

root@wxlccsu:# make install

2、安装Memcached

root@wxlccsu:#tarvxzfmemcached-1.4.5.tar.gz

root@wxlccsu:#cdmemcached-1.4.5

root@wxlccsu:#./configure--prefix=/usr/local/memcached

root@wxlccsu:#make

root@wxlccsu:# make install

安装完之后要启动服务

root@wxlccsu:#cd/usr/local/memcached/bin

root@wxlccsu:# ./memcached -d -m 50 -p 11211 -u root

启动memcached出现状况

error while loading shared libraries: libevent-2.0.so.5: cannot open shared object file: No such file or directory

在网上查了下

解决这个问题有如下方法:

1>首先find/-namelibevent-2.0.so.5找到缺少的链接文件到底在那儿。

2>LD_DEBUG=libs/usr/local/memcached/‍bin/memcached-v

3> 从Debug信息中就知道程序去哪里找链接库了。我这边程序去 trying file=/usr/lib/libevent-2.0.so.5 而我的链接库的实际存储位置是 /usr/local/lib/libevent-2.0.so.5

4>做一个软连接 ln -s /usr/local/lib/libevent-2.0.so.5 /usr/lib/libevent-2.0.so.

5>搞定.

3、安装memcache PHP模块

root@wxlccsu:#tarvxzfmemcache-3.0.5.tgz

root@wxlccsu:# cd memcache-3.0.5

root@wxlccsu:# find / -name phpize

‍/usr/bin/phpize

root@wxlccsu:# /usr/bin/phpize

root@wxlccsu:# find / -name php-config

/usr/bin/php-config

root@wxlccsu:#./configure--enable-memcache--with-php-config=/usr/bin/php-config--with-zlib-dir

root@wxlccsu:#make

root@wxlccsu:# make install

注:find / -name phpize find / -name php-config

这两个文件视具体路径而定

安装完后会有类似这样的提示:

Installing shared extensions:     /usr/lib/php/modules/

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

extension_dir = "./"

修改为

extension_dir = "/usr/lib/php/modules"

并添加一行

extension=memcache.so

重启apache

‍root@wxlccsu:# /etc/init.d/http.d restart

四、测试脚本自己写一个PHP程序测试一下吧

<?php

$memcache=newMemcache;//创建一个memcache对象

$memcache->connect('localhost',11211)ordie("Couldnotconnect");//连接Memcached服务器

$memcache->set('key','thisisatestbywxlccsu!');//设置一个变量到内存中,名称是key值是test

$get_value=$memcache->get('key');//从内存中取出key的值

echo $get_value;

phpinfo();?>

通过浏览器查看此页面可以看到:‍this is a test by wxlccsu !

并且在php模块信息中可以看到memcache的相关信息。

相关推荐