2011-07-12 95 views
3

我有一个网站在亚马逊EC2实例上运行,我试图让Solr接口并使用我正在使用的数据库。我能使用管理界面,并已经得到了索引的示例XML文件,但每当我试图导入我的数据库表中的一个,我得到的错误SOLR DataImport错误“无法执行查询”

SEVERE: Exception while processing: gamelydb document : SolrInputDocument[{}]:org.apache.solr.handler.dataimport.DataImportHandlerException: 
Unable to execute query: SELECT * FROM league Processing Document # 1 

这是我的数据-config.xml文件。我还将dataimporthandler添加到solrconfig.xml文件中。

<dataConfig> 
    <dataSource type="JdbcDataSource" 
       driver="com.mysql.jdbc.Driver" 
       url="jdbc:mysql://www.mysite.com/mydb" 
       user="root" 
       password="mypassword"/> 
    <document> 
    <entity name="mydb" 
      query="SELECT * FROM league"> 
     <field column="id" name="id" /> 
     <field column="leaguename" name="leaguename" /> 
    </entity> 
    </document> 
</dataConfig> 

任何想法为什么会发生这种情况?只要让我知道我是否需要澄清任何事情。

所以我改变了网址,删除了'http://',那个错误似乎消失了。但是,没有任何信息似乎可以通过管理员搜索。数据目录中有几个文件(_1.fnm,_1.frq,...)。这是什么solr打印到日志。

