【问题标题】:How to stop solr with command line如何使用命令行停止 solr
【发布时间】:2011-12-20 01:08:59
【问题描述】:

我想通过命令停止 solr 所以如果找到这篇文章

http://rc98.net/solrinit

echo "Stopping Solr"
        cd $SOLR_DIR
        java -Xmx1024m -DSTOP.PORT=8079 -DSTOP.KEY=stopkey -jar start.jar --stop

什么是 Xmx1024m?

在哪里可以找到 DSTOP.KEY ?

请通过命令行告诉正确的程序来启动和停止solr。

【问题讨论】:

    标签: solr


    【解决方案1】:

    solr stop -all # 停止所有端口

    solr stop -p 8983 # 停止特定端口

    如果它显示错误ERROR: Port 8983 is already being used by another process.,请通过Ctrl-C 终止运行 Solr 的控制台窗口,然后尝试上述选项之一。因为杀死控制台窗口并不会停止服务。

    【讨论】:

    • 我喜欢 stop -all 方法,请注意如果你在根文件夹中,它将是 bin/solr stop -all
    • 这就是答案。谢谢!
    【解决方案2】:

    如果 rake sunspot:solr:stop 不起作用,这对我有用

    ps -ef | grep solr

    然后使用返回的信息

    sudo kill <process_id>

    示例:

    sudo kill 792

    【讨论】:

      【解决方案3】:

      您可以运行(其中 8983 是默认的 solr 端口)

      lsof -i :8983
      

      这将返回 PID#,然后使用

      kill -9 PID#
      

      杀死那个 pid(不带哈希运行它)

      【讨论】:

      • 这对我也有用。无法获得接受的工作答案。
      • 或:“fuser -k 8983/tcp”(见:stackoverflow.com/a/11596144/2265487)并在 .bashrc 中包含一个别名以方便使用: alias solr_stop='fuser -k 8983/tcp'
      • 这真是个坏主意!!为什么不先使用kill(没有-9)让Solr 有机会干净地关闭。 STOP.PORT 方法是最安全的,但 killing 它通常也可以正常工作。使用kill -9,您可能会面临索引损坏和丢失所有数据的风险。
      【解决方案4】:

      对于本地操作,您可以通过在控制台窗口中按 Ctrl-c 来终止 Solr 服务器 您在其中启动了 Solr。通常,这对于开发和测试来说足够安全

      【讨论】:

        【解决方案5】:

        -XmX1024m - 是 java 参数并指定最大 java 堆大小,在您的情况下设置为 1 GB。

        stopkey 是启动时的密钥,它也必须出现在终止请求中以增强安全性。

        可以找到详细解释@http://docs.codehaus.org/display/JETTY/Securing+Jetty

        示例 -

        使用 Jetty 启动 solr -

        java -DSTOP.PORT=8079 -DSTOP.KEY=mysecret -jar start.jar
        

        使用 Jetty 停止 Solr -

        java -DSTOP.PORT=8079 -DSTOP.KEY=mysecret -jar start.jar --stop
        

        STOP.KEY 是在停止命令期间应匹配的密钥。

        【讨论】:

        • 我无法停止,你能一步一步解释我需要做什么来启动 solr 和停止 solr 吗?
        • 更新了答案。请努力阅读答案中提到的简单文档。那里很清楚地提到了。
        • 当我在示例目录中停止 solr 后运行 java -DSTOP.PORT=8079 -DSTOP.KEY=mysecret -jar start.jar 它说地址已在使用中并且不启动 solr,什么可以的
        • 命令工作正常,停止命令停止进程和未绑定的地址。检查停止命令何时执行,您是否完全停止了码头并且没有其他码头进程在运行。
        • 我在 hbase 和 hadoop 中运行了其他码头,所以它们如何反映在 solr 的码头中,为什么我要停止 hbase,我该如何继续
        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2013-03-09
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-11-15
        相关资源
        最近更新 更多