欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

macOS安装Solr并索引MySQL

程序员文章站 2023-12-18 18:20:58
安装 java 语言的软件开发工具包 brew cask install java 或者在oracle官网 中选择 mac 版本 jdk-8u111-mac...

安装 java 语言的软件开发工具包

brew cask install java

或者在oracle官网 中选择 mac 版本 jdk-8u111-macosx-x64.dmg 下载并安装。

安装 solr

brew install solr

当前(2016-11-10) brew 源的 solr 版本为 6.1.0,你可以通过brew edit solr来修改你要安装的版本,或者通过官方网站下载源码包来进行编译安装。

启动 solr

solr start

返回以下文字提示,则表示 solr 服务器安装成功,默认监听的端口号为 8983:

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

solr create -c test

返回以下信息,则表示创建成功:

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的信息:

macOS安装Solr并索引MySQL

安装 mysql 数据库

brew install mysql

将root的密码修改为123456。或者其他你喜欢的密码:

mysqladmin -u root password '123456'

这个 mysql 账号会在配置 solr 索引 mysql 信息时使用到。

添加测试用于测试的数据:

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 版本的驱动:

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/目录中:

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配置

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 包进入进来:

<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" />

macOS安装Solr并索引MySQL

添加 mysql 配置信息

在<requesthandler name="/select" class="solr.searchhandler">的前面添加以下信息:

<requesthandler name="/dataimport" class="org.apache.solr.handler.dataimport.dataimporthandler"> 
<lst name="defaults"> 
<str name="config">data-config.xml</str> 
</lst> 
</requesthandler>

macOS安装Solr并索引MySQL

在同目录下新建data-config.xml文件

vi /usr/local/cellar/solr/6.1.0/server/solr/test/conf/data-config.xml

添加以下信息:

<?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>

macOS安装Solr并索引MySQL

managed-schema配置field信息

vi /usr/local/cellar/solr/6.1.0/server/solr/test/conf/managed-schema

新增以下信息:

<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" />

macOS安装Solr并索引MySQL

重启 solr 服务

solr restart

返回以下信息说明 solr 服务器重启成功:

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按钮:

macOS安装Solr并索引MySQL

成功后,显示以下界面:

macOS安装Solr并索引MySQL

query 查询

进入 query 页面,点击execute按钮:

macOS安装Solr并索引MySQL

以上所述是小编给大家介绍的macos安装solr并索引mysql ,希望对大家有所帮助

上一篇:

下一篇: