SOLR 4.4 部署

前言:近期研究下solr4.4的部署,一下是部署步骤,与大家分享下。

下载solr4.4.0.zip

地址        http://mirror.esocc.com/apache/lucene/solr/4.4.0/solr-4.4.0.zip

apache-solr-dataimportscheduler-1.0.jar (调度重建索引jar包)

https://solr-dataimport-scheduler.googlecode.com/files/apache-solr-dataimportscheduler-1.0.jar

准备:能运行tomcat java环境 此次部署 采用     apache-tomcat-6.0.35

开始部署:

一    部署solr4.4

1      解压solr4.4.0.zip

2       将 solr-4.4.0\dist\solr-4.4.0.war拷贝到apache-tomcat-6.0.35\webapps下,重命名为solr,    启动tomcat,启动成功后停止tomcat,并将solr.war删除

3       将solr-server\solr-4.4.0\dist下的jar拷贝到                apache-tomcat-6.0.35\webapps\solr\WEB-INF\lib下

4       将solr-server\solr-4.4.0\dist\solrj-lib下的jar拷贝到           apache-tomcat-6.0.35\webapps\solr\WEB-INF\lib下

5       将 solr-server\solr-4.4.0\example\resources\log4j.properties拷贝到                  apache-tomcat-6.0.35\webapps\solr\WEB-INF\lib下

6       新建solrhome目录 将solr-server\solr-4.4.0\example\multicore下所有文件夹拷贝至       solrhome,本次将solrhome新建路径为D:\solr-server\SolrHome。

7       修改apache-tomcat-6.0.35\webapps\solr\WEB-INF\web.xml文件

解注释以下内容:

<env-entry>

<env-entry-name>solr/home</env-entry-name>

<env-entry-value>D:\solr-server\SolrHome</env-entry-value>

<env-entry-type>java.lang.String</env-entry-type>

</env-entry>

二     增加dataimport,实现定时更新 (此次以core1为例)

1       在 solr-server\SolrHome\core1\conf增加dataimport.properties,

内容为:

#FriSep 13 13:36:30 CST 2013

last_index_time=2013-09-1313\:36\:29

v_userrecord.last_index_time=2013-09-1313\:36\:29

次配置文件为增量更新用,每次更新都是更新last_index_time

和 v_userrecord.last_index_time时间后的数据

2       在solr-server\SolrHome\core1\conf\solrconfig.xml      加入以下内容

内容为:

<requestHandlername="/dataimport"    class="org.apache.solr.handler.dataimport.DataImportHandler">

<lst name="defaults">

<strname="config">db\db-data-config.xml</str>

</lst>

</requestHandler>

作用为指定dataimport配置文件位置

3       根据2步骤的配置为例 在solr-server\SolrHome\core1\conf下增加文件目录 db

db下增加文件db-data-config.xml

内容为:

<?xmlversion="1.0" encoding="UTF-8" ?>

<dataConfig>   <dataSource type="JdbcDataSource"driver="com.mysql.jdbc.Driver"

url="jdbc:mysql://127.0.0.1:3306/***"user="***"  password="***"  />

<document name="mytable">

<entity name="***" transformer="ClobTransformer"

query="***"deltaImportQuery="SELECT * FROM ***  where                     id=${dataimporter.delta.id}"deltaQuery="select id from        *** where *** >         '${dataimporter.last_index_time}' OR *** >'${dataimporter.last_index_time}' OR              ***> '${dataimporter.last_index_time}'">

</entity>

</document>

</dataConfig>

以上配置内容的意思是取最后一次的更新时间然后根据sql查出后更新索引

4       将apache-solr-dataimportscheduler-1.0.jar拷贝至

apache-tomcat-6.0.35\webapps\solr\WEB-INF\lib

将 mysql-connector-java-5.0.8.jar 拷贝到  apache-tomcat-6.0.35\webapps\solr\WEB-INF\lib下

5       在solrhome下添加 con文件目录

SolrHome\conf\在该文件夹下添加dataimport.properties

重要配置地方:

索引重建的间隔     (单位为分钟)

interval=1

重建索引时的参数(增量更新     执行clean和 commit   )

params=/dataimport?command\=delta-import&clean\=false&commit\=true

索引 webapp名称

webapp=solr

索引名称

syncCores=core1

server名称

server=localhost

端口

port=8080

#  重做索引时间间隔的计时开始时间,第一次真正执行的时间  =reBuildIndexBeginTime+reBuildIndexInterval*60*1000;

#  两种格式:2012-04-1103:10:00或者  03:10:00,后一种会自动补全日期部分为服务         启动时的日期

reBuildIndexBeginTime=03:10:00

有时候批量增量更新时会出现内存溢出,可以在solrconfig.xml 增增加以下内容

<autoCommit>
            <maxDocs>10000</maxDocs>
             <maxTime>1000</maxTime>
         </autoCommit>

也要记得调优tomcat 增加 jvm内存。在catlina.out 文件的最顶部加入以下:

set JAVA_OPTS=-Xms512m -Xmx1024m -XX:PermSize=256M -XX:MaxPermSize=512m

配置完成,启动tomcat后如果索引正常更新,恭喜你完成了。

如有问题,请联系 qq 931434891

