JDK:1.6
solr: 4.3.0
step1 --> 下载solr 并解压
http://lucene.apache.org/solr/
图片1:
Step2 --> 创建 solr ($SOLR_HOME) 目录并拷贝文件
在C盘任意一目录下创建 solr: (如下:c:/temp/solr),然后拷贝以上/example/solr目录下面的所有内容到$SOLR_HOME。
图片2:
step3 --> 创建 solr WEB 应用
拷贝 图片1: ./dist/solr-4.3.0.war到$CATALINA_HOME/webapps/目录下,并重命名为solr.war。
启动服务,war包将被自动解压!
step4 --> 配置 web.xml
修改$CATALINA_HOME/webapps/solr/WEB-INF/web.xml,
启用<env-entry>属性,并修改为:
<env-entry> <env-entry-name>solr/home</env-entry-name> <env-entry-value>C:/temp/solr</env-entry-value> <env-entry-type>java.lang.String</env-entry-type> </env-entry>
step5 --> 配置 solrconfig.xml
修改 $SOLR_HOME/collection1/conf/solrconfig.xml,
找到<dataDir>属性值。
<dataDir>${solr.data.dir:C:/temp/solr/data}</dataDir>
到此,配置solr到Tomcat结束,启动Tomcat后,可以登录solr管理页面:http://localhost:8080/solr/
step6 --> Exception
如果发现启动不起来,就到tomcat 的log 目录下面查看原因。很多可能是由于缺少Jar包。
拷贝:slf4j-api-1.6.6.jar,slf4j-log4j12-1.6.6.jar 到 $CATALINA_HOME/common/lib,重新启动
拷贝:C:\Users\yuanpeng\Desktop\solr-4.3.1\example\lib\ext所有JAR到D:\tomcat7\lib
step6 --> 连接数据库
1、修改C:\temp\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>
2、新建数据库配置文件C:\temp\solr\collection1\conf\data-config.xml
<dataConfig> <dataSource driver="com.mysql.jdbc.Driver" url="jdbc:mysql://192.168.0.11:3306/test" user="root" password="123456"/> <document name="movieDoc"> <entity name="test1" query="select * from test1" > <field column="Title" name="my_title" /> <field column="Content" name="my_content" /> </entity> </document> </dataConfig>
修改文件C:\temp\solr\collection1\conf\schema.xml
<field name="my_title" type="string" indexed="true" stored="true"/> <field name="my_content" type="string" indexed="true" stored="true"/>
3、把本地下载解压的 solr3.5 文件里 , dist 目录下的 apache-solr-dataimporthandler-3.5.0.jar 、 apache-solr-dataimporthandler-extras-3.5.0.jar、连接数据库的驱动 Tomcat 6.0\webapps\solr\WEB-INF\lib 目录下
4、http://localhost:8080/solr/dataimport?command=full-import 这 url 告诉 solr 做全量索引,做索引中会删除所有数据。当然也可以用 clean=false 参数来告诉它不删除,但也会删除相同id的(在 scheam.xml 的uniqueKey 声明的)。http://localhost:8080/solr/dataimport?command=full-import&clean=false