SOLR-8.5.0配置与数据导入
***SOLR小白一枚,第一次发表,如有错误的地方,请指正
作者环境:
1.JDK
2.SOLR
3.MYSQL
4.WIN10 64bit
JDK(作者:jdk-13.0.2)下载地址:https://repo.huaweicloud.com/java/jdk/
SOLR(作者:solr-8.5.0)下载地址:http://archive.apache.org/dist/lucene/solr/
MYSQL(作者:mysql-8.0.17)下载地址:https://dev.mysql.com/downloads/mysql/
JDK安装配置:
参考教程1:https://blog.csdn.net/qq_40663787/article/details/104051870
参考教程2:https://jingyan.baidu.com/article/574c5219fb033c2c8d9dc194.html
SOLR安装配置:
参考教程:https://blog.csdn.net/weixin_37813118/article/details/89399560
SOLR参考教程,只能告诉你一般都是怎么安装的,但是坑很多
重点步骤如下:
1.下载solr-8.5.0-windows-x86-64.zip
2.解压你需要的目录下
3.CMD命令,A.WIN+R,B.CMD,C.CD C:\Apache\solr-8.5.0\bin
具体路径根据个人而定
4.输入solr.cmd start
顺便告诉几个常见命令
solr.cmd stop -all(停止)
solr.cmd restart -p 8983(重启,如果没有配置默认端口:8983)
solr.cmd create -c 文件名(创建Core文件)
这一步基本没有太多错误提示,除非没有JDK提示告警
5.http://localhost:8983/solr,网页输入测试,看看是否成功
6.建立Core Admin
solr.cmd create -c mycore
7.拷贝C:\Apache\solr-8.5.0\example\example-DIH\solr\db目录下的所有文件至C:\Apache\solr-8.5.0\server\solr\mycore下
8.下载mysql-connector-java-8.0.17.jar包(跟自己的mysql版本),这个是mysql与solr的桥接
下载的mysql-connector-java-8.0.17.jar拷贝至C:\Apache\solr-8.5.0\dist目录下
9.修改C:\Apache\solr-8.5.0\server\solr\mycore\conf下三个文件
solrconfig.xml
db-data-config.xml
managed-schema
solrconfig.xml文件修改
添加
<lib dir="${solr.install.dir:../../../..}/dist/" regex="mysql-connector-java-.*\.jar" />
db-data-config.xml文件修改
<dataConfig>
<dataSource driver="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost:3306/数据库名称?serverTimezone=UTC" user="用户名" password="密码" />
<document>
<entity name="tb_vbi_product1" query="SELECT tid,tsn from tb_vbi_product1">
<field column="tid" name="solr_id" />
<field column="tsn" name="solr_sn" />
</entity>
</document>
</dataConfig>
三处涂改的部分分别是数据库名称,用户名,用户名密码
serverTimezone=UTC需要注意时区的错误
managed-schema修改
<field name="solr_sn" type="string" indexed="true" stored="true" required="true" multiValued="false" />
<field name="solr_id" type="plong" indexed="true" stored="true" />
<uniqueKey>solr_sn</uniqueKey>
这里需要注意的是
uniqueKey我用了solr_sn,本来应该用solr_id的,但是solr_id是无符号bigint类型,只要用了它,导入数据的时候就出现
Requests: 1 , Fetched: 有数据 , Skipped: 0 , Processed: 0
这个地方设置有问题,导入数据你就别想成功了,会出现各种奇葩问题
出了问题,查看Logging,很容易排查问题
到了这里,你就可以通过浏览器导入数据了
到这里,基本上配置完成
个人建议:MYSQL建立一个简单的测试数据表,字段也建立简单的varchar字段,这样在修改managed-schema文件的type类型时,直接用string,然后你随便用一个字段做uniqueKey,uniqueKey字段需要注意
这样的做法,只是教你,可以用solr了,不然搞半天导入数据不成功,网上不是说关防火墙就说自己检测配置文件,时间浪费了,还解决不了问题
最后:每个版本的更新都会让使用者用最简单的办法配置文件,所以如果使用新版本的软件时,基本上会把旧版本的繁琐配置去掉,一般没有说明代表你根本就不需要去配置,像这里的solr本身只需要重新下载一个mysql…jar文件,然后core文件直接拷贝例子,然后将官方给的例子再做修改