我正在尝试从 SQLServer 加载到 Solr。每次我运行数据导入时,该过程都会在连接到数据库后挂起并且永远不会完成。我在日志中没有看到任何有用的信息——任何想法都会很棒。这是我的 data-config.xml
<dataConfig> <dataSource type="JdbcDataSource"
driver="com.microsoft.sqlserver.jdbc.SQLServerDriver"
url="jdbc:sqlserver://localhost\MSSQLSERVER2;databaseName=db_name;responseBuffering=adaptive;selectMethod=cursor"
user="username"
password="password" />
<document name="profiles">
<entity name="profile" query="SELECT * FROM dbo.tmp_SolrImport">
<field column="ID" name="id" />
<field column="type" name="type" />
<field column="firstname" name="firstname" />
<field column="lastname" name="lastname" />
<field column="fullname" name="fullname" />
<field column="interests" splitBy="|" sourceColName="interests"/>
<field column="skill" splitBy="|" sourceColName="skills"/>
</entity>
</document>
</dataConfig>
这是我在日志文件中看到的:
Jan 26, 2012 5:12:22 PM org.apache.solr.handler.dataimport.DataImportHandler processConfiguration
INFO: Processing configuration from solrconfig.xml: {config=data-config.xml}
Jan 26, 2012 5:12:22 PM org.apache.solr.handler.dataimport.DataImporter loadDataConfig
INFO: Data Configuration loaded successfully
Jan 26, 2012 5:12:22 PM org.apache.solr.handler.dataimport.DataImporter doFullImport
INFO: Starting Full Import
Jan 26, 2012 5:12:22 PM org.apache.solr.handler.dataimport.SolrWriter readIndexerProperties
WARNING: Unable to read: dataimport.properties
Jan 26, 2012 5:12:22 PM org.apache.solr.update.DirectUpdateHandler2 deleteAll
INFO: [] REMOVING ALL DOCUMENTS FROM INDEX
Jan 26, 2012 5:12:22 PM org.apache.solr.core.SolrDeletionPolicy onInit
INFO: SolrDeletionPolicy.onInit: commits:num=1
commit{dir=C:\Program Files\Apache Software Foundation\Tomcat 7.0\solr\data\index,segFN=segments_5,version=1327527444614,generation=5,filenames=[_1.prx, _1.fdx, _1.tis, _1.frq, _1.fdt, _1.tii, segments_5, _1.fnm, _1.nrm]
Jan 26, 2012 5:12:22 PM org.apache.solr.core.SolrDeletionPolicy updateCommits
INFO: newest commit = 1327527444614
Jan 26, 2012 5:12:22 PM org.apache.solr.handler.dataimport.JdbcDataSource$1 call
INFO: Creating a connection for entity profile with URL: jdbc:sqlserver://localhost\MSSQLSERVER2;databaseName=db_name;responseBuffering=adaptive;selectMethod=cursor
处理程序和配置文件似乎正确加载,我确保 SQL Server Browser 正在运行并且 TCP/IP 已启用。如果我在数据导入 UI 中运行,我得到的唯一消息是命令仍在运行,并且向数据源发出了一个请求。
连接字符串有问题吗?我可以在任何地方查找更多日志记录详细信息吗?