首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 操作系统 > UNIXLINUX >

Memcached Linux装配部署

2012-06-27 
Memcached Linux安装部署?安装版本:libevent-2.0.13-stable.tar.gz memcached-1.4.7.tar.gz?2.先安装libev

Memcached Linux安装部署

?

安装版本:libevent-2.0.13-stable.tar.gz memcached-1.4.7.tar.gz

?

2.先安装libevent:

# tar zxvf libevent-2.0.13-stable.tar.gz

# cd libevent-2.0.13-stable

# ./configure –prefix=/usr

# make

# make install

?

3.测试libevent是否安装成功:

# ls -al /usr/lib | grep libevent

还不错,都安装上了。

?

4.安装memcached,同时需要安装中指定libevent的安装位置:

# cd /tmp

# tar zxvf memcached-1.4.7.tar.gz

# cd memcached-1.4.7

# ./configure –with-libevent=/usr

# make

# make install

如果中间出现报错,请仔细检查错误信息,按照错误信息来配置或者增加相应的库或者路径。

安装完成后会把memcached放到 /usr/local/bin/memcached ,

?

5.测试是否成功安装memcached:

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

?

?

安装Memcache的PHP扩展

1.在http://pecl.php.net/package/memcache 选择相应想要下载的memcache版本。

2.安装PHP的memcache扩展

?

tar vxzf memcache-2.2.1.tgz

cd memcache-2.2.1

/usr/local/php/bin/phpize

./configure –enable-memcache –with-php-config=/usr/local/php/bin/php-config –with-zlib-dir

make

make install

?

3.上述安装完后会有类似这样的提示:

?

Installing shared extensions: /usr/local/php/lib/php/extensions/no-debug-non-zts-2007xxxx/

?

4.把php.ini中的extension_dir = “./”修改为

?

extension_dir = “/usr/local/php/lib/php/extensions/no-debug-non-zts-2007xxxx/”

?

5.添加一行来载入memcache扩展:extension=memcache.so

?

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.如果要结束Memcache进程,执行:

?

# kill `cat /tmp/memcached.pid`

?

也可以启动多个守护进程,不过端口不能重复。

?

3.重启apache,service httpd restart

?

Memcache环境测试:

运行下面的php文件,如果有输出This is a test!,就表示环境搭建成功。开始领略Memcache的魅力把!

< ?php

$mem = new Memcache;

$mem->connect("10.0.1.146", 11211);

$mem->set("key", "This is a test!", 0, 60);

$val = $mem->get("key");

echo $val;

?>

1 楼 huze104 2012-03-20   1,memcached是什么?memcached服务器和客户端的内容以及memcached启动选项等,大家网上搜搜吧,这里不赘述
2,mecached服务器的安装:
一, 查看安装的memcached版本:yum list memcached。如果已经存在,且版本符合自己的需求,则可以直接使用,如果不符合自己的需求,则可以通过yum remove memcached进行卸载。如果不存在,则在centos6下可以直接使用yum install memcached进行一键安装,不过通过这种方式安装的版本可能不是最新的。如果需要最新的版本可以按下面的步骤进行安装。

二,memcached服务器当前最新版本(1.4.13)的安装:
1)用到的软件包:

libevent-2.0.17-stable.tar.gz  [http://cloud.github.com/downloads/libevent/libevent/libevent-2.0.17-stable.tar.gz]
memcached-1.4.13.tar.gz  [http://memcached.googlecode.com/files/memcached-1.4.13.tar.gz]

2)下载软件包:

Java代码 
[root@hxqlinux ~]# cd /tmp 
[root@hxqlinux tmp]# wget http://memcached.googlecode.com/files/memcached-1.4.13.tar.gz 
[root@hxqlinux tmp]# wget https://github.com/downloads/libevent/libevent/libevent-2.0.17-stable.tar.gz 


3)先安装libevent(memcached依赖libevent):

Java代码 
[root@hxqlinux tmp]# tar zxvf libevent-2.0.17-stable.tar.gz 
[root@hxqlinux tmp]# cd libevent-2.0.17-stable 
[root@hxqlinux libevent-2.0.17-stable]# ./configure --prefix=/usr 
[root@hxqlinux libevent-2.0.17-stable]# make && make install 


4) 测试libevent是否安装成功:


Java代码 
[root@hxqlinux libevent-2.0.17-stable]# ls -al /usr/lib |grep libevent 
看到类似下面的截图,说明libevent安装成功:



5) 安装memcached:

Java代码 
[root@hxqlinux tmp]# tar zxvf memcached-1.4.13.tar.gz  
[root@hxqlinux tmp]# cd memcached-1.4.13 
[root@hxqlinux memcached-1.4.13]# ./configure --with-libevent=/usr 
[root@hxqlinux memcached-1.4.13]# make && make install 

6) 测试memcached是否安装成功:

Java代码 
[root@hxqlinux memcached-1.4.13]# ls -al /usr/local/bin/memcached 
看到类似下面的截图,说明memcached安装成功:



3, memcached服务器的启动和关闭:
一,直接的命令行方式:
1) 启动和查看是否启动:

Java代码 
[root@hxqlinux ~]#/usr/local/bin/memcached -d -m 128 -u root -p 11211 -c 256 -P /var/run/memcached1.pid 
[root@hxqlinux ~]# ps aux|grep memcached 

看到类似下面的截图,说明memcached1启动成功



2)关闭:

Java代码 
[root@hxqlinux ~]#  kill `cat /var/run/memcached1.pid` 
再通过ps aux|grep memcached进行查看

二,服务的方式:
1)新建启动和关闭脚本并赋执行权限:

Java代码 
[root@hxqlinux ~]# cp /tmp/memcached-1.4.13/scripts/memcached.sysv /etc/init.d/memcached 
[root@hxqlinux ~]# chmod 755 /etc/init.d/memcached 

2)修改/etc/init.d/memcached文件(只列出了需要修改的内容):

Html代码 
PORT=11212 
USER=root 
MAXCONN=256 
CACHESIZE=128 
OPTIONS="" 
 
 
chown $USER /usr/local/bin/memcached 
/usr/local/bin/memcached -d -p $PORT -u $USER  -m $CACHESIZE -c $MAXCONN -P /var/run/memcached2.pid $OPTIONS 

3)加入系统服务,并启动memcached服务,同时查看memcached服务是否启动成功:

Java代码 
[root@hxqlinux ~]# chkconfig --add memcached 
[root@hxqlinux ~]# chkconfig --level 235 memcached on 
[root@hxqlinux ~]# chkconfig --list memcached 

4)启动memcached服务器并检查memcached是否启动,关闭memcached:

Java代码 
[root@hxqlinux ~]# service memcached start 
[root@hxqlinux ~]# ps aux|grep memcached 
[root@hxqlinux ~]# service memcached stop 

4, 测试外部是否可以访问memcached服务器:
通过telnet ip port来测试memcached是否可以访问,如果不能访问,应该是centos6的防火墙问题,进行如下修改:

Java代码 
[root@hxqlinux ~]# iptables -I INPUT -p tcp --dport 11211 -j ACCEPT; 
[root@hxqlinux ~]# iptables -I OUTPUT -p tcp --sport 11211 -j ACCEPT;   
[root@hxqlinux ~]# iptables-save 
[root@hxqlinux ~]# service iptables save; 
此时外部程序应该可以访问memcached 服务器了

5, 注意:
一,安装libevent的时候最好指定--prefix=/usr, 不然在安装memcached的时候可能会报找不到libevent的错误。
二,至于windows下的安装,请参考:http://blog.csdn.net/zhangking/article/details/7104668
三,也可以通过netstat -anp|grep 1121* 来查看memcache是否启动

热点排行