memflush¶
DESCRIPTION¶
memflush resets the contents of memcached(1) servers.
Warning
This means that all data in the specified servers will be deleted.
OPTIONS¶
-
--help
¶
Display help.
-
--version
¶
Display version.
-
--quiet
¶
Operate quietly.
-
--verbose
¶
Operate more verbosely.
-
--servers
<list of servers>
¶ Specify the list of servers as hostname[:port][,hostname[:port]...].
-
--binary
¶
Enable binary protocol.
-
--username
<username>
¶ Use username for SASL authentication.
-
--password
<password>
¶ Use password for SASL authentication.
-
--expire
<expiration>
¶ Use expiration seconds (or a UNIX timestamp).
Note
Using an expiration time (period), all keys, which have not bean updated until expiration will cease to exist.
Quoting the memcached protocol documentation, it states:
Its effect is to invalidate all existing items immediately (by default) or after the expiration specified. After invalidation none of the items will be returned in response to a retrieval command (unless it's stored again under the same key after flush_all has invalidated the items).
The most precise definition of what flush_all does is the following: it causes all items whose update time is earlier than the time at which flush_all was set to be executed to be ignored for retrieval purposes.
The intent of flush_all with a delay, was that in a setting where you have a pool of memcached servers, and you need to flush all content, you have the option of not resetting all memcached servers at the same time (which could e.g. cause a spike in database load with all clients suddenly needing to recreate content that would otherwise have been found in the memcached daemon).