php中获取memcache所有key,6. memcache获取所有的key及value

0. 特别注意:通过cachedump命令只能获取1M的数据,无法获取更多的数据。

1. 命令行来查看memcache的key及取值stats slabs 查看有哪些slab

STAT 18:chunk_size 4544

STAT 18:chunks_per_page 230

STAT 18:total_pages 1

STAT 18:total_chunks 230

STAT 18:used_chunks 0

STAT 18:free_chunks 7

STAT 18:free_chunks_end 223

STAT 18:mem_requested 18446744073709551411

STAT 18:get_hits 777

STAT 18:cmd_set 103

STAT 18:delete_hits 0

STAT 18:incr_hits 0

STAT 18:decr_hits 0

STAT 18:cas_hits 0

STAT 18:cas_badval 0

stats cachedump slab_id limit

将slab为slab_id的数据展示出来。 limit是展示的个数,如果取值为0, 则不作限制(其实是限制了1m)

2. php代码来获取<?php

$mcobj = new Memcache();

$mcobj->addServer('xxx',9150);

$to_mcobj = new Memcache();

$to_mcobj->addServer('xxx', 21212);

$allSlabs = $mcobj->getExtendedStats('slabs');

$items = $mcobj->getExtendedStats('items');

foreach ($allSlabs as $server => $slabs) {

foreach ($slabs as $slabId => $slabMeta) {

$cdump = $mcobj->getExtendedStats('cachedump', (int)$slabId, 0);

foreach ($cdump as $keys => $vals) {

foreach ((array)$vals as $k => $v) {

$real_val = $mcobj->get($k);

$set_res = $to_mcobj->set($k, $real_val);

error_log('|slabId='.$slabId.'set--'.'|key='.$k.'|val='.json_encode($real_val).'|res='.$set_res."n",3,'/tmp/yk.log');

}

}

}

}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值