Solr入门
来源:互联网 发布:工人物语6 知乎 编辑:程序博客网 时间:2024/06/03 15:57
1.准备工作
solr5.5版本之前,conf中为schema.xml文件,solr5.5版本之后,改为managed-schema文件,内容一样,形式不一样。
solr版本的不一样对JDK的版本和Tomcat版本也有要求,最新solr6需要jdk1.8和Tomcat8
2.环境
solr5.3.1
jdk1.7
tomcat7
3.solr部署到Tomcat
示例:
3.1.D:\solr-5.5.3\server\solr-webapp\webapp拷贝此目录及此目录下的所有文件至E:\tom7\apache-tomcat-7.0.73\webapps\solr;
将webapp文件拷贝至tomcat7的webapps下改名为solr;
拷贝E:\solr-5.3.1\server\lib\ext目录下所有的jar包以及E:\solr-5.3.1\server\resources下的log4j配置文件至Tomcat下新建的solr项目
E:\tom7\apache-tomcat-7.0.73\webapps\solr\WEB-INF\lib目录下,修改web.xml文件,添加
<env-entry>
<env-entry-name>solr/home</env-entry-name>
<env-entry-value>E:\tom7\solr_home</env-entry-value>
<env-entry-type>java.lang.String</env-entry-type>
</env-entry>
3.2.创建E:\tom7\solr_home,创建solr_home,拷贝E:\solr-5.3.1\server\solr下所有的文件至solr_home目录下
3.3.这时候启动Tomcat,登录localhost:8080/solr进入solr管理界面
4.创建solr核心
4.1 在solr_home目录下创建一个文件夹随意命名,这里用core0命名,将E:\tom7\solr_home\configsets\basic_configs目录下的conf文件夹拷贝至当前core0目录,
创建data文件夹,此文件夹是用于保存索引和log数据。
5.链接mysql数据库创建索引
需要用到DataImportHandler.jar在E:\solr-5.3.1\dist\solr-dataimporthandler-5.3.1.jar拷贝至E:\tom7\apache-tomcat-7.0.73\webapps\solr\WEB-INF\lib目录下
同样需要将mysql-connector-java-5.1.6.jar拷贝至E:\tom7\apache-tomcat-7.0.73\webapps\solr\WEB-INF\lib目录下
修改E:\tom7\solr_home\core0\conf\solrconfig.xml
<requestHandler name="/dataimport" class="solr.DataImportHandler">
<lst name="defaults">
<str name="config">db-data-config.xml</str>
</lst>
</requestHandler>
在当前目录新建db-data-config.xml并编辑
<dataConfig>
<dataSource name="solrDB" type="JdbcDataSource"
driver="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/poi"
user="root"
password="123456" batchSize="-1"/>
<document name="poi">
<entity dataSource="solrDB" name="poi"
query="select *from poi">
<field column="id" name="id" />
<field column="name" name="name" />
<field column="type" name="type" />
<field column="lat" name="lat"/>
<field column="lng" name="lng"/>
</entity>
</document>
</dataConfig>
修改schema.xml
<uniqueKey>id</uniqueKey>
<!-- mysql -->
<field name="id" type="long" indexed="true" stored="true" required="true" />
<field name="name" type="text_ik" indexed="true" stored="true" termVectors="true" termPositions="true" termOffsets="true"/>
<field name="type" type="int" indexed="true" stored="true" termVectors="true" termPositions="true" termOffsets="true"/>
<field name="lat" type="float" indexed="true" stored="true" termVectors="true" termPositions="true" termOffsets="true"/>
<field name="lng" type="float" indexed="true" stored="true" termVectors="true" termPositions="true" termOffsets="true"/>
<!-- mysql -->
注意<uniqueKey>id</uniqueKey> <field name="id" type="long" indexed="true" stored="true" required="true" />是默认存在的,可以修改
6.登录http://localhost:8080/solr,添加core命名成和自己自定义的core0一样即可,在dataimport一栏中,选择full-import
并且选择entity为自己要建立索引的表 运行即可。
报错解决方案:
注意:solr创建索引很快,如果表数据不超过1万条,几秒钟就出结果,如果没有结果,在log中查看错误异常
1.DataImportHandler运行异常,是因为表数据太大,内存溢出,添加batchSize="-1"即可,如下所示:
<ataSource name="solrDB" type="JdbcDataSource"
driver="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/poi"
user="root"
password="123456" batchSize="-1"/>
2.提示找不到页面,将E:\solr-5.3.1\example\example-DIH\solr\solr\conf目录下的3个html文件拷贝至core0/conf目录下即可
将webapp文件拷贝至tomcat7的webapps下改名为solr;
拷贝E:\solr-5.3.1\server\lib\ext目录下所有的jar包以及E:\solr-5.3.1\server\resources下的log4j配置文件至Tomcat下新建的solr项目
E:\tom7\apache-tomcat-7.0.73\webapps\solr\WEB-INF\lib目录下,修改web.xml文件,添加
<env-entry>
<env-entry-name>solr/home</env-entry-name>
<env-entry-value>E:\tom7\solr_home</env-entry-value>
<env-entry-type>java.lang.String</env-entry-type>
</env-entry>
3.2.创建E:\tom7\solr_home,创建solr_home,拷贝E:\solr-5.3.1\server\solr下所有的文件至solr_home目录下
3.3.这时候启动Tomcat,登录localhost:8080/solr进入solr管理界面
4.创建solr核心
4.1 在solr_home目录下创建一个文件夹随意命名,这里用core0命名,将E:\tom7\solr_home\configsets\basic_configs目录下的conf文件夹拷贝至当前core0目录,
创建data文件夹,此文件夹是用于保存索引和log数据。
5.链接mysql数据库创建索引
需要用到DataImportHandler.jar在E:\solr-5.3.1\dist\solr-dataimporthandler-5.3.1.jar拷贝至E:\tom7\apache-tomcat-7.0.73\webapps\solr\WEB-INF\lib目录下
同样需要将mysql-connector-java-5.1.6.jar拷贝至E:\tom7\apache-tomcat-7.0.73\webapps\solr\WEB-INF\lib目录下
修改E:\tom7\solr_home\core0\conf\solrconfig.xml
<requestHandler name="/dataimport" class="solr.DataImportHandler">
<lst name="defaults">
<str name="config">db-data-config.xml</str>
</lst>
</requestHandler>
在当前目录新建db-data-config.xml并编辑
<dataConfig>
<dataSource name="solrDB" type="JdbcDataSource"
driver="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/poi"
user="root"
password="123456" batchSize="-1"/>
<document name="poi">
<entity dataSource="solrDB" name="poi"
query="select *from poi">
<field column="id" name="id" />
<field column="name" name="name" />
<field column="type" name="type" />
<field column="lat" name="lat"/>
<field column="lng" name="lng"/>
</entity>
</document>
</dataConfig>
修改schema.xml
<uniqueKey>id</uniqueKey>
<!-- mysql -->
<field name="id" type="long" indexed="true" stored="true" required="true" />
<field name="name" type="text_ik" indexed="true" stored="true" termVectors="true" termPositions="true" termOffsets="true"/>
<field name="type" type="int" indexed="true" stored="true" termVectors="true" termPositions="true" termOffsets="true"/>
<field name="lat" type="float" indexed="true" stored="true" termVectors="true" termPositions="true" termOffsets="true"/>
<field name="lng" type="float" indexed="true" stored="true" termVectors="true" termPositions="true" termOffsets="true"/>
<!-- mysql -->
注意<uniqueKey>id</uniqueKey> <field name="id" type="long" indexed="true" stored="true" required="true" />是默认存在的,可以修改
6.登录http://localhost:8080/solr,添加core命名成和自己自定义的core0一样即可,在dataimport一栏中,选择full-import
并且选择entity为自己要建立索引的表 运行即可。
报错解决方案:
注意:solr创建索引很快,如果表数据不超过1万条,几秒钟就出结果,如果没有结果,在log中查看错误异常
1.DataImportHandler运行异常,是因为表数据太大,内存溢出,添加batchSize="-1"即可,如下所示:
<ataSource name="solrDB" type="JdbcDataSource"
driver="com.mysql.jdbc.Driver"
url="jdbc:mysql://localhost:3306/poi"
user="root"
password="123456" batchSize="-1"/>
2.提示找不到页面,将E:\solr-5.3.1\example\example-DIH\solr\solr\conf目录下的3个html文件拷贝至core0/conf目录下即可
0 0
- solr入门
- Solr入门
- solr入门
- solr入门
- Solr入门
- solr入门
- Solr入门
- solr入门
- solr入门
- solr入门
- Solr使用入门指南
- solr入门与配置
- Solr 使用入门介绍
- Solr使用入门指南
- Solr入门学习
- Solr 开发入门
- Solr使用入门指南
- Solr使用入门指南
- java Map转Object Object转Map
- android 通过WebSocket 实现长连接通讯消息
- Redis 简单入门
- Linux 平台上的软件包管理
- 关于php学习滞留原因
- Solr入门
- RSA crypt
- 一位测试员的自白:漫漫测试路,我们因隐秘而伟大
- Springmvc+mybatis案列 2(实现员工增删改查的操作,工具myeclipse)
- Gradle依赖项学习总结
- CSS布局模型完全解析
- MYSQL经典SQL之星期问题
- OAF 系列教程 三 查询(下)
- 基于CEP的量化交易平台建设