安装php扩展模块参数memcache和memcached在php中的应用
一, memcache和memcached的区别与关系统
php要想去访问memcached就得需要memcache扩展,这个道理和php连接mysql一样。 你不安装memcache扩展就没法识别memcache协议。php安装memcache扩展后,还需要安装memcached服务。 php相当于客户端,memcached相当于服务端
查看php安装的模块命令:/usr/local/php/bin/php –m
memcache在php中编译
memcache在php中编译
1 .安装memcache
wget http://www.lishiming.net/data/attachment/forum/memcache-2.2.3.tgz
# tar zxvf memcache-2.2.3.tgz
# cd memcache-2.2.3
# /usr/local/php/bin/phpize
如果执行这上面的命令报错:
phpize:Cannot find autoconf. Please check your autoconf installation and the $PHP_AUTOCONF envir (2012-06-26 14:37:00)
根据网上的解决办法是: # cd /usr/src # wget http://ftp.gnu.org/gnu/m4/m4-1.4.9.tar.gz
# tar -zvxf m4-1.4.9.tar.gz # cd m4-1.4.9/
# ./configure && make && make install # cd ../
# wget http://ftp.gnu.org/gnu/autoconf/autoconf-2.62.tar.gz
# tar -zvxf autoconf-2.62.tar.gz # cd autoconf-2.62/
# ./configure && make && make install
可爱的yum让我更容易把没安装的包安装好 yum install m4 yum install autoconf
可以参考博客:http://www.cnblogs.com/keethebest/archive/2013/05/30/3108621.html
# ./configure --with-php-config=/usr/local/php/bin/php-config
# make
# make install
# cp modules/memcache.so /usr/local/php/ext/ //把memcache.so 拷贝至php的extension_dir下,#查看php extension_dir的方法是 /usr/local/php/bin/php -i |grep extension_dir
修改扩展路径,在php.ini中修改:
extension_dir = "/usr/local/php/ext"
然后在php.ini 中添加
extension = memcache.so
保存后可以利用 /usr/local/php/bin/php -m 检测和查看具体的参数
memcached 的编译安装或也可以使用phpinfo()函数查看具体信息:
2 安装memcached
wget http://memcached.org/files/memcached-1.4.24.tar.gz
tar zxvf memcached-1.4.24.tar.gz
cd memcached-1.4.24
./configure --prefix=/usr/local/memcached
报错:缺少libevent库
yum install –y libevent*
make && make install
启动:
/usr/local/memcached/bin/memcached -m 2048 -p 11211 -l 127.0.0.1 -d -u www
-m 后边指定memecached使用多少内存,单位是M
-p 指定memcached 启动端口
-l 指定绑定的IP
-u 指定以某个账户的身份启动
3 最后用一个php测试程序来测试
vim /usr/local/apache2/htdocs/test.php
<?php
$mem = new Memcache;
$mem->connect("127.0.0.1", 11211);
//参数一是本机地址,当然也可是其他机器的地址,参数二是端口号
//保存数据
$mem->set('hello', 'hello world', 0, 60);
$val = $mem->get('hello');
echo $val;
?>
然后在浏览器里输入 本机IP/test.php
成功的话显示
hello world
参考博客:http://www.apelearn.com/bbs/forum.php?mod=viewthread&tid=8712&highlight=memcache