文档章节

Linux下Memcache安装及PHP调用

枫本非凡
 枫本非凡
发布于 2015/08/24 18:07
字数 870
阅读 31
收藏 0

记录下memcache的安装过程: 

一、安装libevent 由于memcache安装时需要用到libevent类库,所以要先安装libevent 

1、下载 

# wget http://www.monkey.org/~provos/libevent-2.0.12-stable.tar.gz

2、解压 

# tar xzfv libevent-2.0.22-stable.tar.gz

3、进入目录 

# cd libevent-2.0.22-stable

4、编译及安装,指定安装路径/usr 

# ./configure --prefix=/usr
# make
# make install

5、测试libevent是否安装成功 

# ls -al /usr/lib | grep libevent

二、安装memcached 

1、下载 

# wget http://memcached.org/latest

2、解压 

# tar xzfv memcached-1.4.24.tar.gz

3、进入目录 

# cd memcached-1.4.24

4、编译及安装,指定libevent的安装位置 

# ./configure --with-libevent=/usr 
# make 
# make install

5、测试memcached是否安装成功 

# ls -al /usr/local/bin/mem*

6、安装过程中可能会出现如下错误 

gcc -std=gnu99 -DHAVE_CONFIG_H -I.    -fprofile-arcs -ftest-coverage -g -O2 -pthread -pthread -Wall -Werror -pedantic -Wmissing-prototypes -Wmissing-declarations -Wredundant-decls -MT memcached_debug-slabs.o -MD -MP -MF .deps/memcached_debug-slabs.Tpo -c -o memcached_debug-slabs.o `test -f 'slabs.c' || echo './'`slabs.c
mv -f .deps/memcached_debug-slabs.Tpo .deps/memcached_debug-slabs.Po
gcc -std=gnu99 -DHAVE_CONFIG_H -I.    -fprofile-arcs -ftest-coverage -g -O2 -pthread -pthread -Wall -Werror -pedantic -Wmissing-prototypes -Wmissing-declarations -Wredundant-decls -MT memcached_debug-items.o -MD -MP -MF .deps/memcached_debug-items.Tpo -c -o memcached_debug-items.o `test -f 'items.c' || echo './'`items.c
cc1: warnings being treated as errors
items.c: In function ‘crawler_crawl_q’:
items.c:1141: 警告:由于数据类型范围限制,比较结果永远为真
make[2]: *** [memcached_debug-items.o] 错误 1make[2]: Leaving directory `/tmp/memcached-1.4.24'
make[1]: *** [all-recursive] 错误 1
make[1]: Leaving directory `/tmp/memcached-1.4.24'make: *** [all] 错误 2

解决方法:vim Makefile,搜索-Werror,然后删除该参数。Werror的意思是警告即错误,即编译过程中有警告产生就无法编译通过。 

三、安装memcache的PHP扩展 

1、下载 

# wget http://pecl.php.net/get/memcache-2.2.7.tgz

 2、解压 

# tar xzfv memcache-2.2.7.tgz

 3、进入目录 

# cd memcache-2.2.7

4、编译及安装,指定php的安装位置 

首先先要找到phpize 

# whereis phpize

不过不知道为什么我这台服务器上用这命令找不到,租的是阿里云的服务器,用他们的一键安装包搭的环境,所以就直接到/alidata/server/php目录找 

# /alidata/server/php/bin/phpize
# ./configure --enable-memcache --with-php-config=/alidata/server/php/bin/php-config --with-zlib-dir 
# make 
# make install

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

 Installing shared extensions: /alidata/server/php/lib/php/extensions/no-debug-non-zts-20090626/

5、进入/alidata/server/php/etc目录修改php.ini文件的extension_dir = "./" ,不过我这边已经自动修改了

extension_dir = "/alidata/server/php/lib/php/extensions/no-debug-non-zts-20090626/"

四、memcached的基本设置 

1、启动memcache的服务器端 

# /usr/local/bin/memcached -d -m 10 -u root -l 192.168.0.200 -p 12000 -c 256 -P /tmp/memcached.pid
-d选项是启动一个守护进程,
-m是分配给Memcache使用的内存数量,单位是MB,我这里是10MB,
-u是运行Memcache的用户,我这里是root,
-l是监听的服务器IP地址,如果有多个地址的话,我这里指定了服务器的IP地址192.168.0.200,
-p是设置Memcache监听的端口,我这里设置了12000,最好是1024以上的端口,
-c选项是最大运行的并发连接数,默认是1024,我这里设置了256,按照你服务器的负载量来设定,
-P是设置保存Memcache的pid文件,我这里是保存在 /tmp/memcached.pid

