首页 > Linux > CentOS Memcached安装及运行检测

CentOS Memcached安装及运行检测

       本来linux下安装memcache没什么很复杂的,今天发现有个小小的问题:由于libevent的安装源文件夹带有版本号等信息(带横线如libevent-1.4.9-stable结果导致编译错误)

CentOS Memcached安装系统能提高电脑更方便的使用性能。下面就这就来讲术CentOS Memcached安装。CentOSLinux使用了RHEL的源代码,但是由于这些源代码是Red Hat公司自由发布的,因此CentOS Linux的发布是完全合法的,CentOSLinux的使用者也不会遇到任何的版权问题。CentOS系统上CentOS Memcached安装。

1.CentOS Memcached安装前需要先安装Libevent:
# curl -Ohttp://www.monkey.org/~provos/libevent-1.4.9-stable.tar.gz
# tar zxflibevent-1.4.9-stable.tar.gz
# cd libevent-1.4.9-stable(如果编译错误重命名一下文件夹使不带版本信息,如下划线)
#./configure     (最好指定–prefix=/pathName/ 不然有可能memcache找不到安装目录,当然memcached安装的时候也要指定–with-libevent=/pathName)
# make
# make install

2.继续CentOS Memcached安装:
# curl -Ohttp://www.danga.com/memcached/dist/memcached-1.2.7.tar.gz
# tar zxfmemcached-1.2.7.tar.gz
# cd memcached-1.2.7
# ./configure
#make
# make install

3.CentOS Memcached安装接着在当前用户的.bash_profile中添加
LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/local/lib
exportLD_LIBRARY_PATH

4.CentOS Memcached运行
# memcached -m 512 -u nobody-vv
测试时候发现会出现以下错误信息:
“/usr/local/memcached/bin/memcached: errorwhile loading shared libraries: libevent-1.4.so.2: cannot open sharedobject file: No such file or directory”
错误的原因是未在系统中注册Libevent.解决方法如下:
# vi /etc/ld.so.conf.d/libevent-i386.conf
在VI中输入以下一行内容:
/usr/local/lib/
最 后不要忘了
# ldconfig

5.CentOS Memcached运行
# memcached -m 512 -u nobody-vv
<6 server listening
<7 server listening
<8 sendbuffer was 109568, now 268435456
<8 server listening (udp)
<9send buffer was 109568, now 268435456
<9 server listening (udp)
CentOSMemcached运行正常。
以上介绍CentOS Memcached安装及运行检测。

6. 启动:
memcached -l 192.168.10.60 -d -p 11212 -u nobody -m 1024

上面的命令中-d表示用 daemon 的方式启动 memcached,-l和-p组合表示监听在 192.168.10.60 的 11212端口上(如果不用-p指定端口号,则memcached将运行在11211端口上),-u表示运行用户为 nobody,-m表示为其分配1024MB的内存。

7. 测试:
可以使用telnet连接到192.168.10.60的11212端口,连接成功以后,
先向memcached中添加一个key-value对,key为test1(后面的0 010所表示的具体含义,在下一篇文章中会详细介绍),value为testing001:
set test1 0 0 10
testing001
STORED

再从memcached中取回key为test1所对应的value:
get test1
VALUE test1 0 10
testing001
END

注:上面粗体表示系统输出的内容

如果能看到类似的输出,则证明memcached已经正确配置并启动成功了。

++++++++下面的这个是另外一个版本的,是在Javaeye上面找的++++++++++++++++

原文地址:http://www.javaeye.com/topic/110112

memcached安装

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

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

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

2. 安装libevent

java 代码

  1. #  tar xzvf libevent-1.3c.tar.gz    
  2. # cd libevent-1.3c  
  3. # ./configure –prefix=/home/mahaibo/install  
  4. # make   
  5. # 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 代码

  1. #  tar xzvf memcached-1.2.2.tar.gz   
  2. # cd memcached-1.2.2  
  3. # ./configure –with-libevent=/home/mahaibo/install –prefix=/home/mahaibo/installmemcache  
  4. # make   
  5. # make install  

检查是否安装成功:

#cd /home/mahaibo/installmemcache/bin

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

4.执行

 

java 代码

  1. #cd /home/mahaibo/installmemcache/bin  
  2.   
  3. # ./memcached -h   

如果出现:

java 代码

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

 

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

有可能会出现:

java 代码

  1. 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 代码

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

结果为:

