将Solr连接到SQL Management Studio管理的数据库

时间:2013-06-12 17:33:36

标签: solr dataimporthandler

目前我通过sql management studio访问我的数据库实例,结构类似于:

我关心的SQL Server,数据库,数据库实例,表。

我希望使用solr来索引这些数据,但我似乎无法连接到服务器。

我有以下data-config.xml

<dataConfig>
  <dataSource type="JdbcDataSource"
          driver="com.microsoft.sqlserver.jdbc.SQLServerDriver"
          url="jdbc:sqlserver://mySQLServer/DEV1"
          integratedSecurity="true"
          database="someData"
/>
<document>
    <entity name="myQuery" query="select * from temp_ip_solr_test"
            deltaQuery="select id from item where last_modified > '${dataimporter.last_index_time}'">
        <field column="NAME" name="name" />
    </entity>
</document>

其他所有内容都是标准的(虽然我确实将jdbc .jar文件和sqlauth .dll文件添加到db核心的lib(我正在使用的文件)中,直接在{{1}之外用solr。给出的例子。

错误是: example-DIH

唯一的警告是:Exception while processing: myQuery document : SolrInputDocument[]:org.apache.solr.handler.dataimport.DataImportHandlerException: Unable to execute query: select * from temp_ip_solr_test Processing Document # 1

我该如何做到这一点?

Solr版本4.3。

1 个答案:

答案 0 :(得分:0)

我认为这个问题是由于综合安全机制。

点击此链接了解更多详情:http://lucene.472066.n3.nabble.com/Solr-SQL-Express-Integrated-Security-Unable-to-execute-query-td4035758.html

尝试明确提供用户名和密码,并检查它是否有效......

以下配置文件适用于sql server。确保使用正确的数据库/服务器名称。

<dataConfig>  
      <dataSource type="JdbcDataSource" 
            driver="com.microsoft.sqlserver.jdbc.SQLServerDriver" 
            url="jdbc:sqlserver://myserver;databaseName=mydb;responseBuffering=adaptive;selectMethod=cursor"   
            user="sa" 
            password="password"/>  
      <document>  
        <entity name="results" query="SELECT statements">  
          <field column="fielda" name="fielda"/>
    <field column="fieldb" name="fieldb"/>
    <field column="fieldc" name="fieldc"/>  
        </entity>  
      </document>  
    </dataConfig>