设为首页 收藏本站
查看: 1077|回复: 0

[经验分享] windows 下tomact,jdk solr 搭建solr-7804265

[复制链接]

尚未签到

发表于 2018-6-19 14:06:26 | 显示全部楼层 |阅读模式
  工具:

  •   jdk8.0(solr6.1.0必须装jdk8.0,开始装的7.0最后卸了)下载地址:http://www.oracle.com/technetwork/java/javase/downloads/index-jsp-138363.html
  •   solr6.1.0 http://www.apache.org/dyn/closer.lua/lucene/solr/6.1.0
  •   tomact (我下的8.5)http://tomcat.apache.org/
  步骤:
  1.先安装jdk,保证在cmd ,输入javac能运行(自行百度);
  2.再安装tomcat保证localhost:8080能正常访问(自行百度)
  3.
  a.解压solr。把solr/server/solr-webapp文件夹下的webapp目录复制拷贝到Tomcat/webapps文件夹内并            重命名webapp目录名为solr
  b.把solr/server/lib/ext中的jar包复制到Tomcat/webapps/solr/WEB-INF/lib目录中。
  c.在任意盘符新建solr_home文件夹(我在D盘创建)。把solr/server/solr目录复制到solr_home下。这个目录         也就是后面你创建索引实例Core需要用到的目录。配置文件(schema.xml)和索引都保存在这里。
  d.把solr/server/resources下的log4j.properties复制到Tomcat/webapps/solr/WEB-INF/classes目录内。           如 。果classes不存在手动创建。
  f.配置web.xml。打开Tomcat/webapps/solr/WEB-INF下的web.xml。找到如下配置内容
<env-entry>  
       <env-entry-name>solr/home</env-entry-name>
  
       <env-entry-value>/put/your/solr/home/here</env-entry-value>
  
       <env-entry-type>java.lang.String</env-entry-type>
  
</env-entry>
  放开注释,并修改env-entry-value为你的solr_home地址。我的地址是d:/solr_home/solr
  OK。保存。顺便重启下tomcat。然后在浏览器输入http://localhost:8080/solr/index.html。 刚开始我配置完后直接输入http://localhost:8080/solr 回车提示404. 4.x部署这样是能打开的,5.x必须输入到index.html。 出solr Admin UI则说明你的搞定了
  4.添加core
  在tomcat/solrhome/目录下创建core1(自定义), 在其目录下创建data文件夹,并将tomcat7/solrhome/configsets/basic_configs/目录下的conf文件夹复制到core1下。然后在solr控制台点击Add Core
DSC0000.jpg

  name:给core随便起个名字
  instanceDir:core的安装目录,这里就是之前在tomcat/solrhome/目录下创建的core1文件夹
  dataDir:指定用于存放lucene索引和log日志文件的目录路径,该路径是相对于core根目录(在单core模式下,就直接是相对于solr_home了),默认值是当前core目录下的data。
  config:用于指定solrconfig.xml配置文件的文件名,启动时会去core1/config目录下去查找。
  schema:即用来配置你的schema.xml配置文件的文件名的,schema.xml配置文件应该存放在当前core目录下的conf目录下。但是下载的solr里没有这个文件,所以我也不管了。
  属性都填上,然后点击Add Core,就创建完成了。
  5.代码我用的php,用的Tp,我把下载的php-solr-client放在Tp的vendor下,当然会报类找不到的错,自己一个个引入吧!
vendor('Solr.Service');  
// 连接solr服务器
  
$solr = new \Apache_Solr_Service('127.0.0.1', '8080', '/solr/core1');
  

  
//测试是否联通
  
if (!$solr->ping()) {
  
    echo 'Solr service not responding.';
  
    exit;
  
}
  上面实例化的第三个参数是你建的core的名字
   $data = array(  
            array(
  
                'id' => 'EN80922032',
  
                'name' => '男士打磨直筒休闲牛仔裤',
  
                'brand' => 'ENERGIE',
  
                'cat' => '牛仔裤',
  
                'price' => '1870.00'
  
            ),
  
            array(
  
                'id' => 'EN70906025',
  
                'name' => '品牌LOGO翻领拉链外套',
  
                'brand' => 'ENERGIE',
  
                'cat' => '外套',
  
                'price' => '1680.00'
  
            ),
  
        );
  

  
//添加索引数据
  
        $documents = array();
  
        foreach($data as $key => $value) {
  
            $part =new \Apache_Solr_Document();
  
            foreach($value as $key2 =>$value2) {
  
                $part->$key2 =$value2;
  
            }
  

  
            $documents[] = $part;
  
        }
  

  
        $solr->addDocuments( $documents );
  
        $solr->commit();
  
        $solr->optimize();
  这段代码,百度一下基本都是这个例子;但自己跑就可能失败,

  •   没建立索引,添加对应的字段前,先建字段,可以通过配置文件,也可以通过那个后台,我用的solr6.0所以后台可以直接add filed 。
  •   commit()的时候失败了,找了下原因是说solr-php-clien的版本不支持,所以提交不了,没办法,我换了一个(好像是commit的时候那个$rowPost的参数为空,我也不知道为啥,知道的告诉我)。
  •   optimize失败。虽然optimize方法执行失败,但通过solr admin可以查到数据,也就是数据执行了。解释说这个方法有点像硬盘上整理磁盘碎片的操作。为了提高搜索速度。所以直接注释了算了。
  •   ok了终于能运行成功了。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-525947-1-1.html 上篇帖子: windows 下 php 安装solr扩展 下篇帖子: windows环境使用redis
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表