Solr Control Script Reference (一)

Solr Control Script Reference

Solr包括名爲“bin/solr”的腳本,該腳本允許您在Solr安裝或集羣上執行許多常見操作。

您可以啓動和停止Solr、創建和刪除集合或核心、在ZooKeeper上執行操作以及檢查Solr和已配置碎片的狀態。

您可以在SOLR安裝的bin /目錄中找到腳本。bin/solr腳本通過提供簡單的命令和選項來快速實現共同的目標,使Solr更容易使用。

使用中的bin/solr的更多示例可以在Solr參考指南中找到,但是在Starting Solr和Getting Started with SolrCloud部分中尤其如此。

Starting and Stopping

開始命令開始SOLR。restart命令允許您在Solr已經運行或已經停止時重新啓動Solr。

start和restart命令有幾個選項,允許您在SolrCloud模式下運行,使用示例配置集,以非默認的主機名或端口開始,並指向本地ZooKeeper集成。

bin/solr start [options]

bin/solr start -help

bin/solr restart [options]

bin/solr restart -help

使用restart命令時,必須傳遞啓動Solr時最初傳遞的所有參數。在幕後,停止請求被啓動,因此Solr將在再次啓動之前停止。如果沒有節點已經運行,則重啓將跳過該步驟以停止並繼續啓動SOLR。

Start Parameters(啓動參數)

bin/solr腳本提供了許多選項,允許您以常見的方式定製服務器,例如更改偵聽端口。然而,大多數默認設置對於大多數Solr安裝都是足夠的,尤其是在剛開始安裝時。

  -a "<string>"

使用附加的JVM參數啓動Solr,例如以-X開頭的那些參數。如果傳遞以“-D”開頭的JVM參數,則可以省略-a選項。

bin/solr start -a "-Xdebug -Xrunjdwp:transport=dt_socket, server=y,suspend=n,address=1044"

-cloud

在SolrCloud模式下啓動Solr,它也將啓動Solr中包含的嵌入式ZooKeeper實例。

 

 

 

這個選項可以縮短到-c。

如果您已經運行了想要使用的ZooKeeper集成,而不是嵌入的(單節點)ZooKeeper,那麼您還應該在solr.sh/solr.in.cmd中指定ZK_HOST(參見指令)或者傳遞-z參數。

For more details, see the section SolrCloud Mode below.

bin/solr start -c

-d <dir>

定義一個服務器目錄,默認爲服務器(如在, $SOLR_HOME/server)。重寫這個選項是不常見的。當在同一主機上運行多個Solr實例時,更常見的做法是對每個實例使用相同的服務器目錄,並使用-s選項使用唯一的Solr主目錄。

bin/solr start -d newServerDir

-e <name>

使用示例配置啓動SOLR。提供這些示例是爲了幫助您更快地開始使用Solr,或者只是嘗試特定的特性。

可用的選項是:

cloud

techproducts

dih

schemaless

See the section Running with Example Configurations below for more details on the example configurations.https://lucene.apache.org/solr/guide/7_5/solr-control-script-reference.html#running-with-example-configurations

-f

在前臺啓動Solr;在使用-e選項運行示例時,不能使用此選項。

bin/solr start -f

-h <hostname>

用定義的主機名啓動SOLR。如果沒有指定,則假定“localhost”。

bin/solr start -h search.mysolr.com

-m <memory>

用定義的值作爲JVM的最小(-XMS)和最大(- Xmx)堆大小來啓動SOLR。

bin/solr start -m 1g

-noprompt

開始SOLR並禁止任何其他選項可以看到的提示。這將具有隱含地接受所有默認值的副作用。

例如,當使用“雲”示例時,交互式會話將指導您完成SolrCloud集羣的幾個選項。如果您想接受所有默認值,您可以簡單地將-noprompt選項添加到您的請求中。

bin/solr start -e cloud -noprompt

-p <port>

在啓動SOLR時定義的端口。如果沒有指定,將使用“8983”。

bin/solr start -p 8655

-s <dir>

設置 solr.solr.home系統屬性;Solr將在該目錄下創建核心目錄。這允許您在同一主機上運行多個Solr實例,同時使用-d參數重用相同的服務器目錄集。

如果設置了,指定的目錄應該包含solr.xml文件,除非在ZooKeeper.默認值是server/solr。

 

在運行(-e)時,該參數被忽略,因爲solr.solr.home取決於運行哪個示例。

 

-v

這將log4j的日誌級別從INFO更改爲DEBUG,其效果與您相應地編輯log4j2.xml的效果相同。

bin/solr start -f -v

-q

安靜點。這將log4j的日誌級別從INFO更改爲WARN,其效果與您相應地編輯log4j2.xml的效果相同。這在您希望限制日誌記錄到警告和錯誤的生產設置中很有用。

bin/solr start -f -q

-V

用啓動腳本中的冗長消息開始SOLR。

bin/solr start -V

-z <zkHost>

使用定義的zookeeper連接字符串啓動SOLR。此選項只與-c選項一起使用,在SolrCloud模式中啓動SOLR。如果在solr.sh/solr.in.cmd中沒有指定ZK_HOST,並且沒有提供該選項,那麼Solr將啓動嵌入式ZooKeeper實例,並將該實例用於SolrCloud操作。

 bin/solr start -c -z server1:2181,server2:218

-force

如果嘗試將Solr作爲根用戶啓動,則腳本將退出,並警告將Solr作爲“根”運行可能導致問題。可以使用此參數覆蓋這個警告。

sudo bin/solr start -force

要強調默認設置是如何工作的,需要一些時間來理解以下命令是等效的:

bin/solr start

bin/solr start -h localhost -p 8983 -d server -s solr -m 512m

如果默認值適合您的需要,那麼在開始時不必定義所有選項。

Setting Java System Properties

bin/solr腳本將通過從-D開始的任何附加參數傳遞給JVM,這允許您設置任意Java系統屬性。

例如,將自動軟提交頻率設置爲3秒,您可以這樣做:

bin/solr start -Dsolr.autoSoftCommit.maxTime=3000

SolrCloud Mode

-c和-cloud是等價的。

bin/solr start -c

bin/solr start -cloud

如果你指定一個zookeeper連接字符串,例如-z 192.168.1.4:2181,然後solr將會連接zookeeper加入集羣。

如果在solr.in.sh/solr.in.cmd中定義了ZK_HOST(參見說明),那麼所有bin/solr命令中將會省略-z<zk主機字符串>。

當在雲模式下啓動Solr時,如果您既沒有在`solr.in.sh`/`solr.in.cmd`中定義`ZK_HOST'也沒有指定`-z'選項,那麼Solr將啓動在Solr端口+1000上監聽的嵌入式ZooKeeper服務器,即,如果Solr在端口8983上運行,則嵌入式ZooKeeper將監聽。端口9983。

如果ZooKeeper連接字符串使用chroot,比如localhost:2181/solr,那麼您需要在使用bin/solr腳本啓動SolrCloud之前創建/solr znode。(If your ZooKeeper connection string uses a chroot, such as localhost:2181/solr, then you need to create the /solr znode before launching SolrCloud using the bin/solr script.)

 To do this use the mkroot command outlined below, for example: bin/solr zk mkroot /solr -z 192.168.1.4:2181。

在SolrCloud模式下啓動時,交互式腳本會話將提示您選擇要使用的配置集。

有關在SolrCloud模式下啓動Solr的更多信息,請參閱開始使用SolrCloud一節。

Running with Example Configurations

bin/solr start -e <name>

示例配置允許您快速開始使用鏡像您希望用Solr實現的配置。

每個示例使用託管模式(a managed schema)啓動Solr,該模式允許使用Schema API進行模式編輯,但是不允許手動編輯Schema文件。

如果希望直接手動修改schema.xml文件,則可以按照SolrConfig中的Schema Factory Definition一節中的描述更改此默認值。

https://lucene.apache.org/solr/guide/7_5/schema-factory-definition-in-solrconfig.html#schema-factory-definition-in-solrconfig

除非在下面的描述中另有說明,否則示例不啓用SolrCloud或無模式模式。

提供以下示例:

cloud:

  這個例子是在單臺機器上開啓1-4個節點集羣。在啓動的時候有一個交互的回話指導你選擇初始的配置集合,你例子集羣中節點的數量,使用的端口,創建的集合名字。

 在使用這個例子的時候,你能夠選擇在$SOLR_HOME/server/solr/configsets中選擇任意有效的配置集。

techproducts

本示例以獨立模式啓動Solr,模式是爲$SOLR_HOME/example/exampledocs目錄中包含的示例文檔設計的。

使用的配置集可以在$SOLR_HOME/server/solr/configsets/sample_techproducts_configs找到。

dih:

本示例在獨立模式下啓動Solr,啓用了DataImportHandler(DIH),並且爲DIH支持的不同類型數據(例如,數據庫內容、電子郵件、RSS提要等)預先配置了幾個示例dataconfig.xml文件。

使用的配置集是爲dih定製的,並且在$SOLR_HOME/example/example-DIH/solr/conf。

有關DIH的更多信息,請參見

https://lucene.apache.org/solr/guide/7_5/uploading-structured-data-store-data-with-the-data-import-handler.html#uploading-structured-data-store-data-with-the-data-import-handler

Schemaless:

本示例使用託管模式以獨立模式啓動Solr,如SolrConfig中的Schema Factory Definition一節所述,並提供一個非常小的預定義模式。Solr將使用此配置在無模式模式下運行,其中Solr將在模式中動態創建字段,並猜測傳入文檔中使用的字段類型。

可以使用所使用的配置集:$SOLR_HOME/server/solr/configsets/_default

前臺運行選項(-f)與-e選項不兼容,因爲腳本在啓動Solr服務器之後需要執行其他任務。

Stop

stop命令向正在運行的Solr節點發送STOP請求,允許它優雅地關閉。命令將等待多達180秒讓Solr優雅地停止,然後強制終止進程(kill-9)。

bin/solr stop [options]

bin/solr stop -help

Stop Parameters

-p <port>

停止在給定端口上運行Solr。如果正在運行多個實例,或者正在SolrCloud模式下運行,則需要在單獨的請求中指定端口,或者使用-all選項。

-all

Stop all running Solr instances that have a valid PID.】

停止運行所有具有有效PID的SOLR實例。

 bin/solr stop -all

-k <key>

Stop key used to protect from stopping Solr inadvertently; default is "solrrocks".

Example: bin/solr stop -k solrrocks

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章