1. 程式人生 > >solr修改schema檔案(solr修改配置檔案)

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的客戶端

即可刪除執行的managed-schema檔案。

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.shsolr-7.1.0/server/scripts/cloud-scripts下有個zicli.sh,兩個檔案的使用的功能不同,不要混淆。(完)