yum install gcc+ gcc-c++
yum install php53 php53-devel
yum install cyrus-sasl-plain cyrus-sasl cyrus-sasl-devel cyrus-sasl-lib
cd ..
wget http://launchpad.net/libmemcached/1.0/1.0.2/+download/libmemcached-1.0.2.tar.gz
tar -zxvf libmemcached-1.0.2.tar.gz
cd libmemcached-1.0.2
./configure --prefix=/usr/local/libmemcached
make
make install
cd ..
yum install zlib-devel
cd memcached-2.2.0
./configure --with-libmemcached-dir=/usr/local/libmemcached --enable-memcached-sasl
make
make install
ll /alidata/server/php/lib/php/extensions/no-debug-non-zts-20090626/
===================
yum install gcc+ gcc-c++
yum install php53 php53-devel
yum install cyrus-sasl-plain cyrus-sasl cyrus-sasl-devel cyrus-sasl-lib
yum install zlib-devel
wget http://launchpad.net/libmemcached/1.0/1.0.2/+download/libmemcached-1.0.2.tar.gz
tar -zxvf libmemcached-1.0.2.tar.gz
cd libmemcached-1.0.2
./configure --prefix=/usr/local/libmemcached --enable-sasl
make
make install
cd ..
wget http://pecl.php.net/get/memcached-2.2.0.tgz
tar xzvf memcached-2.2.0.tgz
cd memcached-2.2.0
phpize
./configure --with-libmemcached-dir=/usr/local/libmemcached --enable-memcached-sasl --with-php-config=/alidata/server/php/bin/php-config
make
make install
ll /alidata/server/php/lib/php/extensions/no-debug-non-zts-20090626/
sudo vim /alidata/server/php/etc/php.ini
extension=memcached.so
memcached.use_sasl=1
===================
http://blog.sina.com.cn/s/blog_5f54f0be0101h8ox.html
1.安装 sasl 环境
yum install cyrus-sasl-lib.x86_64
yum install cyrus-sasl-devel.x86_64
yum install devel.x86_64
2.安装 libmemcached
下载地址(必须是该版本)
https://launchpad.net/libmemcached/1.0/1.0.16/+download/libmemcached-1.0.16.tar.gz
tar zxvf libmemcached-1.0.16.tar.gz
cd libmemcached-1.0.16
./configure --prefix=/usr/local/libmemcached --enable-sasl
make; make install; make clean
cd ..
3.安装 PHP 的 memcached 扩展
wget http://pecl.php.net/get/memcached-2.1.0.tgz
tar zxvf memcached-2.1.0.tgz
cd memcached-2.1.0
phpize
./configure --with-php-config=/usr/local/php/bin/php-config --with-libmemcached-dir=/usr/local/libmemcached/ --enable-memcached-sasl
注意后面的 enable-memcached-sasl 参数
make; make install; make clean
最后修改php.ini文件,增加:
extension_dir="/usr/local/php/lib/php/extensions/no-debug-non-zts-20090626/"
extension=“memcached.so"
wget https://launchpad.net/libmemcached/1.0/1.0.18/+download/libmemcached-1.0.18.tar.gz
tar xzvf libmemcached-1.0.18.tar.gz
cd libmemcached-1.0.18
./configure --prefix=/usr/local/libmemcached --enable-sasl
make
make install
wget http://pecl.php.net/get/memcached-2.1.0.tgz
tar zxvf memcached-2.1.0.tgz
cd memcached-2.1.0
phpize
./configure --with-libmemcached-dir=/usr/local/libmemcached --enable-memcached-sasl
make
make install
ll /alidata/server/php/lib/php/extensions/no-debug-non-zts-20090626/
sudo vim /alidata/server/php/etc/php.ini
php -m
php -i | grep memcache
===
查看状态
$echo stats | nc 127.0.0.1 11211
STAT pid 27384
STAT uptime 108
STAT time 1446617573
STAT version 1.4.21
STAT libevent 1.4.13-stable
STAT pointer_size 64
STAT rusage_user 0.007998
STAT rusage_system 0.026995
STAT curr_connections 22
STAT total_connections 64
STAT connection_structures 24
STAT reserved_fds 20
STAT cmd_get 82
STAT cmd_set 524
STAT cmd_flush 0
STAT cmd_touch 0
STAT get_hits 70
STAT get_misses 12
STAT delete_misses 0
STAT delete_hits 0
STAT incr_misses 36
STAT incr_hits 337
STAT decr_misses 0
STAT decr_hits 0
STAT cas_misses 0
STAT cas_hits 0
STAT cas_badval 0
STAT touch_hits 0
STAT touch_misses 0
STAT auth_cmds 0
STAT auth_errors 0
STAT bytes_read 113227
STAT bytes_written 45774
STAT limit_maxbytes 536870912
STAT accepting_conns 1
STAT listen_disabled_num 0
STAT threads 4
STAT conn_yields 0
STAT hash_power_level 16
STAT hash_bytes 524288
STAT hash_is_expanding 0
STAT malloc_fails 0
STAT bytes 51944
STAT curr_items 54
STAT total_items 268
STAT expired_unfetched 0
STAT evicted_unfetched 0
STAT evictions 0
STAT reclaimed 0
STAT crawler_reclaimed 0
STAT lrutail_reflocked 0
END
$echo flush_all | nc 127.0.0.1 11211
OK
查看Memcached运行状态的命令是:echo stats | nc 127.0.0.1 11211
查看memcached状态的基本命令,通过这个命令可以看到如下信息:
STAT pid 22459 进程ID
STAT uptime 1027046 服务器运行秒数
STAT time 1273043062 服务器当前unix时间戳
STAT version 1.4.4 服务器版本
STAT pointer_size 64 操作系统字大小(这台服务器是64位的)
STAT rusage_user 0.040000 进程累计用户时间
STAT rusage_system 0.260000 进程累计系统时间
STAT curr_connections 10 当前打开连接数
STAT total_connections 82 曾打开的连接总数
STAT connection_structures 13 服务器分配的连接结构数
STAT cmd_get 54 执行get命令总数
STAT cmd_set 34 执行set命令总数
STAT cmd_flush 3 指向flush_all命令总数
STAT get_hits 9 get命中次数
STAT get_misses 45 get未命中次数
STAT delete_misses 5 delete未命中次数
STAT delete_hits 1 delete命中次数
STAT incr_misses 0 incr未命中次数
STAT incr_hits 0 incr命中次数
STAT decr_misses 0 decr未命中次数
STAT decr_hits 0 decr命中次数
STAT cas_misses 0 cas未命中次数
STAT cas_hits 0 cas命中次数
STAT cas_badval 0 使用擦拭次数
STAT auth_cmds 0
STAT auth_errors 0
STAT bytes_read 15785 读取字节总数
STAT bytes_written 15222 写入字节总数
STAT limit_maxbytes 1048576 分配的内存数(字节)
STAT accepting_conns 1 目前接受的链接数
STAT listen_disabled_num 0
STAT threads 4 线程数
STAT conn_yields 0
STAT bytes 0 存储item字节数
STAT curr_items 0 item个数
STAT total_items 34 item总数
STAT evictions 0 为获取空间删除item的总数
stats items
输出各个slab中的item信息。s
stats slabs
输出slab中更详细的item信息
stats sizes
输出所有item的大小和个数
stats cachedump <slab_id> <limit_num>
根据<slab_id>输出相同的<slab_id>中的item信息。<limit_num>是输出的个数,当<limit_num>为0是输出所有的item。
利用shell命令操作Memcached
1、数据存储(假设key为g,value为12345)
printf “set g 0 0 5\r\n12345\r\n”|nc 127.0.0.1 11211
STORED
2、数据取回(假设key为zhangyan)
printf “get g\r\n”|nc 127.0.0.1 11211
VALUE g 0 5
12345
END
3、数值增加1(假设key为g,并且value为正整数)
printf “incr g 1\r\n” | nc 127.0.0.1 11211
12346
4、数值减少3(假设key为g,并且value为正整数)
printf “decr g 3\r\n” | nc 127.0.0.1 11211
12343
5、数据删除(假设key为g)
printf “delete g\r\n” | nc 127.0.0.1 11211
DELETED
6、查看Memcached状态
printf “stats\r\n” | nc 127.0.0.1 11211
STAT pid 3025
STAT uptime 4120500
STAT time 1228021767
STAT version 1.2.6
STAT pointer_size 32
STAT rusage_user 433.463103
STAT rusage_system 1224.515845
STAT curr_items 1132460
STAT total_items 8980260
STAT bytes 1895325386
STAT curr_connections 252
STAT total_connections 547850
STAT connection_structures 1189
STAT cmd_get 13619685
STAT cmd_set 8980260
STAT get_hits 6851607
STAT get_misses 6768078
STAT evictions 0
STAT bytes_read 160396238246
STAT bytes_written 260080686529
STAT limit_maxbytes 2147483648
STAT threads 1
END
7、模拟top命令,查看Memcached状态:
watch “printf ‘stats\r\n’ | nc 127.0.0.1 11211″
或者
watch “echo stats | nc 127.0.0.1 11211″
一、echo stats items | nc127.0.0.1 11211
STAT items:1:number 998 Slab Id=1 ; items数量:998(也就是已经存储了998个key值)
STAT items:1:age 604348 Slab Id=1 ; 已经存在时间,单位秒
STAT items:1:evicted 0 Slab Id=1 ; 被踢出的数量
STAT items:1:evicted_nonzero 0
STAT items:1:evicted_time 0
STAT items:1:outofmemory 0
STAT items:1:tailrepairs 0
STAT items:1:reclaimed 0
STAT items:6:number 91897 Slab Id=6 ; items数量:91897(也就是已经存储了91897个key值)
STAT items:6:age 604345 Slab Id=6 ; 已经存在时间,单位秒
STAT items:6:evicted 0 Slab Id=6 ; 被踢出的数量
STAT items:6:evicted_nonzero 0
STAT items:6:evicted_time 0
STAT items:6:outofmemory 0
STAT items:6:tailrepairs 0
STAT items:6:reclaimed 0