java 代码

  1.    27515:     find library=libevent-1.3c.so.1 [0]; searching   
  2.      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)   
  3.      27515:       trying file=tls/i686/sse2/libevent-1.3c.so.1  
  4.      27515:       trying file=tls/i686/libevent-1.3c.so.1  
  5.      27515:       trying file=tls/sse2/libevent-1.3c.so.1  
  6.      27515:       trying file=tls/libevent-1.3c.so.1  
  7.      27515:       trying file=i686/sse2/libevent-1.3c.so.1  
  8.      27515:       trying file=i686/libevent-1.3c.so.1  
  9.      27515:       trying file=sse2/libevent-1.3c.so.1  
  10.      27515:       trying file=libevent-1.3c.so.1  
  11.      27515:       trying file=/usr/local/lib/tls/i686/sse2/libevent-1.3c.so.1  
  12.      27515:       trying file=/usr/local/lib/tls/i686/libevent-1.3c.so.1  
  13.      27515:       trying file=/usr/local/lib/tls/sse2/libevent-1.3c.so.1  
  14.      27515:       trying file=/usr/local/lib/tls/libevent-1.3c.so.1  
  15.      27515:       trying file=/usr/local/lib/i686/sse2/libevent-1.3c.so.1  
  16.      27515:       trying file=/usr/local/lib/i686/libevent-1.3c.so.1  
  17.      27515:       trying file=/usr/local/lib/sse2/libevent-1.3c.so.1  
  18.      27515:       trying file=/usr/local/lib/libevent-1.3c.so.1  
  19.      27515:       trying file=/usr/local/BerkeleyDB.4.3/lib/tls/i686/sse2/libevent-1.3c.so.1  
  20.      27515:       trying file=/usr/local/BerkeleyDB.4.3/lib/tls/i686/libevent-1.3c.so.1  
  21.      27515:       trying file=/usr/local/BerkeleyDB.4.3/lib/tls/sse2/libevent-1.3c.so.1  
  22.      27515:       trying file=/usr/local/BerkeleyDB.4.3/lib/tls/libevent-1.3c.so.1  
  23.      27515:       trying file=/usr/local/BerkeleyDB.4.3/lib/i686/sse2/libevent-1.3c.so.1  
  24.      27515:       trying file=/usr/local/BerkeleyDB.4.3/lib/i686/libevent-1.3c.so.1  
  25.      27515:       trying file=/usr/local/BerkeleyDB.4.3/lib/sse2/libevent-1.3c.so.1  
  26.      27515:       trying file=/usr/local/BerkeleyDB.4.3/lib/libevent-1.3c.so.1  
  27.      27515:       trying file=/opt/Ice-3.1/lib/tls/i686/sse2/libevent-1.3c.so.1  
  28.      27515:       trying file=/opt/Ice-3.1/lib/tls/i686/libevent-1.3c.so.1  
  29.      27515:       trying file=/opt/Ice-3.1/lib/tls/sse2/libevent-1.3c.so.1  
  30.      27515:       trying file=/opt/Ice-3.1/lib/tls/libevent-1.3c.so.1  
  31.      27515:       trying file=/opt/Ice-3.1/lib/i686/sse2/libevent-1.3c.so.1  
  32.      27515:       trying file=/opt/Ice-3.1/lib/i686/libevent-1.3c.so.1  
  33.      27515:       trying file=/opt/Ice-3.1/lib/sse2/libevent-1.3c.so.1  
  34.      27515:       trying file=/opt/Ice-3.1/lib/libevent-1.3c.so.1  
  35.      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)  
  36.      27515:       trying file=/usr/lib/tls/i686/sse2/libevent-1.3c.so.1  
  37.      27515:       trying file=/usr/lib/tls/i686/libevent-1.3c.so.1  
  38.      27515:       trying file=/usr/lib/tls/sse2/libevent-1.3c.so.1  
  39.      27515:       trying file=/usr/lib/tls/libevent-1.3c.so.1  
  40.      27515:       trying file=/usr/lib/i686/sse2/libevent-1.3c.so.1  
  41.      27515:       trying file=/usr/lib/i686/libevent-1.3c.so.1  
  42.      27515:       trying file=/usr/lib/sse2/libevent-1.3c.so.1  
  43.      27515:       trying file=/usr/lib/libevent-1.3c.so.1  
  44.      27515:      search cache=/etc/ld.so.cache  
  45.      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)  
  46.      27515:       trying file=/lib/tls/i686/sse2/libevent-1.3c.so.1  
  47.      27515:       trying file=/lib/tls/i686/libevent-1.3c.so.1  
  48.      27515:       trying file=/lib/tls/sse2/libevent-1.3c.so.1  
  49.      27515:       trying file=/lib/tls/libevent-1.3c.so.1  
  50.      27515:       trying file=/lib/i686/sse2/libevent-1.3c.so.1  
  51.      27515:       trying file=/lib/i686/libevent-1.3c.so.1  
  52.      27515:       trying file=/lib/sse2/libevent-1.3c.so.1  
  53.      27515:       trying file=/lib/libevent-1.3c.so.1  
  54.      27515:       trying file=/usr/lib/tls/i686/libevent-1.3c.so.1  
  55.      27515:       trying file=/usr/lib/tls/libevent-1.3c.so.1  
  56.      27515:       trying file=/usr/lib/sse2/libevent-1.3c.so.1  
  57.      27515:       trying file=/usr/lib/libevent-1.3c.so.1  
  58.      27515:  
  59. /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 代码

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

或者 修改vi  /etc/profile文件。

java代码

  1. 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 代码

 

  1. ./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文件

分类: Linux 标签:
  1. 本文目前尚无任何评论.
  1. 本文目前尚无任何 trackbacks 和 pingbacks.

=2加7(必填)请输入两数相加的结果。