使用的版本為solr 4.9
使用樣例
http://172.168.63.233:8983/solr/admin/cores?action=status
http://172.168.63.233:8983/solr/admin/cores?action=status&core=collection3
需要提供corename、執行個體路徑、config配置、schema檔案及資料目錄 ,
其中instancedir必須要. config, schema & datadir 可選
http://172.168.63.233:8983/solr/admin/cores?action=create&name=core4&instancedir=/home/solr/solrhome/core4/&config=solrconfig.xml&schema=schema.xml&datadir=data
http://172.168.63.233:8983/solr/admin/cores?action=create&name=core4&instancedir=/home/solr/solrhome/core5
需要預先建立instancedir指定的目錄,并複制其他core的conf到此目錄
solr4.3 支援兩個可選的參數
loadonstartup=[true|false] - 決定當solr啟動或者等待當第一次引用是是否需要載入core.
transient=[true|false] - 決定當一些瞬時的core超出了瞬時core的緩存大小時是否需要自動的解除安裝,可以指定在core标簽中
http://172.168.63.233:8983/solr/admin/cores?action=reload&core=collection2
當solrconfig.xml或者schema.xml檔案改變(新增字段、預設參數改變等)需要重新加載,但不要停止或者重新開機整個servlet容器的時候使用。
http://172.168.63.233:8983/solr/admin/cores?action=rename&core=core4&other=core44
在存在的兩個core上使用交換指令,主要使用者将新core放在"ondeck中",将原來的core友善你執行roll-back等操作
http://172.168.63.233:8983/solr/admin/cores?action=swap&core=core1&other=core0
http://172.168.63.233:8983/solr/admin/cores?action=mergeindexes&core=core0&srccore=core1&srccore=core2
上面指令是将core1和core2的索引合并到core0中,其中資料路徑定義在admin/solr.xml中
note
1.在執行這條指令之前,必須確定在core1和core2上調用了commit操作(保證關閉indexwriter)同時在core1和core2之間沒有任何的在操作完成之前沒有任何的寫操作。
2.不能合并太多的索引會導緻core0的索引會崩潰,另外一旦索引完成要確定搜尋在 core0上進行搜尋
3.如果不存在core0,也不會建立新的core0。是以,必須保證core0必須存在同時能夠相容core1和core2,
另外,在solr3.3以後, coreadminhandler 同樣至此傳遞路徑的core方案. 在之前的版本中通過indexdir指定
http://localhost:8983/solr/admin/cores?action=mergeindexes&core=core0&indexdir=/opt/solr/core1/data/index&indexdir=/opt/solr/core2/data/index
從 solr4.3 後将索引分離兩個或多個索引,它接受下面的參數
"core" - 該core下的索引将要被拆分
"path" - 分拆到多個索引的位置參數
"targetcore" - 目标core,必須存在指定合并的位置
注意path和tartgetcore必須指定其中一個,兩個都指定不是必須的
http://localhost:8983/solr/admin/cores?action=split&core=core0&targetcore=core1&targetcore=core2
http://localhost:8983/solr/admin/cores?action=split&core=core0&path=/path/to/index/1&path=/path/to/index/2
這個指令通常作為solrcloud分離shard集合的api,同時也可以在非solrcloud-solr下使用,當使用了非cloud core這樣原索引将分離成等量的多個索引文檔
http://172.168.63.233:8983/solr/admin/cores?action=unload&core=collection1
http://172.168.63.233:8983/solr/admin/cores?action=unload&core=collection2&deleteindex=true
deleteindex 主要使用于删除解除安裝的core的索引
deletedatadir 删除資料及子檔案
deleteinstancedir 删除執行個體目錄,删除所有與這個core相關的檔案比如索引檔案、配置檔案等,注意這裡也有一個bug在你需要指定絕對路徑才能做到