Is there any command line or php script which returns the memcached total memory usage?
5 Answers
As Mike said, you can look at the line including the "STAT bytes" to see memory usage:
$ echo "stats" | nc -w 1 <host> <port> | awk '$2 == "bytes" { print $2" "$3 }'
-
1Leaving that for future reference: The default host/port is: 127.0.0.1:11211– MoriturFeb 8, 2017 at 12:25
-
So just type in console: echo "stats" | nc -w 1 localhost 11211 | awk '$2 == "bytes" { print $2" "$3 }'– jobimaApr 17, 2020 at 8:11
-
1More verbose
echo "stats" | nc -w 1 localhost 11211 | awk '$2 ~ "bytes" { print $2" - "$3/1024/1024 " MB" }'
Dec 4, 2021 at 6:21
memcache's default port is 11211 so if memcache is local
telnet localhost 11211
Then run the stats command and that will spit out memory usage
stats
-
1Thanks for the telnet tip, but what should I really read in there? I see STAT bytes 9857275 STAT curr_items 43599 STAT total_items 1048925 and I have the impression that my memcached is never filling up...– StefanoDec 6, 2011 at 22:13
-
6
I personally use PhpMemcacheAdmin
http://code.google.com/p/phpmemcacheadmin/
It creates an easy to use GUI. Of course you'll need to have PHP support.
-
The site has moved to : blog.elijaa.org/phpmemcachedadmin-download-version-1-2-2 Aug 16, 2016 at 11:34
-
2
Another alternative to answer @mike,
echo "stats" | nc localhost 11211
#or
echo "stats settings" | nc localhost 11211
If you are using php:
$m = new Memcached();
$m->addServer('localhost', 11211);
echo $m->getStats()['localhost:11211']['bytes'];