一、首先是solr在tomcat中的运行环境搭建
下载solr-4.2.0
1:将dist目录下的solr-4.2.0.war 复制到tomcat 下的webapps根目录,重命名为solr.war,运行tomcat,solr.war被解压。
2:在tomcat根目录(可以是任何目录)新建文件目录solr/home,将solr-4.1.0\example下的solr复制到solr/home目录下,如果要配置多核,只用复制solr-4.1.0\example\multicore下的core0、core1、solr.xml复制到solr/home
3: 找到 webapps\solr\WEB-INF下的web.xml,配置solr/home信息
<env-entry>
<env-entry-name>solr/home</env-entry-name>
<env-entry-value>D:/apache-tomcat-7.0.34/solr/home</env-entry-value>
<env-entry-type>java.lang.String</env-entry-type>
</env-entry>
到这里,就可以测试一下了.运行tomcat,访问http://127.0.0.1:端口号/solr/admin
如果看到solr的主页面,并且没有错误信息,说明已经配置成功。
二、下面是通过从mysql中导入数据进行数据的采集与索引
1、将mysql的驱动程序jar包拷贝到D:\apache-tomcat-6.0.24\webapps\solr\WEB-INF\lib下面。
2、从下载的solr的dist文件夹中将solr-dataimporthandler-4.2.0.jar及solr-dataimporthandler-extras-4.2.0.jar拷贝到D:\apache-tomcat-6.0.24\webapps\solr\WEB-INF\lib下面。(如果缺少会报ClassNotFoundException: org.apache.solr.handler.dataimport.DataImportHandler异常)
3、配置solrconfig.xml文件
- <!-- the dataimport requestHandler -->
- <requestHandler name="/dataimport" class="org.apache.solr.handler.dataimport.DataImportHandler">
- <lst name="defaults">
- <str name="config">data-config.xml</str>
- </lst>
- </requestHandler>
4、配置数据库映射文件,也就是第三步中的:db-data-config.xml文件。
在与solrconfig.xml相同的位置,也就是D:\apache-tomcat-7.0.34\solr\home\solr\collection1\conf目录下,创建data-config.xml文件,然后加入如下的配置:
5、 启动 tomcat ,打开浏览器,并输入:
- <?xml version="1.0" encoding="UTF-8"?> <dataConfig> <dataSource type="JdbcDataSource" driver="com.mysql.jdbc.Driver" url="jdbc:mysql://10.46.178.23:3306/zxdbm_appstore" user="root" password="root"/> <document>
- <!---- column对应的是数据库表中的列名,name对应的是schema.xml中配置的field节点中的name属性 --->
- <entity name="userinfo" pk="user_id" query="select user_id, user_name, user_desc from my_users"> <field column="user_id" name="id"/> <field column="user_name" name="title"/> <field column="user_desc" name="content"/> </entity> </document> </dataConfig>
http://localhost:8080/solr/dataimport?command=full-import
如果没有问题就会显示如下返回结果: