solr修改schema檔案(solr修改配置檔案)
最近在寫一個搜尋的專案,專案用的是solr,好在是自己修改的專案。不用從新搭建,不過裡面的schema肯定是需要修改的,網上找了找,沒有說的太詳細的內容,自己費盡調好之後,覺得還是跟大家分享一下。
(本文不是solr的教程,solr的使用和schema檔案的含義請自行學習)
1.檢視管理頁面,檢視配置檔案
此時的managed-schema的如上圖所示。示例:我們要新增一個欄位名稱
<field name="name" type="text_ik" indexed="true" stored="true" />
1.編輯好新的managed-schema檔案。
2.刪除solr伺服器上的managed-schema檔案,由與solr是zookeeper管理的,所以managed-schema檔案在zookeeper上,用zookeeper的客戶端
2.1啟動zookeeper客戶端./zhCli.sh。
2.2使用刪除命令delete managed-schema檔案路徑(根據上圖可知路徑在/configs/myconf/managed-schema )。
則:delete /configs/myconf/managed-schema
刪除後可檢視管理頁面如圖,確認已刪除
3.將編輯好的managed-schema檔案上傳至伺服器,原則上是上傳的路徑隨意,可是為了好管理,一般放在solrhome的配置目錄下,本專案放在/data/server/solrhome1/configsets/_default/conf
將新的managed-schema檔案更新到solr伺服器,此步驟solr提供了上傳指令碼用命令即可完成更新操作,
切換至solr-7.1.0/server/scripts/cloud-scripts目錄,使用命令:
./zkcli.sh -zkhost 192.168.99.126:2181,192.168.99.127:2181,192.168.99.128:2181 -cmd upconfig -confdir /data/server/solrhome1/configsets/_default/conf/managed-schema -confname myconf/managed-schema
粉色路徑是咱們新的managed-schema檔案路徑,藍色路徑是的相對路徑寫myconf/managed-schema(如下圖,驗證沒問題)
執行完命令後,檢視管理頁,新的欄位已經新增進去了。
5.重啟solr伺服器,即使managed-schema檔案修改了,不重啟是不會生效的,一定重啟solr所在的伺服器(如tomcat),重啟步驟tomcat/bin/下./shutdown.sh,再./start.sh即可。
注意:zookeeper下有個zkCli.sh,solr-7.1.0/server/scripts/cloud-scripts下有個zicli.sh,兩個檔案的使用的功能不同,不要混淆。(完)