热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

centos6.4solr的安装及业务字段配置

1、简单介绍solrSolr是一个独立的企业及搜索应用服务器,它对外提供类似于Web-service的API接口。用户可以通过http请求,向搜索引擎服
1、简单介绍solr

        Solr是一个独立的企业及搜索应用服务器,它对外提供类似于Web-service的API接口。用户可以通过http请求,向搜索引擎服务器提交一定格式的XML文件,生成索引;也可以通过Http Get操作提出查找请求,并得到XML格式的返回结果。特点是一个高性能,采用Java5开发,基于Lucene的全文搜索服务器。同时对其进行了扩展,提供了比Lucene更为丰富的查询语言,同时实现了可配置、可扩展并对查询性能进行了优化,并且提供了一个完善的功能管理界面,是一款非常优秀的全文搜索引擎。(本段来自百度O(∩_∩)O哈哈~)。

2、安装

   2.1、准备工作

    首先上传apache-tomcat-8.0.50.tar.gz,solr-4.10.3.tgz.tgz,IK Analyzer 2012FF_hf1(分词所需)到linux服务器。安装tomcat首先需要安装Java(没有请参考本人这篇文章------点击打开链接);解压缩tar.gz 文件  指令 ------tar -zxf solr-4.10.3.tgz.tgz 

2.2、安装

Ⅰ、把solr.war复制到tomcat的webapps下并改名为solr.war

[root@xxx solr-4.10.3]# cp dist/solr-4.10.3.war /usr/local/solr/tomcat-solr/webapps/solr.war

[root@xxx solr-4.10.3]# 

Ⅱ、进入tomcat的bin文件下启动tomcat

[root@xxx solr-4.10.3]# cd /usr/local/solr/tomcat-solr/bin/
[root@xxx bin]# ./startup.sh 
Using CATALINA_BASE:   /usr/local/solr/tomcat-solr
Using CATALINA_HOME:   /usr/local/solr/tomcat-solr
Using CATALINA_TMPDIR: /usr/local/solr/tomcat-solr/temp
Using JRE_HOME:        /usr/java/jdk1.8.0_161
Using CLASSPATH:       /usr/local/solr/tomcat-solr/bin/bootstrap.jar:/usr/local/solr/tomcat-solr/bin/tomcat-juli.jar
Tomcat started.

[root@xxx bin]# 

查看启动日式

[root@xxx bin]# cd ../

[root@xxx tomcat-solr]# tail -f logs/catalina.out 

Ⅲ、关闭tomcat 

[root@xxx tomcat-solr]# cd bin/

[root@xxx bin]# ./shutdown.sh 

Ⅳ、删除solr.war [root@xxx webapps]# rm -rf solr.war 

Ⅵ、拷贝jar包

[root@xxx ~]# cd solr-4.10.3/example/lib/ext/
[root@xxx ext]# ll
total 552
-rw-r--r-- 1 root root  16515 Feb  6  2014 jcl-over-slf4j-1.7.6.jar
-rw-r--r-- 1 root root   4959 Feb  6  2014 jul-to-slf4j-1.7.6.jar
-rw-r--r-- 1 root root 489884 May 26  2012 log4j-1.2.17.jar
-rw-r--r-- 1 root root  28688 Feb  6  2014 slf4j-api-1.7.6.jar
-rw-r--r-- 1 root root   8869 Feb  6  2014 slf4j-log4j12-1.7.6.jar
[root@xxx ext]# cp * /usr/local/solr/tomcat-solr/webapps/solr/WEB-INF/lib/

[root@xxx ext]# 

Ⅶ、创建solrhome 存放solr服务器所有配置文件的目录(创建在什么位置看自己心情本人放在/usr/local/solr)

将solr解压后的文件solr.4.10.3/example/下的solr文件中的所有文件复制到solrhome里

[root@xxx solr]# cp * /usr/local/solr/solrhome -r

然后修改solr工程里的web.xml告知solr工程solrhome的位置