2、重启服务器,我这里是ngnix 

# /etc/init.d/nginx restart

五、memcache测试 

<?php  
$memcache = new Memcache; //创建一个memcache对象  
$memcache->connect('localhost', 12000) or die ("Could not connect"); //连接Memcached服务器  
$memcache->set('key', 'test'); //设置一个变量到内存中,名称是key 值是test  
$get_value = $memcache->get('key'); //从内存中取出key的值  
echo $get_value;  
?>
终端测试:
linjiandeMacBook-Pro:~ linjian$ telnet 121.41.101.68 12000
Trying 121.41.101.68...
Connected to 121.41.101.68.
Escape character is '^]'.
set key1 0 60 4
zhou
STORED
get key1
VALUE key1 0 4
zhou
END


本文转载自:http://blog.csdn.net/heiyeshuwu/article/details/1380838

共有 人打赏支持
上一篇: Memcache初试
下一篇: Memcache初试
枫本非凡
粉丝 1
博文 2
码字总数 0
作品 0
杭州
私信 提问
缓存系统memcache的安装,配置和使用

软件介绍 [我的Linux,让Linux更易用]memcached是一套分布式的快取或缓存系统,当初是Danga Interactive为了LiveJournal所发展的,但目前被许多软件(如MediaWiki)所使用。这是一套开放源代码...

wdlinuxcn
2010/10/15
0
0
linux下memcached安装

memcache的安装 官方(http://memcached.org/)下载,服务器端主要是安装memcache服务器端,目前的最新版本是 memcached-1.3.14 另外,Memcache用到了libevent这个库用于Socket的处理,所以还...

行者PHPer
2012/07/06
0
2
Linux下的Memcache安装

Linux下的Memcache安装 发布时间:December 6, 2007 分类:Linux,Memcache 《IBM T61 A29入手》 《Windows下的Memcache安装》 最近在研究怎么让Discuz!去应用Memcache去做一些事情,记录下M...

河北李晓东
2018/06/26
0
0
Centos安装memcached服务器

我的版本为Centos Release 5.3 (Final) 使用这个命令可以知道你的Linux版本 cat /etc/redhat-release 首先要安装libevent库。 cd /usr/local/src curl -O http://monkey.org/~provos/libeve......

五大三粗
2015/03/24
0
0
Linux下编译按装memcache分布式环境(

Linux下编译按装memcache分布式环境(笔记) Linux下编译按装memcache分布式环境(笔记) @author 流水孟春 121169238(at)qq.com Memcache用到了libevent这个库用于Socket的处理,所以还需要...

石头哥哥
2013/01/18
0
0

没有更多内容

加载失败,请刷新页面

加载更多

聊聊ShenandoahGC的Brooks Pointers

序 本文主要研究一下ShenandoahGC的Brooks Pointers Shenandoah Shenandoah面向low-pause-time的垃圾收集器,它的GC cycle主要有 Snapshot-at-the-beginning concurrent mark包括Init Mark(P......

go4it
昨天
0
0
Makefile通用编写规则

#简单实用的Makefile模板: objs := a.o b.o test:$(objs) gcc -o test $^ # .a.o.d .b.o.d dep_files := $(foreach f,$(objs),.$(f).d) dep_files := $(wildcard $(dep_files)) ifneq ($(d......

shzwork
昨天
0
0
《万历十五年》的读后感作文4000字

《万历十五年》的读后感作文4000字: 万历十五年,即1587年,距今已过去432年。在明朝276的历史中,这一年很平淡,并没有什么特别之处。黄仁宇的《万历十五年》一书,有别于其他的历史叙述方...

原创小博客
昨天
0
0
vue组件系列4、Table封装下

知道了slot 怎么用,才可以理解table这样封装的原因 table插件部分 <template> <div> <!-- 关键字部分 --> <div class="pre_search" v-show="show_key"> <label>关键字:......

轻轻的往前走
昨天
0
0
laravel嵌套预加载限制字段

之前有写过laravel关联查询的坑,后经一位博友提醒可以简写,详见https://my.oschina.net/u/3470006/blog/3020215 自己实践了下果然如此,要查询user表和与之关联的信息表userinfo直接可以用...

gcudwork
昨天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部