57 votes

comment redémarrer/effacer memcache sans redémarrer tout le serveur web ?

/opt/eduserver/eduserver me donne des options :

Utilisation : /opt/eduserver/eduserver {départ|stop|startphp|startwww|startooo|stopphp|stopwww|stopooo|restartphp|restartwww|restartooo|status|restart|reload|force-reload}

où memcache est un module php, il y a memcache.ini en /opt/eduserver/etc/php/conf.d .

Je veux effacer le memcache en ligne de commande. Puis-je le faire sans toucher à aucune autre partie du serveur web ?

114voto

Rob Fisher Points 913

Oui. Vous pouvez effacer le memcache. Essayez :

telnet localhost 11211
flush_all
quit

si le memcache ne fonctionne pas sur localhost 11211, vous devrez l'ajuster.

45voto

Danie Points 1340

Cela fonctionnera également en utilisant netcat

echo "flush_all" | nc -q 2 localhost 11211 

Ensuite, il suffit d'attendre le "OK".

26voto

Paul Points 23

memcflush dans les outils memcache est ce que vous voulez :

memcflush --servers=localhost:11211

Changement localhost sur votre serveur, quel qu'il soit.

Les outils memcache peuvent ne pas être installés sur le serveur, si vous utilisez un système d'exploitation basé sur Debian, vous pouvez l'installer comme ceci :

sudo apt-get install libmemcached-tools

12voto

Zafar Points 241

En Bash, vous pouvez utiliser cette syntaxe fantaisiste :

echo flush_all > /dev/tcp/localhost/11211

Sinon, utilisez memflush commandement :

memflush --servers=localhost

4voto

paleotek Points 1

(sleep 2; echo flush_all; sleep 2; echo quit; ) | telnet 127.0.0.1 11211

si vous voulez l'exécuter de manière non interactive

grâce à @heiko

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X