You can invalidate all existing cache items using the flush_all command. This command does not pause the server, as it returns immediately. It does not free up or flush memory at all, it just causes all items to expire. You can send flush_all command using any one of the following method:
- nc command – The nc (also know as netcat) utility is used for just about anything under the sun involving TCP or UDP.
- telnet command – The telnet command is used to communicate with another host using the TELNET protocol.
netcat (nc) Command Example To Flush Contents Of Memcached Server
The nc (netcat) command is a simple unix utility which reads and writes data across network connections, using TCP or UDP protocol. It can simply connect to the memcached instance and and invalidate all existing cache:
echo 'flush_all' | nc localhost 11211
echo 'flush_all' | netcat localhost 11211
nc 192.168.1.10 11211<<<"flush_all"
- 192.168.1.10 – memcached server instance
- localhost – memcached server instance
- 11211 – memcached server port.
alias flush_mem_cache_server="echo 'flush_all' | netcat 127.0.0.1 11211"
And use it as follows:
Telnet Command Example To Flush Contents Of Memcached Server
Type the following command:
telnet your-memcached-server-ip PORT
In this example connect to 192.168.1.10 11211 and issue the flush_all command as follows:
$ telnet 192.168.1.10 11211
Trying 192.168.1.10... Connected to cache01.nixcraft.net.in. Escape character is '^]'. flush_all OK quit Connection to cache01.nixcraft.net.in closed by foreign host.
Use bash only to flush all the content from Memcached
The syntax is:
echo flush_all > /dev/tcp/127.0.0.1/11211