/opt/eduserver/eduserver
me dá opções:
Uso: / opt / eduserver / eduserver {start | stop | startphp | startwww | startooo | stopphp | stopwww | stopooo | restartphp | restartwww | restartooo | status | restart | recarregar | force-reload}
onde memcache é o módulo php existe memcache.ini
no /opt/eduserver/etc/php/conf.d
.
Quero limpar o memcache na linha de comando. Posso fazer isso de alguma forma sem 'tocar' em qualquer outra parte do servidor da web?
Isso também funcionará usando o netcat
Depois é só aguardar o "OK".
fonte
printf "flush_all\nquit\n" | nc -q -1 127.1 11211
echo "flush_all" | nc -w 2 localhost 11211
printf "flush_all" | nc localhost 11211
memcflush
nas ferramentas do memcache é o que você deseja:Mude
localhost
para qualquer que seja o seu servidor.As ferramentas do memcache podem não estar instaladas no servidor, se você estiver executando um sistema operacional baseado no Debian, poderá instalá-lo assim:
fonte
libmemcached
.No Bash, você pode usar esta sintaxe sofisticada:
Caso contrário, use o
memflush
comando:fonte
Em vez de aguardar o tempo limite, você pode tornar o comando instantâneo seguindo
flush_all
oquit
comando:printf "flush_all\r\nquit\r\n" | nc localhost 11211
Alternativamente, se você não tiver
nc
:printf "flush_all\r\nquit\r\n" > /dev/tcp/127.0.0.1/11211
Embora esse método não produza uma saída, você pode verificar se funciona, verificando
stats
se elecmd_flush
aumentou.fonte
(sleep 2; echo flush_all; sleep 2; echo quit; ) | telnet 127.0.0.1 11211
se você quiser executá-lo de maneira não interativa
graças a @heiko
fonte
nc. Note that I worked fine for me without either the initial
sleep` ou a finalquit
. Eu fiz( echo 'flush_all' ; sleep 2 ) | telnet myhost.fqdn.com 11211
Caso você use um soquete para conectar-se ao memcached, a sintaxe é
echo "flush_all" | nc -U ~/memcached.sock
fonte