[root@xxx tomcat-solr]# vim webapps/solr/WEB-INF/web.xml 


打开画框框的注释修改后的样子是这样


:wq退出保存。

启动tomcat(在浏览器输入ip:你的端口/solr)看到久违的solr界面,就安装成功啦。


3、分词配置

    将分词所需要的jar包拷贝到solr工程

[root@xxx IK Analyzer 2012FF_hf1]# cp IKAnalyzer2012FF_u1.jar /usr/local/solr/tomcat-solr/webapps/solr/WEB-    INF/lib/

将IKAnalyzer.cfg.xml、ext_stopword.dic、mydict.dic复制到solr工程的classes下(若没有classes请手动添加)

[root@xxx IK Analyzer 2012FF_hf1]# cp ext_stopword.dic IKAnalyzer.cfg.xml mydict.dic /usr/local/solr/tomcat-solr/webapps/solr/WEB-INF/classes -r
[root@xxx IK Analyzer 2012FF_hf1]# 

注:扩展词典及使用词必须为utf-8,不能使用window 记事本编译

配置fileType

编辑/usr/local/solr/solrhome/collection1/conf的-rw-r--r-- 1 root root 60689 Apr 12 12:02 schema.xml 

[root@xxx conf]# vim schema.xml 

标签的末尾添加以下内容

       
       
               
       

              
       
     

       
       
       

 4、启动tomcat

[root@xxx local]# cd solr/tomcat-solr/bin/

[root@xxx bin]# ./startup.sh 

浏览器进入solr界面 选左侧collection1


5、索引库维护

测试代码

public class SolrTest {@Testpublic void addDocument() throws Exception {//创建一连接SolrServer solrServer = new HttpSolrServer("http://你的ip:8085/solr");//创建一个文档对象SolrInputDocument document = new SolrInputDocument();document.addField("id", "test000");document.addField("item_title", "测试商品2"); //把文档对象写入索引库solrServer.add(document);//提交solrServer.commit();}@Testpublic void testSolr() throws SolrServerException, IOException{SolrServer solrServer=new HttpSolrServer("http://115.28.57.65:8085/solr");//solrServer.deleteById("test001");solrServer.deleteByQuery("*:*");solrServer.commit();}

添加完数据后就可以执行query查询啦。

solr没有修改只要再重新添加一条数据就会把原有数据覆盖掉。

删除数据


删除solr索引数据,使用XML有两种写法:

<delete><id>1id>delete>
<commit/>


<delete><query>id:1query>delete>
<commit/>

