您的位置:首页 > 运维架构 > Linux

linux下启动solr查询数据库报错

2017-03-29 09:41 471 查看
查询数据时出现下面的错误:
o.a.s.h.d.DocBuilder Exception while processing: goods document : SolrInputDocument(fields: []):org.apache.solr.handler.dataimport.DataImportHandlerException:
Unable to execute query: select * from goods Processing Document # 1
at org.apache.solr.handler.dataimport.DataImportHandlerException.wrapAndThrow(DataImportHandlerException.java:69)
at org.apache.solr.handler.dataimport.JdbcDataSource$ResultSetIterator.<init>(JdbcDataSource.java:327)
at org.apache.solr.handler.dataimport.JdbcDataSource.createResultSetIterator(JdbcDataSource.java:288)
at org.apache.solr.handler.dataimport.JdbcDataSource.getData(JdbcDataSource.java:283)
at org.apache.solr.handler.dataimport.JdbcDataSource.getData(JdbcDataSource.java:52)
at org.apache.solr.handler.dataimport.SqlEntityProcessor.initQuery(SqlEntityProcessor.java:59)
at org.apache.solr.handler.dataimport.SqlEntityProcessor.nextRow(SqlEntityProcessor.java:73)
at org.apache.solr.handler.dataimport.EntityProcessorWrapper.nextRow(EntityProcessorWrapper.java:244)
at org.apache.solr.handler.dataimport.DocBuilder.buildDocument(DocBuilder.java:475)
at org.apache.solr.handler.dataimport.DocBuilder.buildDocument(DocBuilder.java:414)
at org.apache.solr.handler.dataimport.DocBuilder.doFullDump(DocBuilder.java:329)
at org.apache.solr.handler.dataimport.DocBuilder.execute(DocBuilder.java:232)
at org.apache.solr.handler.dataimport.DataImporter.doFullImport(DataImporter.java:416)
at org.apache.solr.handler.dataimport.DataImporter.runCmd(DataImporter.java:475)
at org.apache.solr.handler.dataimport.DataImporter.lambda$runAsync$0(DataImporter.java:458)
at java.lang.Thread.run(Thread.java:745)
Caused by: com.mysql.jdbc.exceptions.jdbc4.CommunicationsException: Communications link failure
在使用数据库时使用的是windows下的数据库,linux安装在虚拟机上,所以想要访问windows的数据库,data-config.xml配置中的数据库url要使用Windows的ip,不是localhost,可能每天ip还会变。
<?xml version="1.0" encoding="UTF-8"?>
<dataConfig>
<dataSource name="source1" type="JdbcDataSource" driver="com.mysql.jdbc.Driver"

url="jdbc:mysql://192.168.10.30:3306/solrtest" user="root" password="******" batchSize="-1" >
</dataSource>
  <document>
<entity name="goods" pk="id" dataSource="source1"

query="select * from goods"

deltaImportQuery="select * from goods where id='${dih.delta.id}'"

deltaQuery="select id from goods where updateTime> '${dataimporter.last_index_time}'">

    <field column="id" name="id"/>
<field column="name" name="name"/>
<field column="number" name="number"/>
<field column="updateTime" name="updateTime"/>
    </entity>
  </document>
</dataConfig>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: