solr运行配置与数据库数据导入到solr

 一、运行

  1,solr运行容器,tomcat

  2,拷贝apache-solr-3.6.0.war到tomcat的webapps目录下,并改名为solr.war

  3,tomcat的conf目录下建立结构为conf/Catalina/localhost的两个文件夹。建立结构为solr-tomcat/solr的两个文件夹(solr的HOME目录),如建在D盘根目录,d:/solr-tomcat/solr,solr-tomcat文件夹名字可任意命名,将apache-solr-3.6.0\example\solr下的所有文件及文件夹拷贝到这下面

  4,在localhost文件夹下建立solr.xml,并保存如下内容:


<Context docBase="D:\tomcat-6.0\webapps\solr.war" debug="0" crossContext="true" >

<Environment name="solr/home" type="java.lang.String" value="D:/solr-tomcat/solr" override="true" />

</Context>

  5,此时可以运行tomcat,地址栏输入:http://localhost:8080/solr/admin进行验证

  6,开始为导入数据库数据添加配置。将jdbc驱动jar和apache-solr-3.6.0\dist\apache-solr-dataimporthandler-3.6.0.jar 两个jar拷贝到tomcat的webapps/solr/WEB-INF/lib下。将apache-solr-3.6.0\example\example-DIH\solr下的所有文件及文件夹拷贝(并覆盖)到solr的HOME目录,如:d:/solr-tomcat/solr

  7,更改solr Home目录下的conf/solrconfig.xml,添加如下内容:


<requestHandler name="/dataimport" class="org.apache.solr.handler.dataimport.DataImportHandler">

<lst name="defaults">

<str name="config">D:\solr-tomcat\solr\db\conf\db-data-config.xml</str> <!--  根据自己电脑里的db-data-config.xml的实际路径来写 -- >

</lst>

</requestHandler>

  8, 将solr Home目录下面的solrconfig.xml和schema.xml拷贝到db文件夹下面的conf中,注意:导入的字段要先在schema.xml中定义

  定义如:<field name="firstname" type="string" stored="true" indexed="true"/>

  9,修改db\conf\db-data-config.xml,可参考如下:


<dataConfig>

<dataSource type="JdbcDataSource" driver="com.mysql.jdbc.Driver" url="jdbc:mysql://localhost:3306/langsin1" user="root" password="root"/>

<document name="userss">

<entity name="users" pk="id" query="select * from users">

<field column="id" name="id" />

<field column="firstname" name="firstname" />

<field column="lastname" name="lastname" />

<field column="age" name="age" />

</entity>

</document>

</dataConfig>

  10,启动TOMCAT,输入地址进行导入,导入分为很多模式:我选用的全部倒入模式

  http://localhost:8080/solr/db/dataimport?command=full-import

  11,如果有中文,修改tomcat的server.xml文件

  <Connector port="8080" protocol="HTTP/1.1"

  connectionTimeout="20000"

  redirectPort="8443" URIEncoding="UTF-8"

  12,添加中文分词,如:mmseg4j, 在$SOLR_HOME下建立lib和dic两个目录,讲mmseg4j-all-1.8.4.jar拷贝到lib目录,将data里的.dic文件拷贝到dic目录

13,修改Schema.xml

  添加fieldType

  Xml代码


<types>

<fieldType name="textComplex" class="solr.TextField" positionIncrementGap="100" >

<analyzer>

<tokenizer class="com.chenlb.mmseg4j.solr.MMSegTokenizerFactory" mode="complex" dicPath="/opt/solr/example/solr/dic"/>

<filter class="solr.LowerCaseFilterFactory"/>

</analyzer>

</fieldType>

<fieldType name="textMaxWord" class="solr.TextField" positionIncrementGap="100" >

<analyzer>

<tokenizer class="com.chenlb.mmseg4j.solr.MMSegTokenizerFactory" mode="max-word" dicPath="/opt/solr/example/solr/dic"/>

<filter class="solr.LowerCaseFilterFactory"/>

</analyzer>

</fieldType>

<fieldType name="textSimple" class="solr.TextField" positionIncrementGap="100" >

<analyzer>

<tokenizer class="com.chenlb.mmseg4j.solr.MMSegTokenizerFactory" mode="simple" dicPath="/opt/solr/example/solr/dic"/>

<filter class="solr.LowerCaseFilterFactory"/>

</analyzer>

</fieldType>

..

</types>

  Xml代码


<fieldname="simple"type="textSimple"indexed="true"stored="true"multiValued="true"/>

<fieldname="complex"type="textComplex"indexed="true"stored="true"multiValued="true"/>

<fieldname="maxword"type="textMaxWord"indexed="true"stored="true"multiValued="true"/>

  Xml代码


<copyField source="simple" dest="text"/>

<copyField source="complex" dest="text"/>

  14,重启tomcat,

  进入 http://yourhost:8080/solr-example/admin/analysis.jsp,测试中文分词

最新内容请见作者的GitHub页:http://qaseven.github.io/

时间: 2024-08-22 14:37:37

solr运行配置与数据库数据导入到solr的相关文章

ASP.NET中数据库数据导入Excel并打印(1)

asp.net|excel|打印|数据|数据库 众所周知,WEB上的打印是比较困难的,常见的WEB上打印的方法大概有三种:       1.直接利用IE的打印功能.一般来说,这种方法可以做些扩展,而不是单单的调用javascript:print()这样简单,比如,可以使用如下代码:      <OBJECT   id=WebBrowser classid=CLSID:8856F961-340A-11D0-A96B-00C04FD705A2 height=0 width=0>   </OB

Sql Server数据库数据导入到SQLite数据库中

背景:Sql Serve数据库中有个表格A,想把数据导入到SQLite数据库中 工具下载地址:点击打开链接 用法: 原作者地址及下载地址:点击打开链接

数据库数据导入导出系列之五 C#实现动态生成Word(转)

1. 一个控制台例子,实现动态生成Word. 首先,添加引用:COM->Microsoft Word 11.0 Object Library. View Code 2. 介绍几篇牛人写的关于操作Word的文章 [分享]一段导出到word模版的代码 http://www.cnblogs.com/goody9807/archive/2005/08/25/222526.html 再谈word2003编程 http://www.cnblogs.com/Andmm/archive/2008/06/18/1

2.myql数据导入到solr,并建立solr索引(学习笔记)

1.1     业务域名的配置 1.1.1   需求 要使用solr实现电商网站中商品搜索. 电商中商品信息在mysql数据库中存储了,将mysql数据库中数据在solr中创建索引. 需要在solr的schema.xml文件定义商品Field. 1.1.2   定义步骤 在schema.xml中配置域   商品id(pid) 这是商品的主键,由于schema文件中已经有主键id了就不需要对它配置了 <field name="id"type="string" i

ASP.NET中数据库数据导入Excel并打印(2)

asp.net|excel|打印|数据|数据库 大家可能觉得上面的代码比较复杂,因为上面对于对打印要求比较高的应用,是十分有效的.如果只是单单对数据进行导出,还可以使用简单的格式,比如使用以下的代码:      Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load    Dim dt As DataTable = CType(Application

mongodb数据库数据导入导出备份教程

windows下面mongodb数据库备份和恢复 我可以讲数据备份到c:\data\dump目录下面,首先创建这个路径.然后进入到mongodb的bin目录下面 我的是: C:\Program Files\mongodb\bin 备份脚本是: //备份 mongodump -h 127.0.0.1:27017 -d test -o c:\data\dump 恢复脚本是: //恢复  mongorestore -h 127.0.0.1:27017 -d test --directoryperdb 

Python中编写函数将数据库内容导入到EXCEL

继Python将数据库数据导入到EXCEL文章之后,这次来一个推进版,将其编写为函数,接着是class.哈哈.. 问过群里的朋友,他们大多采用工具将数据导入到excel,本人以前是用select ... into outfile 导出为csv格式,但是这样的数据是没有列标题的,每次手动添加.后来用过sqlyog 这个工具也没有列标题.后来改用Navicat,觉得以后可以过安稳日子啦,有一次新项目上线,运营要"全部"数据(真不知道他们怎么想的),用navicat 试了一次,慢的要死.还经

1、solr包结构介绍,solrCore的安装配置,solr部署到Tomcat,多solrCore配置,配置中文分词器,界面功能介绍,Schema.xml的基本使用,数据导入

一.下载solr,下载地址是:http://archive.apache.org/dist/lucene/solr/,选择自己想要的solr的版本,本项目使用的版本是4.10.3 二.如果想下载Lucene,下载地址是: https://mirrors.tuna.tsinghua.edu.cn/apache/lucene/java/ 三.其中solr-4.10.3的包结构如下: bin solr的脚本 contrib solr为了增强自身的功能,所添加的扩展依赖包 dist Solr  buil

Centos中mysql数据库安装配置与数据导入/备份

1.安装配置Mysql :本文安装的系统为Centos6.3:  代码如下 复制代码 yum list mysql # 查看有没有安装包 yum install mysql #  安装mysql客户端 yum list mysql-server # 查看有没有安装包 yum install mysql-server # 安装mysql 服务器端 #安装过后需要启动mysql服务 service mysqld start #或者/etc/init.d/mysqld start # 启动过后需要给m