 删除所有索引&#xff0c;这样写就可以了&#xff1a;

<delete><query>*:*query>delete>
<commit/>




推荐阅读
  • Java在运行已编译完成的类时,是通过java虚拟机来装载和执行的,java虚拟机通过操作系统命令JAVA_HOMEbinjava–option来启 ... [详细]
  • 本文介绍了如何使用C#制作Java+Mysql+Tomcat环境安装程序,实现一键式安装。通过将JDK、Mysql、Tomcat三者制作成一个安装包,解决了客户在安装软件时的复杂配置和繁琐问题,便于管理软件版本和系统集成。具体步骤包括配置JDK环境变量和安装Mysql服务,其中使用了MySQL Server 5.5社区版和my.ini文件。安装方法为通过命令行将目录转到mysql的bin目录下,执行mysqld --install MySQL5命令。 ... [详细]
  • Oracle优化新常态的五大禁止及其性能隐患
    本文介绍了Oracle优化新常态中的五大禁止措施,包括禁止外键、禁止视图、禁止触发器、禁止存储过程和禁止JOB,并分析了这些禁止措施可能带来的性能隐患。文章还讨论了这些禁止措施在C/S架构和B/S架构中的不同应用情况,并提出了解决方案。 ... [详细]
  • Java实战之电影在线观看系统的实现
    本文介绍了Java实战之电影在线观看系统的实现过程。首先对项目进行了简述,然后展示了系统的效果图。接着介绍了系统的核心代码,包括后台用户管理控制器、电影管理控制器和前台电影控制器。最后对项目的环境配置和使用的技术进行了说明,包括JSP、Spring、SpringMVC、MyBatis、html、css、JavaScript、JQuery、Ajax、layui和maven等。 ... [详细]
  • 本文介绍了Java工具类库Hutool,该工具包封装了对文件、流、加密解密、转码、正则、线程、XML等JDK方法的封装,并提供了各种Util工具类。同时,还介绍了Hutool的组件,包括动态代理、布隆过滤、缓存、定时任务等功能。该工具包可以简化Java代码,提高开发效率。 ... [详细]
  • Spring特性实现接口多类的动态调用详解
    本文详细介绍了如何使用Spring特性实现接口多类的动态调用。通过对Spring IoC容器的基础类BeanFactory和ApplicationContext的介绍,以及getBeansOfType方法的应用,解决了在实际工作中遇到的接口及多个实现类的问题。同时,文章还提到了SPI使用的不便之处,并介绍了借助ApplicationContext实现需求的方法。阅读本文,你将了解到Spring特性的实现原理和实际应用方式。 ... [详细]
  • 标题: ... [详细]
  • flowable工作流 流程变量_信也科技工作流平台的技术实践
    1背景随着公司业务发展及内部业务流程诉求的增长,目前信息化系统不能够很好满足期望,主要体现如下:目前OA流程引擎无法满足企业特定业务流程需求,且移动端体 ... [详细]
  • Linux如何安装Mongodb的详细步骤和注意事项
    本文介绍了Linux如何安装Mongodb的详细步骤和注意事项,同时介绍了Mongodb的特点和优势。Mongodb是一个开源的数据库,适用于各种规模的企业和各类应用程序。它具有灵活的数据模式和高性能的数据读写操作,能够提高企业的敏捷性和可扩展性。文章还提供了Mongodb的下载安装包地址。 ... [详细]
  • Ubuntu安装常用软件详细步骤
    目录1.GoogleChrome浏览器2.搜狗拼音输入法3.Pycharm4.Clion5.其他软件1.GoogleChrome浏览器通过直接下载安装GoogleChro ... [详细]
  • 开发笔记:Java是如何读取和写入浏览器Cookies的
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了Java是如何读取和写入浏览器Cookies的相关的知识,希望对你有一定的参考价值。首先我 ... [详细]
  • 本文讨论了Kotlin中扩展函数的一些惯用用法以及其合理性。作者认为在某些情况下,定义扩展函数没有意义,但官方的编码约定支持这种方式。文章还介绍了在类之外定义扩展函数的具体用法,并讨论了避免使用扩展函数的边缘情况。作者提出了对于扩展函数的合理性的质疑,并给出了自己的反驳。最后,文章强调了在编写Kotlin代码时可以自由地使用扩展函数的重要性。 ... [详细]
  • 在Java中,我会做这样的事情:classPerson{privateRecordrecord;publicStringname(){record().get(name);}p ... [详细]
  • 本文讨论了编写可保护的代码的重要性,包括提高代码的可读性、可调试性和直观性。同时介绍了优化代码的方法,如代码格式化、解释函数和提炼函数等。还提到了一些常见的坏代码味道,如不规范的命名、重复代码、过长的函数和参数列表等。最后,介绍了如何处理数据泥团和进行函数重构,以提高代码质量和可维护性。 ... [详细]
  • 如何实现JDK版本的切换功能,解决开发环境冲突问题
    本文介绍了在开发过程中遇到JDK版本冲突的情况,以及如何通过修改环境变量实现JDK版本的切换功能,解决开发环境冲突的问题。通过合理的切换环境,可以更好地进行项目开发。同时,提醒读者注意不仅限于1.7和1.8版本的转换,还要适应不同项目和个人开发习惯的需求。 ... [详细]
author-avatar
拍友2502882547
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有