linux 安装 solr 7.5

第一步:安装启动
cd /usr/local
wget http://mirrors.shuosc.org/apache/lucene/solr/7.5.0/solr-7.5.0.tgz
tar -zxvf solr-7.5.0.tgz
mv solr-7.5.0 solr
vim /etc/profile
--------------------------------------------------------------------------
    export SOLR_INSTALL_HOME=/usr/local/solr
    export PATH=$SOLR_INSTALL_HOME/bin:$PATH
--------------------------------------------------------------------------
source /etc/profile
solr start -force
第二步:开启防火墙

浏览器访问xxx.xxxx.xxx.xxxx:8983/solr

第三步:新建实例

solr的web界面的 "Add Core" 添加一个 "test" 实例
然后去test中添加配置文件

cp -r /usr/local/solr/server/solr/configsets/_default/conf /usr/local/solr/server/solr/configsets/test

再次Add Core

第四步:配置文件

在test/conf目录下新建data-config.xml数据库配置文件



    
    
        
            
            
        
    


query:是获取全部数据的SQL
deltaImportQuery:是获取增量数据时使用的SQL
deltaQuery:是获取pk的SQL
field:column数据库字段名,name为schema.xml中字段名

然后在test的solrconfig.xml配置文件中添加一行


      
        data-config.xml
      

然后在test的managed-schema配置文件中添加需要的字段


name 前后有下划线的name是系统保留的名字,比如“version
type 类型,对应于fieldType的name
default 该field的缺省值
indexed 是否为该field建立索引,以让用户可以搜索它、统计它(facet)
stored true/false,定义这个field是否可以返回给查询者
multiValued true/false,是否可以容纳多个值(比如多个copyField的dest指向它)。如果是true,则该field不能被排序、不能作为uniqueKey
required true/false,告诉solr这个field是否接受空值,缺省为false
docValues true/false,建立document-to-value索引,以提高某些特殊搜索的效率(排序、统计、高亮)

第五步:导入必备的三个jar包

第一个:
mysql-connector-java-5.1.15-bin.jar
可以自搜下载(https://link.juejin.im/?target=http://central.maven.org/maven2/mysql/mysql-connector-java/8.0.11/mysql-connector-java-8.0.11.jar)

第二、三个:
solr-dataimporthandler-7.5.0.jar
solr-dataimporthandler-extras-7.5.0.jar
这两个包去dist目录下找

将这三个包导入到 /usr/local/solr/server/solr-webapp/webapp/WEB-INF/lib

第六步:重启导入数据

solr restart -force


图片.png

图片.png
第七步:添加中文分词,通常情况下都是需要分词的,一般使用IK分词居多,还有庖丁之类的分词

下载分词器 https://search.maven.org/search?q=g:com.github.magese
将分词器的jar包导入/usr/local/solr/server/solr-webapp/webapp/WEB-INF/lib目录下

在test下的配置文件中追加ik分词的配置项目


    
        
        
    
    
        
        
     
  

这样我们就可以修改type类型为text_ik了



......

重启生效

安全配置

理论上solr是不对外网的,但是有时候为了测试什么的,还是需要用一下,所以可以配置用户名、密码来防止其他人直接操作你的solr,最重要的是可以直接看见你的数据用户名、密码;

首先创建配置文件:touch /usr/local/solr/server/etc/role.properties
追加如下内容:用户为test 密码123 权限为admin)

test: 123,admin

然后编辑文件:vim /usr/local/solr/server/contexts/solr-jetty-context.xml
追加如下内容:

    
            
                    
                        你猜猜账号密码多少啊? 
                        /etc/role.properties    
                    
            
   

接着编辑文件:vim /usr/local/solr/server/solr-webapp/webapp/WEB-INF/web.xml
追加如下内容:

      
          
        Solr
        /              
       
          
        admin
          
      
      
    BASIC         
    你猜猜账号密码多少啊?   

最后需要重启下solr就好了

一个实例装载同库多表

说明:有时候我们可能需要将一个数据库中的多张表融合到一个实例中去使用,当然这些表可以字段一样,也可以不一样,其实我们主要就修改data-config.xml就好了



    
    
        
            
            ......
        

        
            
            ......
        
    


# dataSource这个是数据源标识,两个entity代表两个不同的表,都要使用相同的数据源标识(标识名你可以自定义)
一个实例装载多库多表


    
                
    
    
        # 这是第一个数据源的表
        
            
            
        

        
            
            
        

        # 这是第二个数据源的表
        
            
            
        
        
        
            
            
        
    


# 注意啊:多个表之前如果ID重复了,会被覆盖掉的索引,需要自己去优化
问:如何删除一个实例?

答:直接干掉这个目录,然后重启solr就OK了

问:如何进行增量索引(一般情况下,增量索引都是搞成自动最好,俗称 "自动增量索引")?

答:未完待续

你可能感兴趣的:(linux 安装 solr 7.5)