安裝 Java 語言的軟件開發工具包
1
|
brew cask install java |
或者在Oracle官網 中選擇 Mac 版本 jdk-8u111-macosx-x64.dmg 下載并安裝。
安裝 Solr
1
|
brew install solr |
當前(2016-11-10) brew 源的 Solr 版本為 6.1.0,你可以通過brew edit solr來修改你要安裝的版本,或者通過官方網站下載源碼包來進行編譯安裝。
啟動 Solr
solr start
返回以下文字提示,則表示 solr 服務器安裝成功,默認監聽的端口號為 8983:
1
2
|
Waiting up to 30 seconds to see Solr running on port 8983 [\] Started Solr server on port 8983 (pid=890). Happy searching! |
在瀏覽器中訪問
Solr 提供了可視化管理界面Solr Admin,默認的訪問URL為: http://localhost:8983/solr/
創建一個名為 test 的 core
1
|
solr create -c test |
返回以下信息,則表示創建成功:
1
2
3
4
5
6
7
8
9
|
Copying configuration to new core instance directory: /usr/ local /Cellar/solr/6.1.0/server/solr/test Creating new core 'test' using command: http://localhost:8983/solr/admin/cores? action = CREATE & name =test&instanceDir=test { "responseHeader" :{ "status" :0, "QTime" :8845}, "core" : "test" } |
這一命令會在/usr/local/Cellar/solr/6.1.0/server/solr/目錄下創建一個命令test/的目錄,test/目錄中包含了test core相關的數據文件和配置文件。
在Solr Admin管理界面可以看到test core的信息:
安裝 MySQL 數據庫
1
|
brew install mysql |
將root的密碼修改為123456。或者其他你喜歡的密碼:
1
|
mysqladmin -u root password '123456' |
這個 MySQL 賬號會在配置 Solr 索引 MySQL 信息時使用到。
添加測試用于測試的數據:
1
2
3
4
5
6
|
create database solrdata; use solrdata; create table goods(id int not null auto_increment, name varchar (20) not null default '' , number varchar (20) not null default '' , updateTime timestamp not null default CURRENT_TIMESTAMP on update CURRENT_TIMESTAMP , primary key (id)); insert into goods( name , number) values ( '鞋子' , 100); insert into goods( name , number) values ( '衣服' , 200); insert into goods( name , number) values ( '褲子' , 300); |
下載 MySQL 驅動
從 MySQL 官方地址 下載 mysql-connector-java 驅動包。或者直接運行一下命令獲取 5.1.40 版本的驅動:
1
|
wget http://dev.mysql.com/get/Downloads/Connector-J/mysql-connector-java-5.1.40.tar.gz |
將這一驅動包復制到 /usr/local/Cellar/solr/6.1.0/libexec/dist/目錄中:
1
2
3
|
tar -zxvf mysql-connector-java-5.1.40.tar.gz cd mysql-connector-java-5.1.40 cp mysql-connector-java-5.1.40-bin.jar /usr/ local /Cellar/solr/6.1.0/libexec/dist/ |
修改solrconfig.xml配置
1
|
vi /usr/ local /Cellar/solr/6.1.0/server/solr/test/conf/solrconfig.xml |
引入相關驅動包
將 /usr/local/Cellar/solr/6.1.0/libexec/dist/ 中的 3 個相關 jar 包進入進來:
1
2
|
<lib dir= "${solr.install.dir}/libexec/dist/" regex= "mysql-connector-java-5.1.40-bin.jar" /> <lib dir= "${solr.install.dir}/libexec/dist/" regex= "solr-dataimporthandler-.*\.jar" /> |
添加 MySQL 配置信息
在<requestHandler name="/select" class="solr.SearchHandler">的前面添加以下信息:
1
2
3
4
5
|
<requestHandler name = "/dataimport" class= "org.apache.solr.handler.dataimport.DataImportHandler" > <lst name = "defaults" > <str name = "config" >data-config.xml</str> </lst> </requestHandler> |
在同目錄下新建data-config.xml文件
1
|
vi /usr/ local /Cellar/solr/6.1.0/server/solr/test/conf/data-config.xml |
添加以下信息:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
<?xml version= "1.0" encoding= "UTF-8" ?> <dataConfig> <dataSource name = "source1" type= "JdbcDataSource" driver= "com.mysql.jdbc.Driver" url= "jdbc:mysql://localhost:3306/solrdata" user = "root" password = "123456" batchSize= "-1" /> <document> <entity name = "goods" pk= "id" dataSource= "source1" query= "select * from goods" deltaImportQuery= "select * from goods where id='${dih.delta.id}'" deltaQuery= "select id from goods where updateTime> '${dataimporter.last_index_time}'" > <field column = "id" name = "id" /> <field column = "name" name = "name" /> <field column = "number" name = "number" /> <field column = "updateTime" name = "updateTime" /> </entity> </document> </dataConfig> |
managed-schema配置field信息
1
|
vi /usr/ local /Cellar/solr/6.1.0/server/solr/test/conf/managed- schema |
新增以下信息:
1
2
3
|
<field name = "name" type= "string" indexed= "true" stored= "false" /> <field name = "number" type= "int" indexed= "true" stored= "false" /> <field name = "updateTime" type= "date" indexed= "true" stored= "false" /> |
重啟 solr 服務
solr restart
返回以下信息說明 Solr 服務器重啟成功:
1
2
3
|
Sending stop command to Solr running on port 8983 ... waiting 5 seconds to allow Jetty process 1446 to stop gracefully. Waiting up to 30 seconds to see Solr running on port 8983 [/] Started Solr server on port 8983 (pid=1784). Happy searching! |
Dataimport 操作
打開瀏覽器進入 Solr Admin,在以下界面中,點擊Execute按鈕:
成功后,顯示以下界面:
Query 查詢
進入 Query 頁面,點擊Execute按鈕:
以上所述是小編給大家介紹的macOS安裝Solr并索引MySQL ,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對服務器之家網站的支持!
原文鏈接:http://www.cnblogs.com/jxlwqq/p/6045678.html