4

さらに別のSolr4の新規ユーザー。Solrが全文検索で何ができるかを賞賛しましたが、オンラインドキュメントは少しイライラします。とにかく、MySQLデータベース(数百万のレコードがある)をSolrにインポートする作業をしています。

  • Javaコネクタをダウンロードしてexample/libディレクトリに保存しました。
  • 私はそれを作成data-config.xmlしてその中に入れました:

    <document name="doc">
        <entity name="pagey" query="SELECT * FROM page">
    
            <field column="id" name="pid" />
            <field column="Content" name="pcontent" />
            <field column="bid" name="bid" />
            <field column="Num" name="num" />
        </entity>
    </document>
    

    に保存しました:/example/solr/collection1/conf

  • solrconfig.xml次を追加して、そのファイルをにリンクしました。

    <requestHandler name="/dataimport" class="org.apache.solr.handler.dataimport.DataImportHandler"> <lst name="defaults"> <str name="config">data-config.xml</str> </lst> </requestHandler>

  • 新しいフィールドを追加するためにschema.xmlを変更しました。

しかし、インターリングによって完全なインポートを実行するために到着したとき:次のhttp://[localhost]:8983/solr/dataimport?command=full-importエラーが発生しました:HTTP ERROR 404 Problem accessing /solr/dataimport. Reason: Not Found。これは前回のバージョン4では無効になったと思います。そこで試してみhttp://[localhost]:8983/solr/#/collection1/dataimport?command=full-importましたが、何も起こりません。

私のフィールドは正常に追加されました。collection1のスキーマブラウザセクションの管理パネルに表示されます。

admin-> collection1-> Dataimportから、次のように表示されますsorry, no dataimport-handler defined!。を実行しstart.jarてもエラーは表示されません。

ここで何が欠けていますか?

編集:それを解決した後、「XMLは大文字と小文字を区別する」ことを覚えておいてください。

4

2 に答える 2

3

data-config は、このように見える必要があります。mysql ホスト、ユーザー、またはパスワードを指定していません。

<dataConfig>
    <dataSource type="JdbcDataSource"
   driver="com.mysql.jdbc.Driver"
   url="jdbc:mysql://127.0.0.1:8889/yourdatabase"
   user="mysql_user"
   password="mysql_password"/>

<document name="doc">
    <entity name="pagey" query="SELECT * FROM page">

        <field column="id" name="pid" />
        <field column="Content" name="pcontent" />
        <field column="bid" name="bid" />
        <field column="Num" name="num" />
    </entity>
</document>
</dataConfig>

これを solrconfig.xml ファイルに含める必要があります。

<lib dir="../../../dist/" regex="apache-solr-dataimporthandler-\d.*\.jar" />

  <requestHandler name="/dataimport"
     class="org.apache.solr.handler.dataimport.DataImportHandler">
    <lst name="defaults">
      <str name="config">data-config.xml</str>
    </lst>
  </requestHandler> 

solr.xml には、次のものがあることを確認する必要があります。

<solr persistent="true" sharedLib="../lib">
于 2012-11-29T20:43:38.937 に答える
1
If you are using latest Solr then use 

<lib dir="../../../dist/" regex="solr-dataimporthandler-\d.*\.jar" />


instead of

<lib dir="../../../dist/" regex="apache-solr-dataimporthandler-\d.*\.jar" />
于 2013-07-03T11:09:27.990 に答える