如何重新启动/清除memcache而不重新启动整个Web服务器?

/opt/eduserver/eduserver为我提供了以下选项:

用法:/ opt / eduserver / eduserver {start | stop | startphp | startwww | startooo | stopphp | stopwww | stopooo | restartphp | restartwww | restartooo | status | restart | reload | force-reload}

其中memcache是​​php模块,在/opt/eduserver/etc/php/conf.dmemcache.ini

我想从命令行清除memcache。 我能不能“触摸”networking服务器的任何其他部分?

    是。 您可以清除内存caching。 尝试:

     telnet localhost 11211 flush_all quit 

    如果memcache不在本地主机11211上运行,则必须对其进行调整。

    这也将使用netcat

     echo "flush_all" | nc -q 2 localhost 11211 

    然后等待“OK”。

    memcache工具中的memcflush是你想要的:

     memcflush --servers=localhost:11211 

    localhost更改为您的服务器。

    如果您运行的是基于Debian的操作系统,则可以不在服务器上安装memcache工具,您可以像这样安装它:

     sudo apt-get install libmemcached-tools 

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

    如果你想非交互式地运行它

    感谢@heiko

    在Bash中,你可以使用这个花哨的语法:

     echo flush_all > /dev/tcp/localhost/11211 

    否则使用memflush命令:

     memflush --servers=localhost