solr6.6.0+tomcat-8.5 solr从mysql数据库导入数据并创建索引
(1)创建一张表student
创建时注意标红的位置,在data-config.xml文件中会用到
(2)在表中添加数据(本人添加了十条)如图:
(3)复制solr导入需求的jar,如图:
上面的根据个人情况而定,我的文件目录为从D:\My software download\solr-6.6.0\solr-6.6.0\dist下复制solr-dataimporthandler-6.6.0.jar到D:\My software\Tomcat8.0\webapps\solr\WEB-INF\lib文件夹下
(4)复制一个mysql驱动jar,到D:\My software\Tomcat8.0\webapps\solr\WEB-INF\lib 下
(5)在D:\My software\solr_home\test1\conf目录下创建文件data-config.xml
(6)接下来就是配置,solr_home下的三个配置文件了 data_config.xml schema.xml(就是managed-schema文件) solrconfig.xml
A:配置data_config.xml文件(现在还是空文件夹)复制一下代码到该文件:
<?xml version="1.0" encoding="UTF-8" ?>
<dataConfig>
<dataSource name="solr_test" type="JdbcDataSource"
driver="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/solr"
user="root"
password="123456"/>
<document>
<entity dataSource="solr_test" name="student" query="SELECT id,name,sex,old FROM student">
<field column="id" name="id"/>
<field column="name" name="userName"/>
<field column="sex" name="sex"/>
<field column="old" name="old"/>
</entity>
</document>
</dataConfig>
---解释上面配置如下---
<?xml version="1.0" encoding="UTF-8" ?>
<dataConfig>
<dataSource name="我写的链接名(可以随意写)" type="JdbcDataSource"
driver="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:数据库端口号/数据源名"
user="用户名"
password="密码"/>
<document>
<entity dataSource="我写的链接名(可以随意写)" name="表名" query="查询语句">
<field column="数据库字段名称" name="别名,用作查询显示(但是要与solrconfig.xml配置文件中配置的name对应)"/>
<field column="name" name="userName"/>
<field column="sex" name="sex"/>
<field column="old" name="old"/>
</entity>
</document>
</dataConfig>
B:schema.xml 配置文件
红框内的内容为自己写的
该配置文件中原有这个id,不需要在增加否则会报id重复的错误的信息
name="userName"这个name是别名跟数据库的列名可以不一样只是用来查询用,但要跟data-config.xml文件中的一样
C:solrconfig.xml配置如下图
内容:
<requestHandler name="/dataimport" class="org.apache.solr.handler.dataimport.DataImportHandler">
<lst name="defaults">
<str name="config">data-config.xml</str>
</lst>
< /requestHandler>
(7)启动tomcat,看到如下的solr界面,说明各个文件已经配置成功了
entity为实体的表名称(本次的表为student)
上面路径的端口号为8888是因为我把Tomcat的端口号修改为了8888若没有修改的仍是8080
(8)点击Execute,查看日志,Logging
如果日志爆出以上的错误,则表示缺少三个文件,如果没有报错忽略第(9)
(9)将1处的三个文件复制到2处的目录下
清除索引目录(下面图片的目录下的文件),重新启动Tomcat
(10)如果出现如下界面,说明索引已经创建成功了
Num Docs的数目为10表明已经core下成功创建了10个文件(因为有10条记录)
(11)自己尝试query
1处格式为别名:名字,然后点击Excute Query,2处为查询结果
备注:该文章引用了以下两篇文章:
一:Solr6.6安装教程:http://blog.****.net/tofate_/article/details/77826497
二:solr5.3+tomcat-7.0.65 solr从mysql数据库导入数据并创建索引:http://blog.****.net/yanlove_jing/article/details/50408537