有時候咱們須要shard不存在replica的時候作測試。好比下面的狀況。node
如今咱們每一個shard保留一個副本。async
咱們能夠用unloud命令測試
下線spa
http://slave3:8983/solr/admin/cores?action=UNLOAD&core=ZGCPWSWCORE2_shard1_replica2.net
重啓blog
http://slave3:8983/solr/admin/cores?action=RELOAD&core=ZGCPWSWCORE2_shard1_replica2索引
發現此時重啓,不能發現這個core,這裏注意,unload並非下線,而是卸載。說明這個索引已經被卸載了,刪除了,好比用下面的方法:rem
建立同步
http://slave3:8983/solr/admin/cores?action=CREATE&name=ZGCPWSWCORE2_shard1_replica2&collection=ZGCPWSWCORE2&shard=shard1it
此時他會自動同步索引。
問題:咱們需求是暫時下線core,等會又上線。並非刪除,查看core的操做。參考:
http://blog.csdn.net/a925907195/article/details/45421529
裏面有下線core
6.下線core
官方示例:http://localhost:8983/solr/admin/cores?action=UNLOAD&core=core0
可選參數:
1. deleteIndex: if true, will remove the index when unloading the core.
· deleteDataDir: if true, removes the data directory and all sub-directories.
· deleteInstanceDir: if true, removes everything related to the core, including the index directory, configuration files, and other related files.
· async: if set to a value, makes the call asynchronous. This call can then be tracked using the REQUESTSTATUS API.
因此,只有加上參數,纔會刪除數據。咱們用
http://slave3:8983/solr/admin/cores?action=UNLOAD&core=ZGCPWSWCORE2_shard1_replica2
並無刪除數據,必定是作了一個標誌,進入管理界面。
右上角:Instance:/var/lib/solr/ZGCPWSWCORE2_shard2_replica2
當此節點沒下線的時候,進入這個文件夾:輸入ll
drwxr-xr-x 2 solr solr 4096 May 16 15:51 ./
drwxr-xr-x 15 solr solr 4096 May 16 15:52 ../
-rw-r--r-- 1 solr solr 171 Mar 28 09:57 core.properties
打開core.properties
#Written by CorePropertiesLocator
#Mon Mar 28 09:57:27 CST 2016
numShards=5
name=ZGCPWSWCORE2_shard2_replica2
shard=shard2
collection=ZGCPWSWCORE2
coreNodeName=core_node2
這個core的信息。如今把這個core下線:
http://master:8983/solr/admin/cores?action=UNLOAD&core=ZGCPWSWCORE2_shard2_replica2
進入/var/lib/solr/ZGCPWSWCORE2_shard2_replica2
會發現
drwxr-xr-x 2 solr solr 4096 May 16 15:50 ./
drwxr-xr-x 15 solr solr 4096 Mar 30 16:19 ../
-rw-r--r-- 1 solr solr 171 Mar 28 09:57 core.properties.unloaded
這裏作了一個標記,用 mv core.properties.unloaded core.properties
從新啓動solr服務,就會找到這個core了。