centos系统为php安装memcached扩展

概要:

Memcached资源很容易混淆,所以我打包好了.下载地址: http://www.euphie.net/downloads/memcached.tar.gz下载后解压,里面有几个包:1.memcached-1.4.15 //Memcached服务端.2.memcached-2.1.0 //PHP的Memcached扩展,其实Memcached扩展有两种,还有一种叫Memcache,不过Memcached比Memcache功能更强大.3.libevent-2.0.21-stable //Memcached服务端的依赖包.4.libmemcached-1.0.16 //Memcached扩展的依赖包.

| |目录

1. 通过yum安装 

yum -y install memcached


#安装完成后执行: 

memcached -h


#出现memcached帮助信息说明安装成功 

2. 加入启动服务 

chkconfig --level 2345 memcached on


3. 配置Memcached 

vim /etc/sysconfig/memcached

 
#文件中内容如下,按需要修改: 
PORT="11211" #端口 
USER="root" #用户名 
MAXCONN="1024" #最大连接数 
CACHESIZE="64" #内存大小 
OPTIONS="" #附加参数 

4. 安装libmemached 

wget https://launchpad.net/libmemcached/1.0/1.0.16/+download/libmemcached-1.0.16.tar.gz 
tar -zxvf libmemcached-1.0.16.tar.gz 
cd libmemcached-1.0.16 
./configure -prefix=/usr/local/libmemcached -with-memcached 
make && make install



报错:g++: command not found的解决 

yum -y install gcc+ gcc-c++

 
make clean后,重新执行:make && make install 

5. 安装php-devel 

yum install php-devel

 

6. 安装PHP Memcached扩展 

wget http://pecl.php.net/get/memcached-2.1.0.tgz 
tar -zxvf memcached-2.1.0.tgz 
cd memcached-2.1.0 
/usr/local/php/bin/phpize 
./configure -enable-memcached -with-php-config=/usr/local/php/bin/php-config -with-zlib-dir -with-libmemcached-dir=/usr/local/libmemcached -prefix=/usr/local/phpmemcached 
make && make install

 

报错:memcache support requires ZLIB解决办法   

yum install zlib-devel

 

记录下安装成功后的提示,类似于: 
Installing shared extensions: /usr/lib/php/modules/ 

7.增加扩展extension配置文件 

vi /etc/php.d/memcached.ini

 
增加1行 
extension=memcached.so 
最后验证一下是否安装完成 
php -m|grep memcached 
应该会显示memcached 

8.重启nginx/amapche,重启php-fpm,使用phpinfo()查看memcached模块是否安装成功。

************************************************************************ 

memcached能启动但无法用php连接的问题(浏览器打开包含memcached的页面,firebug报500错误)
1.SELINUX=enforcing 改为 SELINUX=disabled
2.在终端尝试使用:telnet localhost 11211或者telnet 127.0.0.1 11211来连接到memcached的服务器
如果提示bash: telnet: command not found
执行:yum install telnet -y,再次回到浏览器尝试打开。

测试脚本:

<?php
$m = new Memcached;
$m->addServer('127.0.0.1', 11211);
$m->set('foo', 200);
var_dump($m->get('foo'));
?>


评论关闭
评论 还能输入200
评论关闭
评论 还能输入200
资料加载中...
已关注 , 取消