"

泛亚电竞|官网拥有全球最顶尖的原生APP,每天为您提供千场精彩体育赛事,泛亚电竞|官网更有真人、彩票、电子老虎机、真人电子竞技游戏等多种娱乐方式选择,泛亚电竞|官网让您尽享娱乐、赛事投注等,且无后顾之忧!

"
首頁 > solr 6.1.0 的配置及簡單使用

solr 6.1.0 的配置及簡單使用

互聯網 2021-04-12 00:25:58

第一部分 配置部分

? ? ?jdk 1.8 ?+ ?solr 6.1.0 + php擴展 2.4.0

? ? ?jdk路徑: ??/usr/local/solr

? ? ?php路徑: ?/usr/local/php-5.6.21

? ? ?solr路徑: ?/usr/local/solr

? ? ? 一、 java的配置

? ? ? ? ?由于solr是基于Lucene Java, 那么就需要在java環境運行。

java -version ?#查看當前 java 版本

?

如果版本號低 了,那么需要使用 1.8.0 以上的版本

A. 卸載之前的版本

? ? ? rpm -qa | grep jdk ?# 獲取安裝的版本

B. 下載jdk 1.8.0

? ? ? 官網:?http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

我下載的是 ? ?jdk-8u91-linux-x64.tar.gz ? 版本為 ?1.8.0_91

?

解壓安裝命令

tar zxvf ??jdk-8u91-linux-x64.tar.gz?

mv jdk1.8.0_91/ ?/usr/local/jdk ? ?# 我是安裝在 /usr/local/jdk目錄

?

修改 vi ?/etc/profile,在最后加入

export JAVA_HOME="/usr/local/jdk" export CLASS_PATH="$JAVA_HOME/lib:$JAVA_HOME/jre/lib" export PATH=".:$PATH:$JAVA_HOME/bin"

source /etc/profile ? ? #保存使生效

?

java -version ?#查看版本號

? ? ??

二、 solr的安裝 ?

?solr ?官方下載地址?http://lucene.apache.org/solr/mirrors-solr-latest-redir.html

?

tar zxvf ?solr-6.1.0.tgz

mv solr-6.1.0 ?/usr/local/solr ? #安裝目錄是 /usr/local/solr

執行命令 ? ?/usr/local/solr/bin/solr start

?

下面可以通過 ?ip:8983/solr 訪問后臺

?

三、 php擴展solr

php 擴展 ?下載 ???http://pecl.php.net/package/solr

? ? 這里是 ???solr-2.4.0.tgz

?

? ? ?tar ?zxvf??solr-2.4.0.tgz

? ? ?cd??solr-2.4.0

? ? ?/usr/local/php-5.6.21/bin/phpize

? ? ./configure ?-with-php-config=/usr/local/php-5.6.21/bin/php-config

? ?# 這里的 ?-with-php-config后面的路徑根據自己php的路徑? ??

make && make install

? ??? ? 將 extension=solr.so 加入 php.ini 配置文件中

?

?phpinfo中可以看到 表示成功

?

?

第二部分 solr 配置

? ? ? ? 目標: ?通過用戶昵稱(中英文),搜索出用戶信息

? ? ? ? 實現: 需要建立一個 userinfo庫,

? ? ? ? 字段: ?id(用戶id), title(用戶中文名:張三), allSpell(中文轉全拼:zhangsan), firstSpell(拼音首字母:zs)

? ? ? ? ?

第一步: ?userinfo目錄的建立

? 在 ?/usr/local/solr/server/solr下 ? 建立下面

? userinfo ? ? ? ? ? ?建立文件夾 ? ? ??

? userinfo/conf ? ?建立文件夾 ? ?(配置文件夾)

? userinfo/data ? ?建立文件夾 ? ? (數據文件夾)

? userinfo/core.properties ?建立文件(聲明文件)

?

第二步: 將example 的conf ?拷貝 與 core.properties ?配置

?A. ??cp -rf ??/usr/local/solr/example/example-DIH/solr/solr/conf/* ? ? ?/usr/local/solr/server/solr/userinfo/conf

B. 編輯 ?core.properties ?加入?name=userinfo,其它不用寫

?

第三步: 配置?managed-schema ,加入所需字段

vi ?/usr/local/solr/server/solr/userinfo/conf/managed-schema ?

?

A. 注釋或是刪除掉 field部分節點(name="id" ?至 ?name="content"間) ?

? ? 只保留 ?_root_ 、 ?_version_ 、 content 、 text

? ? 其中id 建議保留,作為索引,也可以刪除

B.?刪除掉或注釋掉所有的 ? ?copyField 節點,因為這部分也是默認模板中自帶的字段

C. 加入字段 在 A步位置

?

?

?

?

?

字段說明:

name:字段名稱

type:字段類型

indexed:是否索引 ?true

stored:是否保存?

required:是否必須

multiValuer:在同一篇文檔中可以有多個值

omitNorms:true的話忽略norms

termVectors:默認false,如果是true的話,要保存字段的termvector

termPositions:保存term vector的位置信息

termOffects:保存term vector的偏移信息

default:字段的默認值

?

?

這里可以通過后臺進行添加字段, 并不需要重啟solr

?

D.?修改 ??managed-schema 文件后,需要重啟 solr才能生效

ps -ef ?| grep ?solr ? #獲取solr 運行進程號

kill ?進程號

/usr/local/solr/bin/solr start

訪問后臺

可以痛過后臺去驗證下,是否已經存在 字段

選擇 userino -> Schema -> ?Add Field ?-> 點擊下拉框,可以看到我們加入的字段

?

?

第三部分 ?簡單使用

? ?

? ? 上面已經 加入了php的擴展

?

#加入 solr ???include_once ?dirname(__FILE__).'/Solr.class.php';?? ??? ?$solr = new Solr('127.0.0.1'); ???? ?$solr->connect('userinfo'); ?# userinfo庫,前面建立的userinfo?? ??? ?$data = array(?? ??? ?'id' => 1,?? ??? ?'name' => '張三',?? ??? ?'cellPhone' => 13069546631,?? ?);?? ?$allSpell = @$solr->spell($data['name']); ? ? ? ? ?//轉換拼音 ?全拼 ? ? ? ? maomao?? ?$firstSpell = @$solr->spell($data['name'],true); //轉換拼音 ?拼音開頭 ?mm?? ?//插入,如果存在,則覆蓋?? ?$ret = $solr->update(['id'=> $data['id'],'title'=>$data['name'], 'allSpell' => $allSpell, 'firstSpell' => $firstSpell, 'cellPhone' => $data['cellPhone']]);

?

#查詢 ?? ? include_once ?dirname(__FILE__).'/Solr.class.php';?? ??? ?$solr = new Solr('192.168.43.128');?? ?$solr->connect('userinfo');? ? ?# 查詢 名稱為 "張"的用戶, 后面的 是查詢顯示的字段 ?, ?“0,10”是分頁顯示? ? #也可以是 通過拼音開頭?“z” 、?“zs” ?、“13069546631” 來查詢用戶信息? ?$list =?$solr->select("張", 'id, title, allSpell, firstSpell, cellPhone', 0, 10);? ? print_r($list);#輸出#SolrObject Object ( [numFound] => 1 [start] => 0 [docs] => Array ( [0] => SolrObject Object ( [id] => 1 [title] => 張飛 [allSpell] => zhangfei [firstSpell] => zf [cellPhone] => 13169546631 ) ) )

?

?

類庫

免責聲明:非本網注明原創的信息,皆為程序自動獲取互聯網,目的在于傳遞更多信息,并不代表本網贊同其觀點和對其真實性負責;如此頁面有侵犯到您的權益,請給站長發送郵件,并提供相關證明(版權證明、身份證正反面、侵權鏈接),站長將在收到郵件12小時內刪除。
泛亚电竞|官网 <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <蜘蛛词>| <文本链> <文本链> <文本链> <文本链> <文本链> <文本链>