Jul 13, 2011 1:19:45 PM org.apache.solr.core.SolrCore execute 
INFO: [] webapp=/solr path=/dataimport params={} status=0 QTime=4 
Jul 13, 2011 1:19:48 PM org.apache.solr.core.SolrCore execute 
INFO: [] webapp=/solr path=/dataimport params={command=full-import} status=0 QTime=4 
Jul 13, 2011 1:19:48 PM org.apache.solr.handler.dataimport.DataImporter doFullImport 
INFO: Starting Full Import 
Jul 13, 2011 1:19:48 PM org.apache.solr.handler.dataimport.SolrWriter readIndexerProperties 
INFO: Read dataimport.properties 
Jul 13, 2011 1:19:48 PM org.apache.solr.update.DirectUpdateHandler2 deleteAll 
INFO: [] REMOVING ALL DOCUMENTS FROM INDEX 
Jul 13, 2011 1:19:48 PM org.apache.solr.core.SolrDeletionPolicy onInit 
INFO: SolrDeletionPolicy.onInit: commits:num=1 
     commit{dir=/home/ec2-user/public_html/solr/example/solr/data/index,segFN=segments_2,version=1310405039852,generation=2,filenames=[_0.tis, _0.nrm, _0.fnm, _0.tii, _0.frq, segments_2, _0.fdx, _0.fdt] 
Jul 13, 2011 1:19:48 PM org.apache.solr.core.SolrDeletionPolicy updateCommits 
INFO: newest commit = 1310405039852 
Jul 13, 2011 1:19:48 PM org.apache.solr.handler.dataimport.JdbcDataSource$1 call 
INFO: Creating a connection for entity gamelydb with URL: jdbc:mysql://www.gamely.us/gamelydb 
Jul 13, 2011 1:19:49 PM org.apache.solr.handler.dataimport.JdbcDataSource$1 call 
INFO: Time taken for getConnection(): 667 
Jul 13, 2011 1:19:49 PM org.apache.solr.handler.dataimport.DocBuilder finish 
INFO: Import completed successfully 
Jul 13, 2011 1:19:49 PM org.apache.solr.update.DirectUpdateHandler2 commit 
INFO: start commit(optimize=true,waitFlush=false,waitSearcher=true,expungeDeletes=false) 
Jul 13, 2011 1:19:49 PM org.apache.solr.core.SolrDeletionPolicy onCommit 
INFO: SolrDeletionPolicy.onCommit: commits:num=2 
     commit{dir=/home/ec2-user/public_html/solr/example/solr/data/index,segFN=segments_2,version=1310405039852,generation=2,filenames=[_0.tis, _0.nrm, _0.fnm, _0.tii, _0.frq, segments_2, _0.fdx, _0.fdt] 
     commit{dir=/home/ec2-user/public_html/solr/example/solr/data/index,segFN=segments_3,version=1310405039855,generation=3,filenames=[_1.fdx, _1.tis, _1.frq, _1.fdt, _1.tii, _1.fnm, _1.nrm, segments_3] 
Jul 13, 2011 1:19:49 PM org.apache.solr.core.SolrDeletionPolicy updateCommits 
INFO: newest commit = 1310405039855 
Jul 13, 2011 1:19:49 PM org.apache.solr.search.SolrIndexSearcher <init> 
INFO: Opening [email protected] main 
Jul 13, 2011 1:19:49 PM org.apache.solr.search.SolrIndexSearcher warm 
INFO: autowarming [email protected] main from [email protected] main 
     fieldValueCache{lookups=0,hits=0,hitratio=0.00,inserts=0,evictions=0,size=0,warmupTime=0,cumulative_lookups=0,cumulative_hits=0,cumulative_hitratio=0.00,cumulative_inserts=0,cumulative_evictions=0} 
Jul 13, 2011 1:19:49 PM org.apache.solr.search.SolrIndexSearcher warm 
INFO: autowarming result for [email protected] main 
     fieldValueCache{lookups=0,hits=0,hitratio=0.00,inserts=0,evictions=0,size=0,warmupTime=0,cumulative_lookups=0,cumulative_hits=0,cumulative_hitratio=0.00,cumulative_inserts=0,cumulative_evictions=0} 
Jul 13, 2011 1:19:49 PM org.apache.solr.search.SolrIndexSearcher warm 
INFO: autowarming [email protected] main from [email protected] main 
     filterCache{lookups=0,hits=0,hitratio=0.00,inserts=0,evictions=0,size=0,warmupTime=0,cumulative_lookups=0,cumulative_hits=0,cumulative_hitratio=0.00,cumulative_inserts=0,cumulative_evictions=0} 
Jul 13, 2011 1:19:49 PM org.apache.solr.search.SolrIndexSearcher warm 
INFO: autowarming result for [email protected] main 
     filterCache{lookups=0,hits=0,hitratio=0.00,inserts=0,evictions=0,size=0,warmupTime=0,cumulative_lookups=0,cumulative_hits=0,cumulative_hitratio=0.00,cumulative_inserts=0,cumulative_evictions=0} 
Jul 13, 2011 1:19:49 PM org.apache.solr.search.SolrIndexSearcher warm 
INFO: autowarming [email protected] main from [email protected] main 
     queryResultCache{lookups=0,hits=0,hitratio=0.00,inserts=1,evictions=0,size=1,warmupTime=0,cumulative_lookups=0,cumulative_hits=0,cumulative_hitratio=0.00,cumulative_inserts=0,cumulative_evictions=0} 
Jul 13, 2011 1:19:49 PM org.apache.solr.search.SolrIndexSearcher warm 
INFO: autowarming result for [email protected] main 
     queryResultCache{lookups=0,hits=0,hitratio=0.00,inserts=0,evictions=0,size=0,warmupTime=0,cumulative_lookups=0,cumulative_hits=0,cumulative_hitratio=0.00,cumulative_inserts=0,cumulative_evictions=0} 
Jul 13, 2011 1:19:49 PM org.apache.solr.search.SolrIndexSearcher warm 
INFO: autowarming [email protected] main from [email protected] main 
     documentCache{lookups=0,hits=0,hitratio=0.00,inserts=0,evictions=0,size=0,warmupTime=0,cumulative_lookups=0,cumulative_hits=0,cumulative_hitratio=0.00,cumulative_inserts=0,cumulative_evictions=0} 
Jul 13, 2011 1:19:49 PM org.apache.solr.search.SolrIndexSearcher warm 
INFO: autowarming result for [email protected] main 
     documentCache{lookups=0,hits=0,hitratio=0.00,inserts=0,evictions=0,size=0,warmupTime=0,cumulative_lookups=0,cumulative_hits=0,cumulative_hitratio=0.00,cumulative_inserts=0,cumulative_evictions=0} 
Jul 13, 2011 1:19:49 PM org.apache.solr.core.QuerySenderListener newSearcher 
INFO: QuerySenderListener sending requests to [email protected] main 
Jul 13, 2011 1:19:49 PM org.apache.solr.core.QuerySenderListener newSearcher 
INFO: QuerySenderListener done. 
Jul 13, 2011 1:19:49 PM org.apache.solr.update.DirectUpdateHandler2 commit 
INFO: end_commit_flush 
Jul 13, 2011 1:19:49 PM org.apache.solr.core.SolrCore registerSearcher 
INFO: [] Registered new searcher [email protected] main 
Jul 13, 2011 1:19:49 PM org.apache.solr.search.SolrIndexSearcher close 
INFO: Closing [email protected] main 
     fieldValueCache{lookups=0,hits=0,hitratio=0.00,inserts=0,evictions=0,size=0,warmupTime=0,cumulative_lookups=0,cumulative_hits=0,cumulative_hitratio=0.00,cumulative_inserts=0,cumulative_evictions=0} 
     filterCache{lookups=0,hits=0,hitratio=0.00,inserts=0,evictions=0,size=0,warmupTime=0,cumulative_lookups=0,cumulative_hits=0,cumulative_hitratio=0.00,cumulative_inserts=0,cumulative_evictions=0} 
     queryResultCache{lookups=0,hits=0,hitratio=0.00,inserts=1,evictions=0,size=1,warmupTime=0,cumulative_lookups=0,cumulative_hits=0,cumulative_hitratio=0.00,cumulative_inserts=0,cumulative_evictions=0} 
     documentCache{lookups=0,hits=0,hitratio=0.00,inserts=0,evictions=0,size=0,warmupTime=0,cumulative_lookups=0,cumulative_hits=0,cumulative_hitratio=0.00,cumulative_inserts=0,cumulative_evictions=0} 
Jul 13, 2011 1:19:49 PM org.apache.solr.handler.dataimport.SolrWriter readIndexerProperties 
INFO: Read dataimport.properties 
Jul 13, 2011 1:19:49 PM org.apache.solr.handler.dataimport.SolrWriter persist 
INFO: Wrote last indexed time to /home/ec2-user/public_html/solr/example/solr/./conf/dataimport.properties 
Jul 13, 2011 1:19:49 PM org.apache.solr.update.processor.LogUpdateProcessor finish 
INFO: {deleteByQuery=*:*,add=[9, 10, 11, 12, 13, 14],optimize=} 0 4 
Jul 13, 2011 1:19:49 PM org.apache.solr.handler.dataimport.DocBuilder execute 
INFO: Time taken = 0:0:1.66 

编辑:如果你发现这里的东西downvotable,请让我知道,所以我可以修复它。

回答

2

我认为问题出在url参数。 如果MySQL数据库在同一台机器上,然后用url="jdbc:mysql://localhost/mydb" 如果www.mysite.com上,然后用url="jdbc:mysql://www.mysite.com/mydb"

而且,你的日志文件可能有关于错误的详细信息 - 请去通过日志和在这里发布适当的条目。

2

我遇到过类似的问题。我的数据库在同一台机器上。 在数据-config.xml中,我改了行:

url="jdbc:mysql://localhost/mydb"

url="jdbc:mysql://127.0.0.1/mydb"

,然后事情的来龙去脉。奇怪的是Solr/Lucene的方式!

+0

最有可能的原因是与Solr或Lucene无关。它与使用IPv6的Java相关。因此,'localhost'被解析为“:: 1”而不是127.0.0.1。哪些mysql无法识别。要强制Java使用IPv4(在Linux上),请使用:export _JAVA_OPTIONS =“ - Djava.net.preferIPv4Stack = true” –

1

你可以尝试做以下troubleshotting的oone:

  • 使用url="jdbc:mysql://localhost:1433/mydb的情况下,SQLDB安装在同一台机器上。
  • 检查Tomcat文件夹中的错误(Catalina文件)。
  • 启用对数据库级别的审计并检查其上的日志。