So installieren und konfigurieren Sie Sphinx auf Ubuntu 16.04, 14.04

So installieren und konfigurieren Sie Sphinx auf Ubuntu 16.04, 14.04

Sphinx ist ein einfacher, Relevanz- und Open-Source-Volltext-Suchserver. Es ist in C ++ - Programmiersprache geschrieben und funktioniert mit Linux und anderen beliebten Betriebssystemen. Dieses Tutorial hilft Ihnen bei der Installation und Konfiguration des Sphinx-Volltext-Suchservers auf Ubuntu 16.04, 14.04 LTS -Betriebssysteme.

Voraussetzungen

Bevor Sie mit diesem Leitfaden beginnen, müssen Sie die folgenden Angehörigen haben.

  • Ubuntu -Server mit sudo -Zugriff
  • Pre installed MySQL Server

Schritt 1 - Sphinx installieren

Die Installation von Sphinx auf Ubuntu ist einfach, da es sich im nativen Paket -Repository befindet. Installieren Sie es mit dem APT-Get-Paket-Manager in Ihrem Ubuntu-System.

sudo add-apt-repository pPA: Builds/sphinxSearch-rel22 sudo APT-Get Update sudo APT-Get Install SphinxSearch installieren 

Schritt 2 - MySQL -Datenbank importieren

Importieren wir die Beispiel -SQL -Datei in die Datenbank.Erstellen Sie zunächst eine Datenbank mit dem Namen Test auf Ihrem MySQL -Server, nachdem Sie die Datenbank wiederherstellen, die vom Sphinx -Suchpaket bereitgestellt wird.

sudo mysqladmin -u root -p erstellen test sudo mysql -u root -p test < /usr/share/doc/sphinxsearch/example-conf/example.sql 

Schritt 3 - Sphinx konfigurieren

Bearbeiten.

sudo vi/etc/sphinxsearch/sphinx.Conf 
Quelle SRC1  # Datenquellentyp. Obligatorisch, kein Standardwert#Bekannte Typen sind MySQL, PGSQL, MSSQL, XMLPIPE, XMLPIPE2, ODBC Type = mysql ############################################################################################ zuraut ########################################### ####SQL -Einstellungen (für 'MySQL 'und' pgsql 'Typen) ########################################### ##################################### ################ zu erhalten ############################Einige einfache Parameter für SQL -Quelltypen sql_host = localhost sql_user = root sql_pass = geheim SQL_DB = Test SQL_PORT = 3306## Optional, Standard ist 3306 

Schritt 4 - Indexer ausführen

Führen Sie den Indexer aus, um den Volltextindex aus Ihren Daten zu erstellen. Der Indexer ist der erste der beiden Hauptwerkzeuge als Teil von Sphinx. Es eignet sich zum Sammeln der Daten, die durchsuchbar sind. Sie werden die Ergebnisse wie unten sehen.

sudo Indexer -alle Sphinx 2.2.11-ID64-Release (95AE9A6) Copyright (C) 2001-2016, Andrew Aksyonoff Copyright (C) 2008-2016, Sphinx Technologies Inc (http: // sphinxSearch.com) Verwenden der Konfigurationsdatei '/etc/sphinxSearch/sphinx.Conf '… Indexing Index' Test1 '… gesammelt 4 Dokumente, 0.0 MB sortiert 0.0 Mhits, 100.0% Gesamt 4 Dokumente, 193 Bytes insgesamt 0.006 Sek., 30791 Bytes/Sec, 638.16 DOCS/SEC Indexierungsindex 'Test1StemMed'… gesammelt 4 Dokumente, 0.0 MB sortiert 0.0 Mhits, 100.0% Gesamt 4 Dokumente, 193 Bytes insgesamt 0.001 Sek., 99382 Bytes/Sek., 2059.73 DOCS/SEC Überspringen des Nicht-Plain-Index 'Dist1'… überspringen Nicht-Plain-Index 'Rt'… Gesamt 8-Lesevorgänge, 0.000 Sek. 0.1 kb/call avg, 0.0 ms/rufen Sie Avg insgesamt 24 Schreibvorgänge, 0.000 Sek. 0.1 kb/call avg, 0.0 ms/call avg 

Schritt 5 - Sphinx starten

Konfigurieren Sie auch Ihren Sphinx -Server zum automatischen Starten des Systemstarts. Verwenden Sie den Befehl unten, um Start auf Ja festlegen.

sudo sed -i 's/start = nein/start = yes/g'/etc/default/sphinxsearch 

Starten Sie jetzt auch zum ersten Mal den Service und überprüfen Sie den Status.

Service sphinxSearch Start Service SphinxSearch Status 

Sie können den Indexer in Ihrem Crontab auch so konfigurieren, dass er in einem regulären Intervall ausgeführt wird. Das folgende Crontab läuft jede Stunde.

0 * * * */usr/bin/Indexer - -rotate --all 

Schritt 6 - Mit Sphinx arbeiten

Lassen Sie uns einige Abfragen auf Ihrem Sphinx -Server ausführen. Stellen Sie zunächst mit dem folgenden OCMMand eine Verbindung zum Sphinx MySQL -Server her.

MySQL -H0 -p9306 

Führen Sie nun nach unten eins nach einem Befehl aus und sehen Sie die Änderungen an. Dies ist nur für Ihr eigenes Lernen.

MySQL> SELECT * aus test1 WHERE ICHGABE ('Dokument'); MySQL> In RT -Werte einfügen (1, 'Hinzufügen', 'Beispieltext hier', 11); MySQL> In RT -Werte einfügen (2, "etwas mehr hinzuzufügen", "Beispieltext hier", 22); MySQL> Wählen Sie GID/11 aus RT, wobei Übereinstimmung ('Beispiel') von GID; MySQL> SELECT * von RT Order by GID Desc; MySQL> Select *, Gewicht () aus test1 WHERE IT -Übereinstimmung ('"Dokument eins"/1'); MySQL> meta zeigen; MySQL> Set Profiling = 1; MySQL> Select * aus test1 wobei ID in (1,2,4); MySQL> Profil anzeigen; MySQL> ID, ID%3 IDD aus test1, wobei Übereinstimmung ('this is | nichts') von IDD; MySQL> Profil anzeigen; MySQL> ID aus test1 auswählen, wo übereinstimmt ('ist dies ein guter Plan?'); MySQL> Show -Plan; MySQL> Wählen Sie Graf (*) aus Test1 aus; MySQL> Keywords aufrufen ('One Two Three', 'Test1'); MySQL> Keywords aufrufen ('One Two Three', 'Test1', 1); MySQL> Tische anzeigen;