[置顶] SOLR 4.4 部署的更多相关文章

  1. 【Solr】Solr的安装部署

    目录 Solr安装部署 Solr Web界面分析 回到顶部 solr安装和部署 solr下载 http://lucene.apache.org/ 安装solr,就是去部署它的war包,war包所在的位 ...

  2. [置顶]Win2012R2的一个Bug安装群集后可能引发的软件崩溃问题及相应补丁

    [置顶]Win2012R2的一个Bug安装群集后可能引发的软件崩溃问题及相应补丁 如标题,笔者查阅资料发现微软声称安装故障转角色后就可能发生上述描述问题,但不止于SSMS崩溃.建议使用win2012R ...

  3. [置顶] IIS应用程序池多工作进程设置及Session共享

    [置顶] IIS应用程序池多工作进程设置及Session共享   在调优iis的时候,朋友分享给我一个特别棒的设置方法步骤,感谢好朋友的分享. IIS应用程序池多工作进程设置及Session共享 1  ...

  4. [置顶] SQL Server 2005 双机热备的实现

    [置顶] SQL Server 2005 双机热备的实现 分类: SQLSERVER2011-08-24 21:25 901人阅读 评论(0) 收藏 举报 sql servermicrosoftsql ...

  5. 在UWP中页面滑动导航栏置顶

    最近在研究掌上英雄联盟,主要是用来给自己看新闻,顺便copy个界面改一下段位装装逼,可是在我copy的时候发现这个东西 当你滑动到一定距离的时候导航栏会置顶不动,这个特性在微博和淘宝都有,我看了@ms ...

  6. WinFrom窗体始终置顶

    调用WindowsAPI使窗体始终保持置顶效果,不被其他窗体遮盖: [DllImport("user32.dll", CharSet = CharSet.Auto)] privat ...

  7. Solr 4.0 部署实例教程

    Solr 4.0 部署实例教程 Solr 4.0的入门基础教程,先说一点部署之后肯定会有人用solrj,solr 4.0好像添加了不少东西,其中CommonsHttpSolrServer这个类改名为H ...

  8. winform窗体置顶

    winform窗体置顶 金刚 winform 置顶 今天做了一个winform小工具.需要设置置顶功能. 网上找了下,发现百度真的很垃圾... 还是必应靠谱些. 找到一个可以链接. https://s ...

  9. 自定义置顶TOP按钮

    简述一下,分为三个步骤: 1. 添加Html代码 2. 调整Css样式 3. 添加Jquery代码 具体代码如下: <style type="text/css"> #G ...

随机推荐

  1. mywebsite1

    http://www.wuweierwei.com/ 个人网站 http://www.yyyweb.com/demo/icons-filling/index.html CSS3图标填充效果 http: ...

  2. 一键搞定Java桌面应用安装部署 —— exe4j + Inno Setup 带着JRE, 8M起飞

    转载自:http://www.blogjava.net/huliqing/archive/2008/04/18/193907.html 对于作Java桌面应用来说,比较烦人的就是安装部署问题,客户端是 ...

  3. jQuery Mobile组件

    一.页面 jQuery Mobile 应用了 HTML5 标准的特性,在结构化的页面中完整的页面结构分为header.content.footer 这三个主要区域. 在body 中插入内容块: < ...

  4. Truncate Delete 用法

    Truncate /Delete  Table 1.含义上都是删除表全部记录 2.Truncate 是属于数据定义语言,系统不会写每一笔记录操作事务日志,无法恢复记录数据的操作 Truncate Ta ...

  5. 更新cydia“sub-process/usr/libexec/cydia/cydo returned anerror code(2)”是怎么回事?

    最近更新cydia的时候出现了sub-process/usr/libexec/cydia/cydo returned anerror code(2)的红字是怎么回事? 解决方法:删掉有关升级的东西,把 ...

  6. Dijkstra算法求单源最短路径

    Description 在每年的校赛里,所有进入决赛的同学都会获得一件很漂亮的t-shirt.但是每当我们的工作人员把上百件的衣服从商店运回到赛场的时候,却是非常累的!所以现在他们想要寻找最短的从商店 ...

  7. 网络技术教程笔记(18)常见广域网技术——X.25与郑中基技术(←_←搜狗输入法你够了)

    广域网与接入网技术 广域网与接入网技术 常见广域网技术--X.25 产生背景 尽管在当时,苹果二代计算机已经取得了很大的成功,但是PC和工作站却没有流行,也没有获得很多的网络支持,大多数人还是使用便宜 ...

  8. IIS上不能播放mp4

    iis不支持mp4格式,需要手动添加. 进入iis服务管理器,打开你的网站,然后点击MIME类型---添加(扩展名:mp4   MIME类型:application/octet-stream) 如此即 ...

  9. hdu 3518 Boring counting 后缀数组

    题目链接 根据height数组的性质分组计算. #include <iostream> #include <vector> #include <cstdio> #i ...

  10. VC++中的类的内存分布(上)(通过强制转换,观察地址,以及地址里的值来判断)

    0.序 目前正在学习C++中,对于C++的类及其类的实现原理也挺感兴趣.于是打算通过观察类在内存中的分布更好地理解类的实现.因为其实类的分布是由编译器决定的,而本次试验使用的编译器为VS2015 RC ...