当前位置: 首页 > 后端技术 > PHP

solr学习笔记

时间:2023-03-29 22:55:08 PHP

1下载地址http://lucene.apache.org/solr/wgethttps://mirrors.tuna.tsinghua...tar-zxvfsolr-8.1.0.tgz2停止运行,切换到目录(solr-8.1.0/bin)./solrstart-force./solrstart-p9529-force(指定端口)./solrstop-all启动错误提示YourMaxProcessesLimitcurrentlyWillsolr-8.1.0/bin/solr.in.sh文件中,设置SOLR_ULIMIT_CHECKS为false在浏览器中输入http://127.0.0.1:9529/solr3修改时区,修改文件solr-8.1.0/bin/solr.in.shSOLR_TIMEZONE=PRC4创建一个core实例,先到solr-8.1.0/server/solr/目录下新建一个名为new_core的文件夹(eg:fgou),然后将solr-8.1.0/server/configsets/basic_configs目录下的conf目录复制到fgou目录cp-r/usr/local/src/solr-8.1.0/server/solr/configsets/_default/conf/usr/local/src/solr-8.1.0/server/solr/fgou/然后点击Create5配置中文分词下载IKWordSegmenterhttps://pan.baidu.com/s/1fZ52...Extrac代码:f76cIKAnalyzer下载解压后会有如下文件。将核心jar文件复制到solrWEB应用的lib文件夹下,保存配置文件和词库等。将文件复制到WEB应用的classes文件夹下。如果子WEB-INF下没有这个文件夹,可以在配置文件managed-schema中创建如下配置重启服务这样就可以选择ik分词了,创建6导入MYSQL数据先在D:/server/solr-7.4.0/dist目录下复制如下jar包复制到D:/server/solr-7.4.0/server/solr-webapp/webapp/WEB-INF/lib然后到https://search.maven.org/search?q=mysql-connector下载mysql-connector并复制到D:/server/solr-7.4.0/server/solr/fgou/conf/solrconfig中的D:/server/solr-7.4.0/server/solr-webapp/webapp/WEB-INF/lib目录下.xml配置数据库文件信息xml创建fgou-config.xml文件<文档>'${dataimporter.last_index_time}'"#新修改索引deletedPkQuery="selectgidfromgoodswherestatus!=1andaddtime>'${dataimporter.last_index_time}'"#删除索引deltaImportQuery="selectgid,gname,group_price,sell_num,statusfromgoodswheregid='${dataimporter.delta.gid}'">配置managed-schema中的字段修改用于检索的分词器:gid添加:="gid"type="string"multiValued="false"indexed="true"required="true"stored="true"/>重启服务构建全量索引构建增量索引查询7phpapi调用//solr查询publicfunctionsolrQuery($core='fgou',$fl='gid',$fq='status:1',$q='gid:1',$sort='giddesc,selldesc',$start=0,$rows=10){$fl=urlencode($fl);$fq=urlencode($fq);$q=urlencode($q);$sort=urlencode($sort);$url='http://127.0.0.1:9529/solr/'.$core.'/select?fl='.$fl.'&fq='.$fq.'&q='.$q.'&sort='.$sort.'&rows='.$rows.'&start='.$start;$res=file_get_contents($url);$resArr=json_decode($res,true);返回$resArr['响应'];}//solr更新索引publicfunctionsolrIndex($core='fgou'){$url='http://127.0.0.1:9529/solr/fgou/dataimport?indent=on&wt=json';$param=['command'=>'delta-import','verbose'=>'false','clean'=>'false','commit'=>'true','core'=>$core,'名称'=>'数据导入',];$this->httpCurl($url,$param);}}参考资料:https://blog.csdn.net/u010510107/article/details/81051795https://www.jianshu.com/p/4e86df9532d9https://blog.csdn.net/lhc0512/article/details/82315354https://www.jianshu.com/p/9ec946fb5be7https://www.cnblogs.com/davidwang456/p/4744415.html