前回の記事では、Tomcat での solr4.10 と solr4.10 統合 IK アナライザー ワード セグメンターの導入について紹介しました。次に、MySQL データベースのクエリを実現するために、MySQL データベース データにインデックスを付けるように solr を設定する方法を紹介します。
まず、MySQL に接続するために必要な jar パッケージをダウンロードする必要があります。私がダウンロードしたのは、mysql-connector-java-5.1.26-bin.jar です。
1. データベース、テーブル、フィールド定義などのMySQLデータベース関連の作業が事前に完了していることが前提となります。ここでは、私のテスト ケースで使用したデータベースの紹介を示します。データベースとテーブルの名前はクローラ、ユーザー名は root、パスワードは admin です。 SQL ステートメントはここにはリストされていませんが、とにかくテストです。なお、Solrの解凍パスとSolr_HOMEのパスは人それぞれ異なるため、今後はSolr_HOMEのパスを$SOLR_HOMEとして表現することにします。
2. DataImportHandler を使用してデータをインポートし、インデックスを付けます
$SOLR_HOMEcollection1confsolrconfig.xml を構成します
このうち、data-config.xml ファイルは、solr と MySQL の間のマッピング関係を定義するために使用されます。ここで使用される相対パスは、solrconfig.xml と同じディレクトリです。したがって、$SOLR_HOMEcollection1conf ディレクトリに data-config.xml ファイルを作成します
3. data-config.xml ファイルの内容を通じて、Solr と MySQL データベース間のマッピングを完了します。
4.このファイルは圧縮パッケージからコピーされており、多くの冗長データが含まれているため、schema.xml ファイルを変更します。 MySQL データベース テーブルに関連するフィールドはファイル内で定義されているだけです。ただし、_version_ と text などの一部のフィールドは保持する必要があることに注意してください。図に示すように、他のフィールドと CopyField は削除する必要があります。
上の図では、私の ID は int 型として定義されています。デフォルトでは、Solr のインデックスの主キーは type="string" 文字列型のみをサポートしています。解決策: 同じディレクトリ内の elevate.xml を変更し、次の 2 行をコメント化します。
5. mysql-connector-java-5.1.26-bin.jar と solr-4.10.3distsolr-dataimporthandler-4.10.3.jar を D:Solrsolr-4.10.3examplesolr-webappwebappWEB にコピーします。 INFlib。
6. 図に示すように、tomcat を開いて Solr の管理 UI インターフェイスに入り、コア セレクターで collection1 を選択し、dataImport サブメニューを選択します。
設定が完了したら、「実行」をクリックします。
7. クエリ テストの場合、コア セレクターの下のサブメニューで [クエリ] を選択し、[q] ボックスに「内容: Xi Jinping」と入力し、下をクリックするとクエリ結果が表示されます
以上がSolr を使用して MySql データベースにインデックスを付けるにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。