memcached安装

本文提供了一个详细的memcached安装步骤,包括必要的libevent库的安装。文章涵盖了从下载源码包开始,通过编译安装libevent库,再到安装memcached服务的具体指令。同时,还提供了如何验证安装是否成功的方法及解决常见问题的方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

源:http://www.iteye.com/topic/110112
评:
memcached安装

1. 下载, memcached需要先安装libevent

memcached的下载地址:http://danga.com/memcached/download.bml

libevent的下载地址 :http://www.monkey.org/~provos/libevent/

2. 安装libevent
java 代码

# tar xzvf libevent-1.3c.tar.gz
# cd libevent-1.3c
# ./configure --prefix=/home/mahaibo/install
# make
# make install

检查是否安装成功:

#cd /home/mahaibo/install/lib

如果有libevent-1.3c.so.1 libevent-1.3c.so.1.0.3 libevent.a libevent.la libevent.so

这几个文件存在,说明安装成功

3.安装memcached
java 代码

# tar xzvf memcached-1.2.2.tar.gz
# cd memcached-1.2.2
# ./configure --with-libevent=/home/mahaibo/install --prefix=/home/mahaibo/installmemcache
# make
# make install

检查是否安装成功:

#cd /home/mahaibo/installmemcache/bin

如果memcached memcached-debug这2个文件存在,说明安装成功

4.执行


java 代码

#cd /home/mahaibo/installmemcache/bin

# ./memcached -h

如果出现:
java 代码

memcached 1.2.2
-p <num></num> TCP port number to listen on (default: 11211)
-U <num></num> UDP port number to listen on (default: 0, off)
-s <file></file> unix socket path to listen on (disables network support)
-l <ip_addr></ip_addr> interface to listen on, default is INDRR_ANY
-d run as a daemon
-r maximize core file limit
-u <username></username> assume identity of <username></username> (only when run as root)
-m <num></num> max memory to use for items in megabytes, default is 64 MB
-M return error on memory exhausted (rather than removing items)
-c <num></num> max simultaneous connections, default is 1024
-k lock down all paged memory
-v verbose (print errors/warnings while in event loop)
-vv very verbose (also print client commands/reponses)
-h print this help and exit
-i print memcached and libevent license
-b run a managed instanced (mnemonic: buckets)
-P <file></file> save PID in <file></file>, only used with -d option
-f <factor></factor> chunk size growth factor, default 1.25
-n <bytes></bytes> minimum space allocated for key+value+flags, default 48



说明安装成功,并且路径配置正确。

有可能会出现:
java 代码

memcached: error while loading shared libraries: libevent-1.3c.so.1: cannot open shared object file: No such file or directory

说明 没有找到文件:libevent-1.3c.so.1

解决办法:

第一步. 查看下lib路径:
java 代码

LD_DEBUG=libs /home/mahaibo/installmemcache/bin/memcached -v

结果为:
java 代码

