memcached-cli - Interactive/Batch CLI for Memcached
Run an interactive CLI:
memcached-cli <HOST[:PORT] | /path/to/socket> [OPTIONS]
memcached-cli --addr|-a <HOST[:PORT] | /path/to/socket> [OPTIONS]
memcached-cli [OPTIONS] # Connect to 127.0.0.1:11211
These above turns into interactive mode like below:
memcached@SERVER:PORT>
memcached@SERVER:PORT> set foo Foo
OK
memcached@SERVER:PORT> add bar Bar 300
OK
memcached@SERVER:PORT> gets foo bar
Key:foo Value:Foo Length:3B Flags:0 Cas:219
Key:bar Value:Bar Length:3B Flags:0 Cas:220
memcached@SERVER:PORT> \cd 1 # Alias of 'cachedump'
Key:foo Value:Foo Length:3B Expire:2016-03-26 00:30:27 Flags:0 Cas:219
Key:bar Value:Bar Length:3B Expire:2016-03-26 09:53:19 Flags:0 Cas:220
Key:baz Value:Baz Length:3B Expire:2016-03-26 10:49:05 Flags:123 Cas:221
memcached@SERVER:PORT> delete foo
OK
memcached@SERVER:PORT> flush_all
OK
memcached@SERVER:PORT> \q # Quit interactive mode
Run as batch script:
memcached-cli [options] <command> [<args>]
Show Help/Manual:
# For general usage
memcached-cli -h|--help
memcached-cli --man
# For available commands
memcached@SERVER:PORT> help
memcached@SERVER:PORT> help <command>
This script runs an interactive CLI or batch utility for Memcached.
In interactive mode, it connects to a specified Memcached server and interactively executes each command you run.
In batch mode, you can execute any command which you can do in interactive mode.
NOTE:
A couple of features of following commands derives from memcached/memcached-tool
-
display|\d
Displays slabs statistics.
This command comes from memcached/memcached-tool.
-
stats|\s REGEXP
Shows general statistics of memcached server by
stats
command. You can filter the parameters of stats by optional REGEXP argument.Comes from memcached/memcached-tool.
-
settings|config|\c REGEXP
Shows memcached server settings by
stats settings
command. You can filter the parameters of stats by optional REGEXP argument.Comes from memcached/memcached-tool, too.
-
cachedump|\cd CLASS [NUMBER]
Shows detailed information including expiration times of some items in specified slab CLASS.
You can specify NUMBER of items to show. Without NUMBER option, shows 20 items only by default.
-
detaildump|\dd
Reports statistics about data access using KEY prefix. The default separator for prefix is ':'.
If you have not enabled reporting at Memcached start-up, you can enable it by command
detail on
.See man memcached(1) for details.
-
detail MODE
Enables or disables stats collection for
stats detail dump
reporting.MODE should be either "on" or "off" to enable or to disable.
-
dump_all
Dumps whole data in Memcached server.
This command comes from memcached/memcached-tool.
Recommended to use in batch mode like bellow:
memcached-cli SERVER:PORT dump_all > /path/to/dump.txt
-
restore_dump FILE
Restore data from dump data file created by
dump_all
. -
randomset|sample [NUMBER [MAX_LENGTH [MIN_LENGTH [NAMESPACE]]]]
Generates random sample data and SET all of them.
By default, it generates 100 data whose length is between 1B and 1000kB with prefix "memcached-cli:sample";
-
get KEY1 [KEY2 ...]
Gets items in memcached by specified KEYs and shows their data.
-
gets KEY1 [KEY2 ...]
Gets items with CAS data in memcached by specified KEYs and shows their data.
-
set KEY VALUE [EXPIRE [FLAGS]]
Stores data into memcached by specified KEY, VALUE and optional EXPIRE and FLAGS.
-
add KEY VALUE [EXPIRE [FLAGS]]
Stores data into memcached by specified KEY, VALUE and optional EXPIRE and FLAGS only when there is NO data with the same KEY in the server.
-
replace KEY VALUE [EXPIRE [FLAGS]]
Stores data into memcached by specified KEY, VALUE and optional EXPIRE and FLAGS only when there IS data with the same KEY in the server.
-
append KEY VALUE
Appends VALUE after existing data in memcached which has specified KEY.
-
prepend KEY VALUE
Puts VALUE before existing data in memcached which has specified KEY.
-
cas KEY VALUE CAS [EXPIRE [FLAGS]]
Stores data into memcached by specified KEY, VALUE and optional EXPIRE and FLAGS only when CAS of data is not changed from specified CAS value.
-
touch KEY EXPIRE
Update data expiration time with specified KEY and EXPIRE.
-
incr KEY VALUE
Add numeric VALUE for a data with specified KEY.
-
decr KEY VALUE
Subtract numeric VALUE from a data with specified KEY.
-
delete KEY
Deletes one item in memcached by specified KEY.
-
flush_all|flush [DELAY]
Invalidates all data in memcached by
flush_all
command.With DELAY option, invalidation is delayed for specified seconds.
See official documentation of memcached for details.
-
call COMMAND [ARGS ...]
Executes any commands given as arguments.
With this command, you can execute any command against Memcached including what is not implemented as normal commands in this program.
Here are some examples:
> call stats conns > call slabs reassign 6 10 > call flush_all
LIMITATION:
Multi-lined queries like
set
are not supported. -
version
Shows memcached server version.
-
quit|exit|\q
Exits program in interactive mode.
-
help|\h [COMMAND]
Shows available COMMANDs and summary of their usage.
With optional COMMAND argument, shows detailed information of it.
-
-t|--timeout=Int
Sets connection timeout. Default is 1 seconds.
-
-d|--debug
Shows debug logs.
App::Memcached::CLI::Main, memcached(1), http://www.memcached.org/
IKEDA Kiyoshi progrhyme@gmail.com
Copyright (C) 2015-2017 IKEDA Kiyoshi.
This library is free software; you can redistribute it and/or modify it under the same terms as Perl itself. That means either (a) the GNU General Public License or (b) the Artistic License.