如何在Linux下安装Memcached

如何在Linux下安装Memcached,第1张

一、安装gcc

# yum -y install gcc

二、安装libevent

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

# tar zxf libevent-2.0.12-stable.tar.gz

# cd libevent-2.0.12-stable

#./configure --prefix=/usr/local/lib

# make &&make install

三、安装make

# yum -y install make

四、下载安装最新版本:http://memcached.org/downloads

# wget http://memcached.org/files/memcached-1.4.20.tar.gz

# cd memcached-1.4.20

#./configure --prefix=/usr/local/memcached --with-libevent=/usr/local/lib &&make &&make install

五、配置启动

# vi /etc/rc.local

#!/bin/sh

#

# This script will be executed *after* all the other init scripts.

# You can put your own initialization stuff in here if you don't

# want to do the full Sys V style init stuff.

touch /var/lock/subsys/local

/usr/sbin/ntpdate ntpupdate.tencentyun.com >/dev/null 2>&1 &

/usr/local/agenttools/agent/startagent.sh /usr/local/agenttools/agent /dev/null

#secu-tcs-agent bootstart, install at Tue Apr 29 17:21:38 CST 2014.

/usr/local/sa/agent/secu-tcs-agent-mon-safe.sh >/dev/null 2>&1

/usr/local/memcached/bin/memcached -p 12677 -U 0 -d -r -u root -m 2040 -c 1024 -t 4

保存后退出,手动启动服务

# /usr/local/memcached/bin/memcached -p 12677 -U 0 -d -r -u root -m 2040 -c 1024 -t 4

注:如果出现/usr/local/memcached/bin/memcached: error while loading shared libraries: libevent-2.0.so.5: cannot open shared object file: No such file or directory异常在/etc/ld.so.conf中加入/usr/local/lib这一行,保存之后,再运行:/sbin/ldconfig –v更新一下配置即可。

# vi /etc/ld.so.conf

# /sbin/ldconfig -V

六、测试memcached

# telnet 127.0.0.1 12677

出现以下信息表示启动成功

Trying 127.0.0.1...

Connected to 127.0.0.1.

Escape character is '^]'.

一、检查libevent

首先检查系统中是否安装了libevent

Shell代码

rpm -qa|grep libevent

如果安装了则查看libevent的安装路径,后续安装时需要用到

Shell代码

rpm -ql libevent

如果没有安装,则先安装libevent

安装libevent:

1.首先下载libevent安装包

Shell代码

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

2.解压缩安装包

Shell代码

tar zxvf libevent-1.4.12-stable.tar.gz -C /usr/local/

3.进入解压后的目录

Shell代码

cd libevent-1.4.12-stable/

4.配置编译、安装

Shell代码

./configure -prefix=/usr/libevent

make

make install

安装完libevent之后为了让动态链接库为系统所共享,需要执行以下动态链接库的管理命令ldconfig

不过在执行ldconfig命令之前需要注意以下libevent的安装目录。具体参见:http://chenzhou123520.iteye.com/blog/1925196

安装完libevent后正式开始安装memcached

1.首先是下载memcached的安装包

Shell代码

wget http://memcached.googlecode.com/files/memcached-1.4.15.tar.gz

2.修改安装包的执行 *** 作权限

Shell代码

chmod 777 memcached-1.4.15.tar.gz

3.解压安装包到指定目录

Shell代码

tar zxvf memcached-1.4.15.tar.gz -C /usr/local

4.进入解压后的目录

Shell代码

cd /usr/local/memcached-1.4.15/

5.配置、编译、安装

注:configure时需要指定libevent的安装路径

Shell代码

./configure -with-libevent=/usr/libevent/ -prefix=/usr/local/memcached

make

make install

6.安装成功后启动一下看安装是否成功

Shell代码

/usr/local/memcached/bin/memcached -d -m 10m -p 11211 -u root

启动参数介绍如下:和上面的命令不对应

-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,也可以启动多个守护进程,不过端口不能重复。

如果要给memcached上配置日志,参见:http://chenzhou123520.iteye.com/blog/1925209

PS:附上一个memcached启动的shell脚本

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的启动端口,也可以通过自定义的端口来启动

查看是否启动:ps aux|grep memcached

查看版本 :

cd /etc/init.d/

memcached -h

或者:

[nihaoya@SHANGH-39-DX-APP ~]# telnet 127.0.0.1 11211

Trying 127.0.0.1...

Connected to 127.0.0.1.

Escape character is '^]'.

stats


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/yw/7185710.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-02
下一篇2023-04-02

发表评论

登录后才能评论

评论列表(0条)

    保存