linux系统下安装memcached
检查libevent
首先检查系统中是否安装了libevent
- rpm -qa|grep libevent
如果安装了则查看libevent的安装路径,后续安装时需要用到
- rpm -ql libevent
如果没有安装,则先安装libevent
安装libevent:
1.首先下载libevent安装包
- wget http://www.monkey.org/~provos/libevent-1.4.12-stable.tar.gz
2.解压缩安装包
- tar zxvf libevent-1.4.12-stable.tar.gz -C /usr/local/
3.进入解压后的目录
- cd libevent-1.4.12-stable/
4.配置编译、安装
- ./configure -prefix=/usr/libevent
- make
- make install
安装完libevent后正式开始安装memcached
1.首先是下载memcached的安装包
- wget http://memcached.org/files/memcached-1.5.16.tar.gz
2.修改安装包的执行操作权限
- chmod 777 memcached-1.5.16.tar.gz
3.解压安装包到指定目录
- tar zxvf memcached-1.5.16.tar.gz -C /usr/local
4.进入解压后的目录
- cd /usr/local/memcached-1.5.16/
5.配置、编译、安装
注:configure时需要指定libevent的安装路径
- ./configure -with-libevent=/usr/libevent/ -prefix=/usr/local/memcached
- make
- make install
6.安装成功后启动一下看安装是否成功
- /usr/local/memcached/bin/memcached -d -m 10m -p 11211 -u root
启动参数介绍如下:
-d选项是启动一个守护进程;
-m是分配给Memcache使用的内存数量,单位是MB,这里是10MB;
-p是设置Memcache监听的端口,这里设置了11211,当然memcached的默认端口也是这个;
-u是运行Memcache的用户,这里是root;
还有没有写的参数:
-l是监听的服务器IP地址,如果有多个地址的话,用逗号隔开;
-c选项是最大运行的并发连接数,默认是1024,可以自己设置,按照服务器的负载量来设定;
-P(大写)是设置保存Memcache的pid文件,也可以启动多个守护进程,不过端口不能重复;
-I (大写的 "i"), 调整单个数据项的最大值,后面跟2m 表示最大2兆;
-t 线程数,默认4.
检测启动是否成功:
- ps aux|grep memcached
- 或者通过另一台机器 telnet IP PORT
附上一个memcached启动的shell脚本
#!/bin/sh echo "Start to start memcached server $(date)..." MEMCACHED=/usr/local/memcached/bin/memcached usage() { echo "usage: `basename $0` port" } if [ -n "$1" ] then { pid=`ps aux|grep memcached|grep "$1" |grep -v grep|awk '{print $2}'` if [ -n "$pid" ] then { sleep 2 echo "kill memcached which port is $1 begin" echo "pid:$pid" kill -9 $pid echo "kill memcached which port is $1 end" sleep 2 } fi echo "begin to start memcached in port $1" LOG_FILE=/var/log/memcached/memcached_$1.log rm -f $LOG_FILE $MEMCACHED -d -m 2048 -p $1 -u root -vv >> $LOG_FILE 2>&1 echo "start memcached end" tail -f $LOG_FILE } else { usage exit 1 } fi
把该脚本命名为startup.sh
执行:./startup.sh 11211
其中11211为memcached的启动端口,也可以通过自定义的端口来启动