Graham King

Solvitas perambulum

Memcached: List all keys

software memcached
Summary
To list some of the keys stored in a memcached instance for development purposes, telnet to your server using `telnet 127.0.0.1 11211`. Then, obtain the slab IDs by running `stats items`. For each slab ID, request a cache dump with a limited number of keys using `stats cachedump <slab_id> <limit>`. For example, `stats cachedump 3 100` and `stats cachedump 22 100` will show up to 100 keys from slabs 3 and 22 respectively. This method allows you to see a subset of keys stored in memcached.

In the general case, there is no way to list all the keys that a memcached instance is storing. You can, however, list something like the first 1Meg of keys, which is usually enough during development. Here’s how:

Telnet to your server:

telnet 127.0.0.1 11211

List the items, to get the slab ids:

stats items
STAT items:3:number 1
STAT items:3:age 498
STAT items:22:number 1
STAT items:22:age 498
END

The first number after ‘items’ is the slab id. Request a cache dump for each slab id, with a limit for the max number of keys to dump:

stats cachedump 3 100
ITEM views.decorators.cache.cache_header..cc7d9 [6 b; 1256056128 s]
END

stats cachedump 22 100
ITEM views.decorators.cache.cache_page..8427e [7736 b; 1256056128 s]
END

Thanks to Boris Partensky in the Memcached group here

There you go!