我正在运行一个数据库,用作将数据导入Solr的源。当我运行命令:curl“ http:// localhost:8983 / solr / dataimport?command = full-import&commit = true”时,提交失败,实例执行回滚。您能帮我弄清楚吗?
这是异常堆栈:
Jan 27, 2012 4:02:32 PM org.apache.solr.handler.dataimport.DataImporter doFullImport
INFO: Starting Full Import
Jan 27, 2012 4:02:32 PM org.apache.solr.core.SolrCore execute
INFO: [] webapp=/solr path=/dataimport params={command=full-import&commit=true} status=0 QTime=0
Jan 27, 2012 4:02:32 PM org.apache.solr.handler.dataimport.SolrWriter readIndexerProperties
INFO: Read dataimport.properties
Jan 27, 2012 4:02:32 PM org.apache.solr.update.DirectUpdateHandler2 deleteAll
INFO: [] REMOVING ALL DOCUMENTS FROM INDEX
Jan 27, 2012 4:02:32 PM org.apache.solr.core.SolrDeletionPolicy onInit
INFO: SolrDeletionPolicy.onInit: commits:num=1
commit{dir=/private/var/www/html/internsolr/solr/example/solr/data/index,segFN=segments_21,version=1320251100987,generation=73,filenames=[segments_21]
Jan 27, 2012 4:02:32 PM org.apache.solr.core.SolrDeletionPolicy updateCommits
INFO: newest commit = 1320251100987
Jan 27, 2012 4:02:32 PM org.apache.solr.handler.dataimport.JdbcDataSource$1 call
INFO: Creating a connection for entity id with URL: jdbc:mysql://localhost:3306/internshipsearch
Jan 27, 2012 4:02:32 PM org.apache.solr.common.SolrException log
SEVERE: Exception while processing: id document : SolrInputDocument[{}]:org.apache.solr.handler.dataimport.DataImportHandlerException:
无法执行查询:选择响应,
名,姓,
cmc_email_address,毕业年份,
first_major,additional_major,
顺序,other_major,
Organization_name,organization_website,
organization_desc,行业,
job_title,部门,
市,州,
国家,地区,
实习工资,小时工资,
再次承诺,
雇主主管,雇主电话,
雇主电子邮件,not_recommended_desc,
full_time_offer,full_time_accept,
Attend_summer_classes,
summer_classes_institution,
summer_classes_desc,summer_travel,
summer_travel_city,summer_travel_state,
summer_travel_country,
summer_other_activity,
summer_other_activity_desc,如何发现,
doe_start_month,doe_start_day,
doe_end_month,doe_end_day来自
内部数据处理文档#1
在org.apache.solr.handler.dataimport.DataImportHandlerException.wrapAndThrow(DataImportHandlerException.java:72)
在org.apache.solr.handler.dataimport.JdbcDataSource $ ResultSetIterator。(JdbcDataSource.java:253)
在org.apache.solr.handler.dataimport.JdbcDataSource.getData(JdbcDataSource.java:210)
在org.apache.solr.handler.dataimport.JdbcDataSource.getData(JdbcDataSource.java:39)
在org.apache.solr.handler.dataimport.SqlEntityProcessor.initQuery(SqlEntityProcessor.java:59)
在org.apache.solr.handler.dataimport.SqlEntityProcessor.nextRow(SqlEntityProcessor.java:73)
在org.apache.solr.handler.dataimport.EntityProcessorWrapper.nextRow(EntityProcessorWrapper.java:238)
在org.apache.solr.handler.dataimport.DocBuilder.buildDocument(DocBuilder.java:596)
在org.apache.solr.handler.dataimport.DocBuilder.doFullDump(DocBuilder.java:268)
在org.apache.solr.handler.dataimport.DocBuilder.execute(DocBuilder.java:187)
在org.apache.solr.handler.dataimport.DataImporter.doFullImport(DataImporter.java:359)
在org.apache.solr.handler.dataimport.DataImporter.runCmd(DataImporter.java:427)
在org.apache.solr.handler.dataimport.DataImporter $ 1.run(DataImporter.java:408)
引起原因:com.mysql.jdbc.CommunicationsException:由于基础异常导致通信链接失败:
** BEGIN NESTED EXCEPTION **
java.net.SocketException
MESSAGE: java.net.ConnectException: Connection refused
STACKTRACE:
java.net.SocketException: java.net.ConnectException: Connection refused
at com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:156)
at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:276)
at com.mysql.jdbc.Connection.createNewIO(Connection.java:2666)
at com.mysql.jdbc.Connection.<init>(Connection.java:1531)
at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:266)
at org.apache.solr.handler.dataimport.JdbcDataSource$1.call(JdbcDataSource.java:161)
at org.apache.solr.handler.dataimport.JdbcDataSource$1.call(JdbcDataSource.java:128)
at org.apache.solr.handler.dataimport.JdbcDataSource.getConnection(JdbcDataSource.java:363)
at org.apache.solr.handler.dataimport.JdbcDataSource.access$200(JdbcDataSource.java:39)
at org.apache.solr.handler.dataimport.JdbcDataSource$ResultSetIterator.<init>(JdbcDataSource.java:240)
at org.apache.solr.handler.dataimport.JdbcDataSource.getData(JdbcDataSource.java:210)
at org.apache.solr.handler.dataimport.JdbcDataSource.getData(JdbcDataSource.java:39)
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:238)
at org.apache.solr.handler.dataimport.DocBuilder.buildDocument(DocBuilder.java:596)
at org.apache.solr.handler.dataimport.DocBuilder.doFullDump(DocBuilder.java:268)
at org.apache.solr.handler.dataimport.DocBuilder.execute(DocBuilder.java:187)
at org.apache.solr.handler.dataimport.DataImporter.doFullImport(DataImporter.java:359)
at org.apache.solr.handler.dataimport.DataImporter.runCmd(DataImporter.java:427)
at org.apache.solr.handler.dataimport.DataImporter$1.run(DataImporter.java:408)
** END NESTED EXCEPTION **
Last packet sent to the server was 0 ms ago.
at com.mysql.jdbc.Connection.createNewIO(Connection.java:2741)
at com.mysql.jdbc.Connection.<init>(Connection.java:1531)
at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:266)
at org.apache.solr.handler.dataimport.JdbcDataSource$1.call(JdbcDataSource.java:161)
at org.apache.solr.handler.dataimport.JdbcDataSource$1.call(JdbcDataSource.java:128)
at org.apache.solr.handler.dataimport.JdbcDataSource.getConnection(JdbcDataSource.java:363)
at org.apache.solr.handler.dataimport.JdbcDataSource.access$200(JdbcDataSource.java:39)
at org.apache.solr.handler.dataimport.JdbcDataSource$ResultSetIterator.<init>(JdbcDataSource.java:240)
... 11 more
Jan 27, 2012 4:02:32 PM org.apache.solr.common.SolrException log
SEVERE: Full Import failed:org.apache.solr.handler.dataimport.DataImportHandlerException:
无法执行查询:选择响应,
名,姓,
cmc_email_address,毕业年份,
first_major,additional_major,
顺序,other_major,
Organization_name,organization_website,
organization_desc,行业,
job_title,部门,
市,州,
国家,地区,
实习工资,小时工资,
再次承诺,
雇主主管,雇主电话,
雇主电子邮件,not_recommended_desc,
full_time_offer,full_time_accept,
Attend_summer_classes,
summer_classes_institution,
summer_classes_desc,summer_travel,
summer_travel_city,summer_travel_state,
summer_travel_country,
summer_other_activity,
summer_other_activity_desc,如何发现,
doe_start_month,doe_start_day,
doe_end_month,doe_end_day来自
内部数据处理文档#1
在org.apache.solr.handler.dataimport.DataImportHandlerException.wrapAndThrow(DataImportHandlerException.java:72)
在org.apache.solr.handler.dataimport.JdbcDataSource $ ResultSetIterator。(JdbcDataSource.java:253)
在org.apache.solr.handler.dataimport.JdbcDataSource.getData(JdbcDataSource.java:210)
在org.apache.solr.handler.dataimport.JdbcDataSource.getData(JdbcDataSource.java:39)
在org.apache.solr.handler.dataimport.SqlEntityProcessor.initQuery(SqlEntityProcessor.java:59)
在org.apache.solr.handler.dataimport.SqlEntityProcessor.nextRow(SqlEntityProcessor.java:73)
在org.apache.solr.handler.dataimport.EntityProcessorWrapper.nextRow(EntityProcessorWrapper.java:238)
在org.apache.solr.handler.dataimport.DocBuilder.buildDocument(DocBuilder.java:596)
在org.apache.solr.handler.dataimport.DocBuilder.doFullDump(DocBuilder.java:268)
在org.apache.solr.handler.dataimport.DocBuilder.execute(DocBuilder.java:187)
在org.apache.solr.handler.dataimport.DataImporter.doFullImport(DataImporter.java:359)
在org.apache.solr.handler.dataimport.DataImporter.runCmd(DataImporter.java:427)
在org.apache.solr.handler.dataimport.DataImporter $ 1.run(DataImporter.java:408)
引起原因:com.mysql.jdbc.CommunicationsException:由于基础异常导致通信链接失败:
** BEGIN NESTED EXCEPTION **
java.net.SocketException
MESSAGE: java.net.ConnectException: Connection refused
STACKTRACE:
java.net.SocketException: java.net.ConnectException: Connection refused
at com.mysql.jdbc.StandardSocketFactory.connect(StandardSocketFactory.java:156)
at com.mysql.jdbc.MysqlIO.<init>(MysqlIO.java:276)
at com.mysql.jdbc.Connection.createNewIO(Connection.java:2666)
at com.mysql.jdbc.Connection.<init>(Connection.java:1531)
at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:266)
at org.apache.solr.handler.dataimport.JdbcDataSource$1.call(JdbcDataSource.java:161)
at org.apache.solr.handler.dataimport.JdbcDataSource$1.call(JdbcDataSource.java:128)
at org.apache.solr.handler.dataimport.JdbcDataSource.getConnection(JdbcDataSource.java:363)
at org.apache.solr.handler.dataimport.JdbcDataSource.access$200(JdbcDataSource.java:39)
at org.apache.solr.handler.dataimport.JdbcDataSource$ResultSetIterator.<init>(JdbcDataSource.java:240)
at org.apache.solr.handler.dataimport.JdbcDataSource.getData(JdbcDataSource.java:210)
at org.apache.solr.handler.dataimport.JdbcDataSource.getData(JdbcDataSource.java:39)
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:238)
at org.apache.solr.handler.dataimport.DocBuilder.buildDocument(DocBuilder.java:596)
at org.apache.solr.handler.dataimport.DocBuilder.doFullDump(DocBuilder.java:268)
at org.apache.solr.handler.dataimport.DocBuilder.execute(DocBuilder.java:187)
at org.apache.solr.handler.dataimport.DataImporter.doFullImport(DataImporter.java:359)
at org.apache.solr.handler.dataimport.DataImporter.runCmd(DataImporter.java:427)
at org.apache.solr.handler.dataimport.DataImporter$1.run(DataImporter.java:408)
** END NESTED EXCEPTION **
Last packet sent to the server was 0 ms ago.
at com.mysql.jdbc.Connection.createNewIO(Connection.java:2741)
at com.mysql.jdbc.Connection.<init>(Connection.java:1531)
at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:266)
at org.apache.solr.handler.dataimport.JdbcDataSource$1.call(JdbcDataSource.java:161)
at org.apache.solr.handler.dataimport.JdbcDataSource$1.call(JdbcDataSource.java:128)
at org.apache.solr.handler.dataimport.JdbcDataSource.getConnection(JdbcDataSource.java:363)
at org.apache.solr.handler.dataimport.JdbcDataSource.access$200(JdbcDataSource.java:39)
at org.apache.solr.handler.dataimport.JdbcDataSource$ResultSetIterator.<init>(JdbcDataSource.java:240)
... 11 more
Jan 27, 2012 4:02:32 PM org.apache.solr.update.DirectUpdateHandler2 rollback
INFO: start rollback
Jan 27, 2012 4:02:32 PM org.apache.solr.update.DirectUpdateHandler2 rollback
INFO: end_rollback
最佳答案
这只是一个连接错误,因此请在Solr中的data-config.xml文件的开头检查数据源。这可能只是简单的事情,例如错误的URL,不正确的凭据,忘记在URL中放入数据库名称等。确保可以从Solr服务器ping数据库服务器。
数据源标签应如下所示:
<dataSource type="JdbcDataSource"
driver="com.mysql.jdbc.Driver"
url="jdbc:mysql://database.server.com/database-name"
user="user"
password="pass"
name="datasource-name" />
并且data-config.xml中的实体应该没有指定数据源(如果文件中只有一个),或者如果有多个,则应该指定要使用的数据源的名称。
祝好运!
关于java - Solr报告:运行导入时“连接被拒绝”,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9041722/