write down,forget

memcached安装

<Category: Memcached, nosql> 查看评论

http://.org/

wget http://memcached.googlecode.com/files/memcached-1.4.7.tar.gz
tar vxzf memcached-1.4.7.tar.gz
cd memcached-1.4.7
./configure

提示:
checking for libevent directory… configure: error: libevent is required. You can get it from http://www.monkey.org/~provos/libevent/

//安装libevent
cd ..
wget http://www.monkey.org/~provos/libevent-2.0.13-stable.tar.gz
tar vxzf libevent-2.0.13-stable.tar.gz
cd libevent-2.0.13-stable
./configure
make
make install

//重新安装
cd ..
cd memcached-1.4.7
./configure
sudo make
sudo make install

//启动memcached
./memcached-debug
./memcached-debug: error while loading shared libraries: libevent-2.0.so.5: cannot open shared object file: No such file or directory

//ldd查看依赖
ldd memcached
libevent-2.0.so.5 => not found
librt.so.1 => /lib64/librt.so.1 (0x0000003984e00000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x0000003984600000)
libc.so.6 => /lib64/libc.so.6 (0x0000003983a00000)
/lib64/ld-linux-x86-64.so.2 (0x0000003983600000)

whereis libevent-2.0.so.5
libevent-2.0.so: /usr/local/lib/libevent-2.0.so.5

//看来lib下面的libevent库文件在lib64下不能正确找到,链接到lib64下

sudo ln -s /usr/local/lib/libevent-2.0.so.5 /usr/lib64/libevent-2.0.so.5
ldd memcached
libevent-2.0.so.5 => /usr/lib64/libevent-2.0.so.5 (0x00002ba134f10000)
librt.so.1 => /lib64/librt.so.1 (0x0000003984e00000)
libpthread.so.0 => /lib64/libpthread.so.0 (0x0000003984600000)
libc.so.6 => /lib64/libc.so.6 (0x0000003983a00000)
/lib64/ld-linux-x86-64.so.2 (0x0000003983600000)

//查看帮助
./memcached -help
memcached 1.4.7
-p TCP port number to listen on (default: 11211)
-U UDP port number to listen on (default: 11211, 0 is off)
-s UNIX socket path to listen on (disables network support)
-a access mask for UNIX socket, in octal (default: 0700)
-l interface to listen on (default: INADDR_ANY, all addresses)
may be specified as host:port. If you don’t specify
a port number, the value you specified with -p or -U is
used. You may specify multiple addresses separated by comma
or by using -l multiple times
-d run as a daemon
-r maximize core file limit
-u assume identity of (only when run as root)
-m max memory to use for items in megabytes (default: 64 MB)
-M return error on memory exhausted (rather than removing items)
-c max simultaneous connections (default: 1024)
-k lock down all paged memory. Note that there is a
limit on how much memory you may lock. Trying to
allocate more than that would fail, so be sure you
set the limit correctly for the user you started
the daemon with (not for -u user;
under sh this is done with ‘ulimit -S -l NUM_KB’).
-v verbose (print errors/warnings while in event loop)
-vv very verbose (also print client commands/reponses)
-vvv extremely verbose (also print internal state transitions)
-h print this help and exit
-i print memcached and libevent license
-P save PID in , only used with -d option
-f chunk size growth factor (default: 1.25)
-n minimum space allocated for key+value+flags (default: 48)
-L Try to use large memory pages (if available). Increasing
the memory page size could reduce the number of TLB misses
and improve the performance. In order to get large pages
from the OS, memcached will allocate the total item-
in one large chunk.
-D Use as the delimiter between key prefixes and IDs.
This is used for per-prefix stats reporting. The default is
“:” (colon). If this option is specified, stats collection
is turned on automatically; if not, then it may be turned on
by sending the “stats detail on” command to the server.
-t number of threads to use (default: 4)
-R Maximum number of requests per event, limits the number of
requests process for a given connection to prevent
starvation (default: 20)
-C Disable use of CAS
-b Set the backlog queue limit (default: 1024)
-B Binding protocol – one of ascii, binary, or auto (default)
-I Override the size of each slab page. Adjusts max item size
(default: 1mb, min: 1k, max: 128m)

//启动在端口10255
./memcached -p 10255

//测试
# telnet 10.1.1.x 10255
Trying 10.1.1.x…
Connected to localhost (10.1.1.x).
Escape character is ‘^]’.
set key 0 0 4
1234
STORED
get key
VALUE key 0 4
1234
END

本文来自: memcached安装