27515: find library=libevent-1.3c.so.1 [0]; searching
27515: search path=tls/i686/sse2:tls/i686:tls/sse2:tls:i686/sse2:i686:sse2::/usr/local/lib/tls/i686/sse2:/usr/local/lib/tls/i686:/usr/local/lib/tls/sse2:/usr/local/lib/tls:/usr/local/lib/i686/sse2:/usr/local/lib/i686:/usr/local/lib/sse2:/usr/local/lib:/usr/local/BerkeleyDB.4.3/lib/tls/i686/sse2:/usr/local/BerkeleyDB.4.3/lib/tls/i686:/usr/local/BerkeleyDB.4.3/lib/tls/sse2:/usr/local/BerkeleyDB.4.3/lib/tls:/usr/local/BerkeleyDB.4.3/lib/i686/sse2:/usr/local/BerkeleyDB.4.3/lib/i686:/usr/local/BerkeleyDB.4.3/lib/sse2:/usr/local/BerkeleyDB.4.3/lib:/opt/Ice-3.1/lib/tls/i686/sse2:/opt/Ice-3.1/lib/tls/i686:/opt/Ice-3.1/lib/tls/sse2:/opt/Ice-3.1/lib/tls:/opt/Ice-3.1/lib/i686/sse2:/opt/Ice-3.1/lib/i686:/opt/Ice-3.1/lib/sse2:/opt/Ice-3.1/lib (LD_LIBRARY_PATH)
27515: trying file=tls/i686/sse2/libevent-1.3c.so.1
27515: trying file=tls/i686/libevent-1.3c.so.1
27515: trying file=tls/sse2/libevent-1.3c.so.1
27515: trying file=tls/libevent-1.3c.so.1
27515: trying file=i686/sse2/libevent-1.3c.so.1
27515: trying file=i686/libevent-1.3c.so.1
27515: trying file=sse2/libevent-1.3c.so.1
27515: trying file=libevent-1.3c.so.1
27515: trying file=/usr/local/lib/tls/i686/sse2/libevent-1.3c.so.1
27515: trying file=/usr/local/lib/tls/i686/libevent-1.3c.so.1
27515: trying file=/usr/local/lib/tls/sse2/libevent-1.3c.so.1
27515: trying file=/usr/local/lib/tls/libevent-1.3c.so.1
27515: trying file=/usr/local/lib/i686/sse2/libevent-1.3c.so.1
27515: trying file=/usr/local/lib/i686/libevent-1.3c.so.1
27515: trying file=/usr/local/lib/sse2/libevent-1.3c.so.1
27515: trying file=/usr/local/lib/libevent-1.3c.so.1
27515: trying file=/usr/local/BerkeleyDB.4.3/lib/tls/i686/sse2/libevent-1.3c.so.1
27515: trying file=/usr/local/BerkeleyDB.4.3/lib/tls/i686/libevent-1.3c.so.1
27515: trying file=/usr/local/BerkeleyDB.4.3/lib/tls/sse2/libevent-1.3c.so.1
27515: trying file=/usr/local/BerkeleyDB.4.3/lib/tls/libevent-1.3c.so.1
27515: trying file=/usr/local/BerkeleyDB.4.3/lib/i686/sse2/libevent-1.3c.so.1
27515: trying file=/usr/local/BerkeleyDB.4.3/lib/i686/libevent-1.3c.so.1
27515: trying file=/usr/local/BerkeleyDB.4.3/lib/sse2/libevent-1.3c.so.1
27515: trying file=/usr/local/BerkeleyDB.4.3/lib/libevent-1.3c.so.1
27515: trying file=/opt/Ice-3.1/lib/tls/i686/sse2/libevent-1.3c.so.1
27515: trying file=/opt/Ice-3.1/lib/tls/i686/libevent-1.3c.so.1
27515: trying file=/opt/Ice-3.1/lib/tls/sse2/libevent-1.3c.so.1
27515: trying file=/opt/Ice-3.1/lib/tls/libevent-1.3c.so.1
27515: trying file=/opt/Ice-3.1/lib/i686/sse2/libevent-1.3c.so.1
27515: trying file=/opt/Ice-3.1/lib/i686/libevent-1.3c.so.1
27515: trying file=/opt/Ice-3.1/lib/sse2/libevent-1.3c.so.1
27515: trying file=/opt/Ice-3.1/lib/libevent-1.3c.so.1
27515: search path=/usr/lib/tls/i686/sse2:/usr/lib/tls/i686:/usr/lib/tls/sse2:/usr/lib/tls:/usr/lib/i686/sse2:/usr/lib/i686:/usr/lib/sse2:/usr/lib (system search path)
27515: trying file=/usr/lib/tls/i686/sse2/libevent-1.3c.so.1
27515: trying file=/usr/lib/tls/i686/libevent-1.3c.so.1
27515: trying file=/usr/lib/tls/sse2/libevent-1.3c.so.1
27515: trying file=/usr/lib/tls/libevent-1.3c.so.1
27515: trying file=/usr/lib/i686/sse2/libevent-1.3c.so.1
27515: trying file=/usr/lib/i686/libevent-1.3c.so.1
27515: trying file=/usr/lib/sse2/libevent-1.3c.so.1
27515: trying file=/usr/lib/libevent-1.3c.so.1
27515: search cache=/etc/ld.so.cache
27515: search path=/lib/tls/i686/sse2:/lib/tls/i686:/lib/tls/sse2:/lib/tls:/lib/i686/sse2:/lib/i686:/lib/sse2:/lib:/usr/lib/tls/i686:/usr/lib/tls:/usr/lib/sse2:/usr/lib (system search path)
27515: trying file=/lib/tls/i686/sse2/libevent-1.3c.so.1
27515: trying file=/lib/tls/i686/libevent-1.3c.so.1
27515: trying file=/lib/tls/sse2/libevent-1.3c.so.1
27515: trying file=/lib/tls/libevent-1.3c.so.1
27515: trying file=/lib/i686/sse2/libevent-1.3c.so.1
27515: trying file=/lib/i686/libevent-1.3c.so.1
27515: trying file=/lib/sse2/libevent-1.3c.so.1
27515: trying file=/lib/libevent-1.3c.so.1
27515: trying file=/usr/lib/tls/i686/libevent-1.3c.so.1
27515: trying file=/usr/lib/tls/libevent-1.3c.so.1
27515: trying file=/usr/lib/sse2/libevent-1.3c.so.1
27515: trying file=/usr/lib/libevent-1.3c.so.1
27515:
/home/mahaibo/installmemcache/bin/memcached: error while loading shared libraries: libevent-1.3c.so.1: cannot open shared object file: No such file or directory

第二步. 将libevent-1.3c.so.1拷贝到任何一个列出的lib 下就可以了。

或者 软链接
java 代码

ln -s /Data/libevent/lib/libevent-1.3b.so.1 /usr/lib/libevent-1.3c.so.1

或者 修改vi /etc/profile文件。
java 代码

export LIBRARY_PATH=:/usr/local/lib:"/usr/local/BerkeleyDB.4.3/lib":/usr/local/lib:/opt/Ice-3.1/lib:/usr/lib:/home/mahaibo/install/lib



启动服务 :
java 代码



./memcached -d -m 10 -u root -l 192.168.40.4 -p 12000 -c 256 -P /tmp/memcached.pid



参数说明:

-d选项是启动一个守护进程
-m是分配给Memcache使用的内存数量,单位是MB,我这里是10MB
-u是运行Memcache的用户,我这里是root
-l是监听的服务器IP地址
-p是设置Memcache监听的端口,最好是1024以上的端口
-c选项是最大运行的并发连接数,默认是1024,按照你服务器的负载量来设定
-P是设置保存Memcache的pid文件
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值