solr4.10.1 tomcat jdk1.7 配置Mysql数据库连接导入数据

create table `test`.`business_info`(
        `ID` INT not null auto_increment,
       `business_name` CHAR(255),
       `business_type` CHAR(50),
       `updatetime` DATETIME not null,
        primary key (`ID`)
    );
    create unique index `PRIMARY` on `test`.`business_info`(`ID`);
insert into business_info(business_name,business_type,updatetime) values('cup','Inter-i5','2013-09-07 09:08:00');
insert into business_info(business_name,business_type,updatetime) values('cup','Inter-i3','2013-09-06 09:06:00');
insert into business_info(business_name,business_type,updatetime) values('cup','Inter-i7','2013-09-06 09:06:00');
insert into business_info(business_name,business_type,updatetime) values('cup1','Inter-i5','2013-09-05 09:08:00');
insert into business_info(business_name,business_type,updatetime) values('cup1','Inter-i3','2013-09-07 09:08:00');
insert into business_info(business_name,business_type,updatetime) values('cup1','Inter-i7','2013-09-06 09:08:00');
insert into business_info(business_name,business_type,updatetime) values('cup2','Inter-i5','2013-09-05 09:08:00');
insert into business_info(business_name,business_type,updatetime) values('cup2','Inter-i3','2013-09-07 09:08:00');
insert into business_info(business_name,business_type,updatetime) values('cup2','Inter-i7','2013-09-06 09:08:00');
insert into business_info(business_name,business_type,updatetime) values('cup3','Inter-i5','2013-09-05 09:08:00');
insert into business_info(business_name,business_type,updatetime) values('cup3','Inter-i3','2013-09-07 09:08:00');
insert into business_info(business_name,business_type,updatetime) values('cup3','Inter-i7','2013-09-06 09:08:00');

                                         ↑

以上是在 mysql 中的数据库test  建立数据表 business_info,并插入数据(准备生成索引的数据)

(按照solr 的tomcat配置的位置说明)

在/opt/tomcat/webapps/solr/WEB-INF/lib/    目录下添加一下jar包

solr-dataimporthandler-4.10.1.jar
solr-dataimporthandler-extras-4.10.1.jar

mysql-connector-java-5.1.10-bin.jar


数据准备完毕后配置各种xml文件 

一、配置solrconfig.xml

 添加:requestHandler

<requestHandler name="/dataimport" class="org.apache.solr.handler.dataimport.DataImportHandler">
	<lst name="defaults">
		<str name="config"><span style="color:#FF0000;">data-config.xml</span></str><!--此处的data-config.xml 主要是用配置数据库连接信息 可以和  solrconfig.xml放在同一目录 -->
	</lst>
</requestHandler>

二、配置 data-config.xml 文件(名字可以随意定义,只要与solrconfig.xml中配置的一致即可,配置文件 和 solrconfig.xml在同一目录)

<?xml version="1.0" encoding="UTF-8" ?>
<dataConfig>
	<dataSource driver="com.mysql.jdbc.Driver"  
	            url="jdbc:mysql://127.0.0.1:3306/test"   
	            user="root"   
	            password="zhu" 
	           <span style="color:#FF0000;"> batchSize="-1"</span>/><!-- 注意:mysql中一定要batchSize="-1" 否则会报异常-->
	<document>
		<entity name="business_info" pk="id"
				query="select id,business_name,business_type from business_info"
				deltaImportQuery="select id,business_name,business_type from business_info where id='${dataimporter.delta.ID}'"
				deltaQuery="select id,business_name,business_type from business_info where  to_char(updatetime,'yyyy-mm-dd hh24:mi:ss')> '${dataimporter.last_index_time}'">
			<field column="id" name="id"/>
			<field column="business_name" name="business_name"/>
			<field column="business_type" name="business_type"/>
		</entity>
	</document>
</dataConfig>

三、配置schema.xml文件 添加一下字段(也就是要生成索引的数据库字段) (根据上一篇IK分词的设置,也可以把字段设置成需要分词的)

  <field name="id"        type="string"    indexed="true"  stored="true"  multiValued="false" required="true"/>
  <field name="business_name"      type="string"    indexed="true"  stored="true"  multiValued="false" />
  <field name="business_type"      type="string"    indexed="true"  stored="true"  multiValued="false" />
  <field name="updatetime"      type="string"    indexed="true"  stored="true"  multiValued="false" /> 

四、注意collection 下面的conf中不要缺少配置文件

    当你建立完data-config.xml 目录里会多出 data-config.xml文件


五、重启服务,导入数据

 


六、查询测试:


OK   tomcat版本的数据源连接配置结束   如果出现异常 可以查看Logging 的详细信息,仔细研究



  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值