最近项目需求,需要使用memcache,之前也安装配置过,当时就是借鉴的平凡的世界写的安装方法,记得当时挺顺利的,可是这次却遇到不少问题,这篇日志是基于平凡的世界Linux下的Memcache安装这篇日志,加上自己实际安装最新版本软件的情况,整理和勘误所得,分享给大家,有什么问题欢迎留言讨论。
以下代码框中的安装代码均经过测试,可以直接复制粘贴使用,如果有需要修改的地方请修改后再执行。
一、各文件下载安装
1.先下载安装libevent。
官网:http://www.monkey.org/~provos/libevent/
Memcache用到了libevent这个库用于Socket的处理,所以还需要安装libevent,libevent的最新版本是libevent-2.0.10-stable。(如果你的系统已经安装了libevent,可以不用安装).
cd /tmp
wget http://www.monkey.org/~provos/libevent-2.0.10-stable.tar.gz
tar zxvf libevent-2.0.10-stable.tar.gz
cd libevent-2.0.10-stable
./configure --prefix=/usr
make
make install
测试是否安装成功:
ls -al /usr/lib | grep libevent
显示类似如下信息证明安装成功
2.再下载安装memcached
列表:http://www.danga.com/memcached/dist/
最新稳定版memcached-1.4.0
需要在配置时需要指定libevent的安装路径即
cd /tmp
wget http://www.danga.com/memcached/dist/memcached-1.4.0.tar.gz
tar zxvf memcached-1.4.0.tar.gz
cd memcached-1.4.0
./configure --with-libevent=/usr
make
make install
如果中间出现报错,请仔细检查错误信息,按照错误信息来配置或者增加相应的库或者路径。
安装完成后会把memcached放到 /usr/local/bin/memcached
测试是否成功安装memcached:
ls -al /usr/local/bin/mem*
显示类似如下信息证明安装成功 站长教学网 eduyo.com
-rwxr-xr-x 1 root root 234741 04-28 13:19 /usr/local/bin/memcached
3.最后下载安装Memcache的PHP扩展
地址:http://pecl.php.net/package/memcache
最新稳定版本:memcache-2.2.6
cd /tmp
wget http://pecl.php.net/get/memcache-2.2.6.tgz
tar zxvf memcache-2.2.6.tgz
cd memcache-2.2.6
/usr/local/php/bin/phpize
./configure --enable-memcache --with-php-config=/usr/local/php/bin/php-config --with-zlib-dir
make
make install
/usr/local/php/bin/phpize运行时,可能会报错:Cannot find autoconf. Please check your autoconf installation and the $PHP_AUTOCONF environment variable is set correctly and then rerun this script.,需要安装autoconf。
上述安装完后会有类似这样的提示:
Installing shared extensions: /usr/local/php/lib/php/extensions/no-debug-non-zts-2009xxxx/
复制本代码备用
2009这里有可能是2006,2007,和php以及Zend版本有关系
4.检查php.ini文件
如果安装过程一切正常的话,find extension_dir = ,应该会找到如下代码
extension_dir = "/usr/local/php/lib/php/extensions/no-debug-non-zts-2009xxxx/"
extension = "memcache.so"
如果没有,把php.ini中的extension_dir = “./”修改为
extension_dir = "/usr/local/php/lib/php/extensions/no-debug-non-zts-2009xxxx/"
extension = memcache.so
其中extension_dir的路径在第三部最后的时候已经让大家保留备用的
(责任编辑:ken)