solr修改服务器端口,Solr7服务器搭建及遇到的问题(二)
设置好相关配置之后就重启 solr,输入命令solr restart -p 8983, 这里一定要指定端口,不然会报错,关闭 solr 的命令是solr stop -all。选中你建立的 core 可以看到下面有各种选项。
选中 Analysis 可以使用加入的 ik 分词看建立的索引和查询效果,中间的 FildType 设置为 text_ik,则说明 ik 分词器已经成功导入并且可以使用,如图所示。
从数据库导入数据-Dataimport 模块,有两种导入模块,这里选 full-import,如果事先导入过模块,需要选下面的 clean 选项,选中需要导入的 Entity,点击 Excute 提交,之后选中 Auto-Refresh Status 可以返回导入结果,如图所示则导入成功,一直不成功则需要检查配置文件是否出错。
点击 Query 进行数据查询,什么都不做直接点击 Excute Query 可以显示所有条目查询结果
q 表示需要查询的文本条目,比如设置为:百度,fq 用 + 头条 - 网盘 表示搜索的条目里面包含头条,不包括网盘。df 表示指定搜索的 Field,加高亮选中 hl 设置如下图所示即可
遇到的问题:1)在不设置 df 时,设置 q 参数时返回查询结果为空
原因是 sorl7 的默认 df 参数被注释了,必须填上 df 才能显示查询结果,当然,你也可以找到 solrconfig.xml 文件中的 df,将默认搜索域设置为你想要搜索的域。顺便说一句,我用_text_也没成功,这个是个待解决的坑。(这个原因找到了,因为 managed-schema 中的被注释掉了,这句代码的意思是把所有的字段都 copy 到_text_里面,也就是说你想使用_text_进行整个文档的搜索需要取消这个注释。)
2)从数据库中查询到的数据都带中括号 [],question_title 和 question_content 都是这样,原因是配置 managed-schema 时设置了 mutiValued=true, 去掉即可。1
3)高亮部分是不显示在原始查询数据里面的,是在后面的 highlight 模块里面的数据添加百度。