linux 下memcached 的搭建
memcached 下载地址:http://www.danga.com/memcached/dist/
libevent 下载地址:http://libevent.org/
[[email protected] soft]# ls
libevent-1.4.9-stable.tar.gz memcached-1.2.6.tar.gz
[[email protected] soft]# tar xf libevent-1.4.9-stable.tar.gz -C /usr/src/
[[email protected] soft]# cd /usr/src/libevent-1.4.9-stable/
[[email protected] libevent-1.4.9-stable]# ./configure --prefix=/usr/local/libevent && make && make install
[[email protected] soft]# tar xf memcached-1.2.6.tar.gz -C /usr/src
[[email protected] soft]# cd /usr/src/memcached-1.2.6/
[[email protected] memcached-1.2.6]# ./configure --prefix=/usr/local/memcached --with-libevent=/usr/local/libevent && make && make install
[[email protected] memcached-1.2.6]# cd /usr/local/memcached/bin/
[[email protected] bin]# ./memcached -d -m 6000m -p 11211 -u root
./memcached: error while loading shared libraries: libevent-1.4.so.2: cannot open shared object file: No such file or directory //报错
解决方法:
[[email protected] bin]# vim /etc/ld.so.conf
include ld.so.conf.d/*.conf
/usr/local/libevent/lib //添加libevent的 lib路径
[[email protected] bin]# ldconfig
[[email protected] bin]# ./memcached -d -m 6000m -p 11211 -c 2048 -u root
./memcached -d -p 11211 -u root -m 16000 -c 1024 -P /var/run/memcached/memcached.pid
[[email protected] bin]# netstat -lnpt | grep 11211
tcp 0 0 0.0.0.0:11211 0.0.0.0:* LISTEN 18532/./memcached
memcached参数说明
-d //启动为守护进程
-m //分配给memcache的内存数量。单位是MB
-u //制定运行memcached的用户
-l //监听服务的ip地址
-p ///设置memcached的监听端口,最好是1024以上的端口
-c //设置最大并发量,默认为1024
-P //设置保存memcached的pid文件,与-d选择同时使用
memcached 日志设置
memcache在linux上安装时并不支持显示地配置服务日志,我们如果想要把memcache服务日志保存到日志文件中,则需要在启动参数中进行配置。
安装好memcache后,我们可以通过-h命令查看memcached支持的参数:
Shell代码
1. [[email protected] ~]$ /usr/local/memcached/bin/memcached -h
2. #其余的省略
3. -v verbose (print errors/warnings while in event loop)
4. -vv very verbose (also print client commands/reponses)
5. -vvv extremely verbose (also print internal state transitions)
从上面可以看到,启动memcached时有3个参数是和日志信息相关的:
其中-v代表打印普通的错误或者警告类型的日志信息
-vv比-v打印的日志更详细,包含了客户端命令和server端的响应信息
-vvv则是最详尽的,甚至包含了内部的状态信息打印
你可以根据你的实际需要来选择对应的参数,我这里使用-vv就OK了。
由于我们需要把日志信息保存在文件中,而不是在控制台输出,而-vv等参数只能把日志信息输出在控制台。所以我们需要对-vv参数的输出进行数据流重定向,关于重定向的知识在这里就不细述了,有兴趣的可以查下资料了解一下。
综上,启动memcached的命令如下:
1. /usr/local/memcached/bin/memcached -d -m 2048 -p $1 -u root -vv >> /tmp/memcached.log 2>&1
重点在最后的:-vv >> /tmp/memcached.log 2>&1
-vv >> /tmp/memcached.log:代表把-vv的输出重定向到/tmp/memcached.log 文件中
2>&1的意思是把错误日志也一起写入到该文件中