您的位置:首页 > 数据库 > Memcache

memcached安装和启动

2013-04-25 09:51 591 查看



1.安装libevent

由于Memcached是用libevent库来处理很多打开的连接,所以要先安装libevent。

(libevent API提供了一种执行回调函数的机制,使一个文件描述符触发了某个事件或者在达到超时之后执行这个回调函数。)

下载libevent,最新版本为libevent-1.4.7-stable

引用

# wget -P /tmp http://www.monkey.org/~provos/libevent-1.4.7-stable.tar.gz
解压缩并安装

引用

# cd /tmp

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

# cd libevent-1.4.7-stable

# ./configure --prefix=/usr

# make

# make install

2.安装memcached

下载memcached,最新版本为memcached-1.2.6

引用

# wget -P /tmp http://danga.com/memcached/dist/memcached-1.2.6.tar.gz
解压缩并安装

引用

# cd /tmp

# tar zxvf memcached-1.2.6.tar.gz

# cd memcached-1.2.6

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

# make

# make install

3.启动memcached

引用

# /usr/local/bin/memcached -d -m 2048 -u root -l 192.168.1.20 -p 12111 -c 1024 -P /tmp/memcached.pid

参数说明:

-d 启动为守护进程

-m <num> 分配给Memcached使用的内存数量,单位是MB,默认为64MB

-u <username> 运行Memcached的用户,仅当作为root运行时

-l <ip_addr> 监听的服务器IP地址,默认为环境变量INDRR_ANY的值

-p <num> 设置Memcached监听的端口,最好是1024以上的端口

-c <num> 设置最大并发连接数,默认为1024

-P <file> 设置保存Memcached的pid文件,与-d选择同时使用

-p 监听的端口

-l 连接的IP地址, 默认是本机

-d start 启动memcached服务

-d restart 重起memcached服务

-d stop|shutdown 关闭正在运行的memcached服务

-d install 安装memcached服务

-d uninstall 卸载memcached服务

-u 以的身份运行 (仅在以root运行的时候有效)

-m 最大内存使用,单位MB。默认64MB

-M 内存耗尽时返回错误,而不是删除项

-c 最大同时连接数,默认是1024

-f 块大小增长因子,默认是1.25

-n 最小分配空间,key+value+flags默认是48

-h 显示帮助

4.结束memcached

引用

# kill `/tmp/memcached.pid`

注意:命令中的“`”不是单引号,而是键盘“~”键的单点符号。

四、配置memcached自启动

1.编写memcached自启动脚本或直接使用memcached安装包中的脚本(位置如下,本文使用官方自带的脚本)



2.修改自启动脚本(红色部分标识)
#! /bin/sh

#

# chkconfig: - 55 45

# description: The memcached daemon is a network memory cache service.

# processname: memcached

# config: /etc/sysconfig/memcached

# Source function library.

. /etc/rc.d/init.d/functions

PORT=11211

USER=root

MAXCONN=1024

CACHESIZE=64

OPTIONS=""

if [ -f /etc/sysconfig/memcached ];then

. /etc/sysconfig/memcached

fi

# Check that networking is up.

if [ "$NETWORKING" = "no" ]

then

exit 0

fi

RETVAL=0

start () {

echo "Starting memcached ..."

# insure that /var/run/memcached has proper permissions

chown $USER /usr/local/bin/memcached

/usr/local/bin/memcached -d -p $PORT -u $USER -m $CACHESIZE -c $MAXCONN -P /var/run/memcached.pid $OPTIONS

RETVAL=$?

echo

[ $RETVAL -eq 0 ] && touch /var/lock/subsys/memcached

}

stop () {

echo "Stopping memcached ..."

killproc memcached

RETVAL=$?

echo

if [ $RETVAL -eq 0 ] ; then

rm -f /var/lock/subsys/memcached

rm -f /var/run/memcached.pid

fi

}

restart () {

stop

start

}

# See how we were called.

case "$1" in

start)

start

;;

stop)

stop

;;

status)

status memcached

;;

restart|reload)

restart

;;

condrestart)

[ -f /var/lock/subsys/memcached ] && restart || :

;;

*)

echo $"Usage: $0 {start|stop|status|restart|reload|condrestart}"

exit 1

esac

exit $?
3.将此脚本呢cp到/etc/init.d目录下并改名为memcached,然后执行chmod a+x memcached,如下:

shell > cp memcached.sysv /etc/init.d/memcached

shell > chmod 755 /etc/init.d/memcached

4.将memcached加入系统服务:

shell > chkconfig --add memcached

shell > chkconfig memcached on

5.以服务方式运行memcached

shell > service memcached start

以上如成功则重启下系统后查看下memcached是否已随系统启动
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: