solr7.4 centos7安装
環境:centos7、JDK1.8、solr?自帶Jetty啟動
一、安裝JDK1.8環境
1、下載JDK
jdk-8u172-linux-x64.rpm
下載地址:http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html
2、安裝JDK
rpm?-ivh?jdk-8u131-linux-x64.rpm
3、配置JDK環境變量
vim?/etc/profile?
在最后面加上下面這段
JAVA_HOME=/usr/java/jdk1.8.0_172-amd64
CLASSPATH=%JAVA_HOME%/lib:%JAVA_HOME%/jre/lib
PATH=$PATH:$JAVA_HOME/bin:$JAVA_HOME/jre/bin
export PATH CLASSPATH JAVA_HOME
4、檢查是否完成安裝
java?-version
javac
二、安裝Solr
1、下載solr
solr-7.4.0.tgz
下載地址:http://mirrors.hust.edu.cn/apache/lucene/solr/7.4.0/solr-7.4.0.tgz
2、創建目錄
[root@localhost /]#?mkdir /chowdate
把solr-7.4.0.tgz復制到目錄?/chowdate,接著解壓。
[root@localhost /]#??tar -zxvf??solr-7.4.0.tgz
3、啟動Solr
localhost bin]#?/chowdate/solr-7.4.0/bin/solr start -forc
4、打開頁面
http://localhost:8983/solr/#/
?
5、啟動到打開頁面過程可能會出現的問題
如果執行./solr start -force?命令的時候會警告你系統文件打開數的問題,可以這樣解決。修改完后要重啟系統。
1. 修改 /etc/sysctl.conf 文件,在最后一行添加
fs.file-max = 6553560
2. 修改 /etc/security/limits.conf 文件,在最后一行添加
如果出現solr安裝成功,但是外界訪問不到的問題,請檢查防火墻是否關閉,或者8983端口是否允許開放!
關閉防火墻的命令:
systemctl stop firewalld.service #停止firewall
systemctl disable firewalld.service #禁止firewall開機啟動
firewall-cmd --state #查看默認防火墻狀態(關閉后顯示notrunning,開啟后顯示running)
開啟端口的命令:
firewall-cmd --zone=public --add-port=8983/tcp --permanent????(--permanent永久生效,沒有此參數重啟后失效)
三、添加自己的solr core
1、創建core目錄
在/chowdate/solr-7.4.0/server/solr目錄下創建new_core目錄(名字自己定)
2、復制配置文件
復制/chowdate/solr-7.4.0/server/solr/configsets/_default下的conf文件夾到/chowdate/solr-7.4.0/server/solr/new_core/下。
3、添加core
在頁面添加new_core(必須先做上面1、2步,不然會提示報錯)。
添加成功后/chowdate/solr-7.4.0/server/solr/new_core/下會多兩個東西。
core.properties文件、data目錄
四、導入數據庫中的數據到Solr中
1、創建data-config.xml文件
在/chowdate/solr-7.4.0/server/solr/new_core/conf目錄下創建一個文件data-config.xml,與solrconfig.xml同級
2、修改solrconfig.xml文件
修改/chowdate/solr-7.4.0/server/solr/new_core/conf/solrconfig.xml文件
在<requestHandler name="/select" class="solr.SearchHandler">上放增加以下這段代碼。
其中<str name="config"></str>里的內容就是我們在上一步創建的data-config.xml文件,將它們關聯起來。
3、修改data-config.xml文件
接下來我們打開data-config.xml文件,配置相關的數據庫屬性,即我們要導入那張表的哪些字段,內容如下:
dataSource 中,url是你要訪問的數據庫路徑,我這里指定到我的auth-cas 數據庫。user是用戶名,password是你的數據庫密碼。
query是一個sql語句,你需要導入哪張表的哪些字段,查就行了。然后<field>標簽中的column屬性是你SQL語句中查詢的字段,跟數據庫中對應;name屬性是你給它起的一個別名,應該是必須指定的(本人沒試過不指定的結果),至于name屬性是干嘛的,繼續往下操作,自然會明白。有多個查詢字段就需要有多個<field>標簽,每一個<field>標簽對應一個字段。
document配置數據庫查詢語句與managed_schema域的對應關系。目的是,在core導入數據的時候,會先通過該配置信息鏈接到數據庫通過查詢語句把數據查詢出來,通過數據庫字段與managed_schema域關聯關系創建索引
4、修改managed-schema文件
修改/chowdate/solr-7.4.0/server/solr/new_core/conf/managed-schema文件,將剛才在data-config.xml中配置的<field>標簽添加進來。
這里<field>里的name屬性值,就是我們剛才在data-config.xml中<field>標簽的name屬性值,這是name屬性的第一個用途,關聯起來。
name:是這個域的名稱,在整個managed_schema文件里面需要唯一,不能重復,這里定義成跟數據庫表字段的名稱,方便使用。當然,也可以定義成其他名字。
type:是表示這個字段的類型是什么,string是字符串類型,int是整形數據類型,date是時間類型,相當于數據庫里面的timestamp。
indexed:表示是否索引,索引的話就能查詢到,否則,搜索的時候,不會出現。
stored:表示是否存儲到索引庫里面。
required:是否必須
multiValued:是否多值,比如商品信息中,一個商品有多張圖片,一個Field想存儲多個值的話,必須將multiValued設置為true
5、下載連接數據庫和導入數據的jar包
現在涉及到數據庫了,肯定需要依賴一些jar包,下載三個jar包 下載地址:http://mvnrepository.com/
mysql-connector-java-8.0.11.jar
solr-dataimporthandler-7.4.0.jar
solr-dataimporthandler-extras-7.4.0.jar
三個jar包 放到/chowdate/solr-7.4.0/server/solr-webapp/webapp/WEB-INF/lib 目錄下
然后打開/chowdate/solr-7.4.0/server/solr/new_core/conf/solrconfig.xml,引用上面提到的jar包,如下。
關閉然后重啟??./bin/solr?stop?-all? ? ? ?./bin/solr? start? -force? ?
6、導入數據
再次訪問我們剛才的頁面,在左側找到我們部署好的new_core工程,點擊Dataimport,再選擇full-import(全部導入),點擊Execute,出現下面的頁面,證明這張表的數據已經導入進來了。
6、查找數據
轉載于:https://www.cnblogs.com/Ai-Hen-Jiao-zhi/p/9602135.html
總結
以上是生活随笔為你收集整理的solr7.4 centos7安装的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 微信小程序的页面渲染(if/for)
- 下一篇: 中级职称考试 计算机 英语考试,中级职称