Solr4.2.0的配置以及与MySQL连接创建document
来源:互联网 发布:闲鱼与淘宝的区别 编辑:程序博客网 时间:2024/06/17 20:50
1) 安装配置:
使用版本:4.2.0 可以到http://lucene.apache.org/solr/下载
配置:将文件解压,
将dis目录下的war文件放入到tomcat webapp目录下,改名为solr.war;
第一次启动Tomcat,会报错,因为我们还没有配置solr/home,打开webapp/solr下的web.xml,配置如下:
<env-entry>
<env-entry-name>solr/home</env-entry-name>
<env-entry-value>D:\solr-4.2.0\example\solr</env-entry-value>
<env-entry-type>java.lang.String</env-entry-type>
</env-entry>
打开:localhost:8080/slor, 正确显示。
2) 连接数据库
要建立自己的全文检索,一般都需要从数据库导入数据,在原来配置的基础上,增加导入的功能 。
l D:\solr-4.2.0\example\solr\collection1\conf\solrconfig.xml中增加 :
<requestHandler name="/dataimport" class="org.apache.solr.handler.dataimport.DataImportHandler">
<lst name="defaults">
<str name="config">data-config.xml</str>
</lst>
</requestHandler>
l data-config.xml,内容为数据库的连接信息 (文件dataconfig.xml建在solrconfig所在目录下)
<?xml version="1.0"encoding="UTF-8" ?>
<dataConfig>
<dataSource type="JdbcDataSource"driver="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost:3306/test" user="root" password="123"/>
<document name="test">
<entity name="post" query="select * from post" deltaImportQuery="SELECT * FROM post WHERE id='${dataimporter.delta.id}'"
deltaQuery="SELECT id FROM post WHERE time > '${dataimporter.last_index_time}'">
<field column="id" name="id" />
<field column="name" name="name" />
<field column="post" name="post" />
<field column="time" name="time" />
</entity>
</document>
</dataConfig>
l schema.xml文件中增加
<field name="name"type="string" indexed="true" stored="true"/>
<field name="post" type="string"indexed="true" stored="true" />
<field name="time" type="date"indexed="true" stored="true" />
这里会存在的问题是: <uniqueKey>name</uniqueKey>的处理;
l 添加jar包: 添加到webapps\solr\WEB-INF\lib 目录下
mysql-connector-java-5.1.6.jar
solr-dataimporthandler-4.2.0.jar
solr-dataimporthandler-extras-4.2.0.jar
后两个jar包在D:\solr-4.2.0\dist 下
l http://localhost:8080/solr/dataimport?command=full-import即可以进行导入数据
l http://localhost:8080/solr/#/collection1/query可以进行查询
http://localhost:8080/solr/dataimport?command=delta-import 可以建立对新数据的索引。但是这里的问题是:1)在数据表里必须有一个字段是维护记录的修改时间的,因为在Solr中会根据这个时间与dataimporter.last_index_time比较来决定是否建立索引。是否可以用其他的字段来完成这一功能我还没有找到。2):当数据库中是删除的操作时,Solr这边怎么知道呢? 3)如何在数据库变化时,自动访问 http://localhost:8080/solr/dataimport?command=delta-import 来维护Solr对DB的索引?
- Solr4.2.0的配置以及与MySQL连接创建document
- Solr4.4的安装与配置
- Solr4.4的安装与配置
- solr4.7的入门与相关配置
- linux下solr4.8.1.的安装与配置
- MYSQL的安装以及QT与MYSQL的连接
- 配置shark与mysql的连接
- django 与mysql的连接配置
- 连接Oracle与mysql配置的不同之处
- MySQL的基本配置与创建数据库
- Solr4.6 的部署配置
- Solr4.10.2的Tomcat配置
- Solr4.10.2的Tomcat配置
- Solr4+IKAnalyzer的安装配置
- Solr4+IKAnalyzer的安装配置
- Hive的安装配置和连接mysql以及基础操作
- 配置python与mysql连接(mysqldb)的安装与配置。
- solr4.5 mysql 配置数据导入
- 第六周项目三----平面坐标类
- 编程之美2013 资格赛 第一题 解题报告
- 图像增强之直方图均衡化
- Hibernate的generator属性的意义
- XDC工具使用示例
- Solr4.2.0的配置以及与MySQL连接创建document
- 随便写点,关于大数相加和递归最大公约数的水解
- Subversion Edge服务器配置
- hdu3887
- 说说虚拟机下bt5的汉化
- NIO学习笔记(2)--NIO核心类(Selector)
- CentOS设置程序开机自启动的方法
- Eclipse开发调试ARM裸机程序(四)赤裸裸的代码拷贝
- 第三次上机