Telepítése és konfigurálása szfinx CentOS 7

Miután szerver biztonságos adatközpontok Európában. Nyílt felhő VPS / VDS szerver egy gyors SSD 1 perc alatt!

A legjobb Web Hosting:
- megvédi az illetéktelen hozzáférés egy biztonságos európai adatközpont
- fizet legalább Bitcoin.
- Akkor tegye meg a disztribúciós

- védelmet DDOS támadások
- ingyenes biztonsági mentés
- Üzemidő 99,9999%
- DPC - TIER III
- ISP - TIER I

Támogatás az orosz 24/7/365 dolgozni a jogi és fizikai személyek. Most kell 24 mag és 72 Gb RAM. Kérlek!

A versenyképes áron bizonyítani, hogy a legolcsóbb hosting, ha nem tudja!

A percek alatt, válassza ki a konfiguráció, a fizetés és a CMS egy VPS kész.
Pénzvisszafizetési - 30 nap alatt!

Bankkártyák, elektronikus valuta révén Qiwi terminálok, WebMoney, PayPal, Novoplat és mások.

Tegye fel kérdését támogatás 24/7/365

Megtalálja a választ az adatbázisunkban, és megfelel az ajánlásokat a

Sphinx - ez produktív és egyszerű rendszert a teljes szöveges keresést a nyílt forráskódú. Sphinx kereshetünk adatokat bármely forrásból: SQL adatbázisok, szöveges és HTML-fájlokat, postafiókok, stb

A fő funkciók Sphinx:

  • Nagy teljesítményű indexelés és keresés;
  • Speciális eszközök indexelő és a lekérdezés;
  • Részletes post-feldolgozás;
  • Skálázhatóság akár több milliárd dokumentumok terabyte adatot és több ezer kérés másodpercenként;
  • Egyszerű integráció a SQL és XML adatforrás és a keresési interfészek SphinxQL, SphinxAPI vagy SphinxSE;
  • Elosztott keresést.

Ez az útmutató segít telepíteni és konfigurálni a Szfinx kereső interfész MySQL.

követelmények

  • Beállított szerver CentOS 7.
  • Nem root felhasználó sudo hozzáférés (a létrehozását egy ilyen felhasználó olvasható a kezdeti beállítási útmutató).
  • Előre telepített MySQL szerver (a telepítési utasítások találhatók a vonatkozó részben a kézikönyv).

1: A Sphinx

Abban az időben az írás, a legutolsó stabil verzió 2.2.11 Sphinx.

Megjegyzés. A pálya verzió itt.

Telepítése előtt a Szfinx a szerverre, akkor telepíteni kell a programtól függően:

sudo yum install -y postgresql-libs unixODBC

Lépj be a könyvtárba tmp, Sphinx fájlok letöltésére.

Töltse le a legújabb verzióját a Sphinx:

sudo yum install -y szfinxszerű 2.2.11-1.rhel7.x86_64.rpm

Sphinx kereső sikeresen telepítve a szerverre. Telepítése után Sphinx igényel külön beállítást.

2: létrehozása tesztadatbázisokra

Hozzon létre egy adatbázist az SQL minta fájl jön a csomag. Ehhez meg kell importálni a fájlt, SQL-adatbázisban.

Írja be a MySQL shell:

Adja meg a root-jelszó MySQL, majd változtassa meg a parancssorban:

Hozzon létre egy adatbázist (a kézikönyvben, hogy hívják a vizsgálat):

CREATE DATABASE teszt;

Ezután zárja le a MySQL shell:

Most, hogy az adatbázis tölteni vizsgálati adatokat az importált fájl.

3: beállítása Sphinx

Sphinx konfigurációt kell tárolni sphinx.conf filet a / etc / sphinxsearch. Ezek közé tartozik a három fő alkotóeleme van: index, searchd és forrását.

Az alapértelmezett fájl a minimális konfiguráció. De még mindig jobb, hogy hozzon létre egy új konfigurációs fájlt.

Mozgás az alapértelmezett konfigurációs fájl, sphinx.conf:

sudo mv /etc/sphinx/sphinx.conf /etc/sphinx/sphinx.conf2

sudo vi /etc/sphinx/sphinx.conf

Megjegyzés. Miután egy leírást minden egyes beállítás blokk megtalálja a teljes kódot sphinx.conf.

forrás egység tartalmaz egy adatforrás típusát, a felhasználói nevet és jelszót a MySQL. Sql_query első oszlopban kell tartalmaznia egy egyedi azonosítót. SQL lekérdezés végezni minden index, majd továbbítja az adatokat az index fájl Sphinx. forrás egység területeken:

forrás egység a következő:

forrás src1
type = mysql
#SQL beállítások ( 'mysql' és a 'pgsql' típusú)
sql_host = localhost
sql_user = root
sql_pass = jelszó
sql_db = teszt
sql_port = 3306 # opcionális, az alapértelmezett 3306
sql_query = \
SELECT id, group_id, UNIX_TIMESTAMP (DATE_ADDED) AS DATE_ADDED, cím, tartalom \
dokumentumokból
sql_attr_uint = group_id
sql_attr_timestamp = DATE_ADDED
>

index blokk adatait tartalmazza a forrás és az utat, hogy az adatmodell.

  • forrás: blokk nevét forrást. Ebben az esetben a src1.
  • útvonal: az utat, hogy az index fájlt.

Ez az egység a következőképpen néz ki:

index test1
forrás = src1
path = / var / lib / Sphinx / test1
docinfo = extern
>

searchd egység tartalmaz kikötők és változók futtatni Sphinx démont.

  • hallgatni: port, amelyen futtatni a Szfinx és a használni kívánt protokollt (kézi - 9306: mysql41). Népszerű protokollok Sphinx - szfinx (SphinxAPI) és: mysql41 (SphinxQL).
  • query_log: az utat, hogy a szakadék kéréseket.
  • pid_file: az utat, hogy a Szfinx PID-fájlt.
  • seamless_rotate: searchd ütköző megakadályozza cache-sok adatot.
  • preopen_indexes: azt jelzi, hogy a pre-nyitva az indexek szükség.
  • unlink_old: megadja, hogy tiltsa le a régi másolata az index fájlt.

searchd
listen = 9312: szfinx #SphinxAPI port
listen = 9306: mysql41 #SphinxQL port
log = /var/log/sphinx/searchd.log
query_log = /var/log/sphinx/query.log
read_timeout = 5
max_children = 30
pid_file = /var/run/sphinx/searchd.pid
seamless_rotate = 1
preopen_indexes = 1
unlink_old = 1
binlog_path = / var / lib / Sphinx /
>

Alul az összes sphinx.conf konfigurációs fájlban. Egyszerűen másolja őket a fájlt. Az egyetlen változó a szerkeszteni - sql_pass a forrás egység; adja meg jelszavát mysql benne.

forrás src1
type = mysql
sql_host = localhost
sql_user = root
sql_pass = your_root_mysql_password
sql_db = teszt
sql_port = 3306
sql_query = \
SELECT id, group_id, UNIX_TIMESTAMP (DATE_ADDED) AS DATE_ADDED, cím, tartalom \
dokumentumokból
sql_attr_uint = group_id
sql_attr_timestamp = DATE_ADDED
>
index test1
forrás = src1
path = / var / lib / Sphinx / test1
docinfo = extern
>
searchd
listen = 9306: mysql41
log = /var/log/sphinx/searchd.log
query_log = /var/log/sphinx/query.log
read_timeout = 5
max_children = 30
pid_file = /var/run/sphinx/searchd.pid
seamless_rotate = 1
preopen_indexes = 1
unlink_old = 1
binlog_path = / var / lib / Sphinx /
>

Több konfigurációk megtalálható /etc/sphinxsearch/sphinx.conf.sample fájl, ami tartalmaz egy részletes leírást az összes változót.

4: Management index

Ez a fejezet bemutatja, hogyan kell hozzáadni az adatokat a Sphinx index és frissíti az indexet cron.

Hozzáadni az adatokat az index által használt újonnan létrehozott konfigurációs fájl.

sudo indexelő --all

A parancs vissza kell:

A termelési környezetre van szükség, hogy folyamatosan fenntartsák az index naprakész. Ehhez hozzon létre egy cron munkálatain. Nyisd meg a crontab:

Ez a cron munkálatain fog futni óránként, és adjunk hozzá adatokat az index, utalva a korábban létrehozott konfigurációs fájl. Másolja be a fájlt, hogy a végén a következő szabály:

@hourly / usr / bin / indexelő --rotate --config /etc/sphinx/sphinx.conf --all

Most a kereső Szfinx készen áll az indításra.

5: Futás a Szfinx

Ahhoz, hogy indítsa el a Szfinx démont használja systemctl.

sudo systemctl indul searchd

Ügyeljen arra, hogy a Szfinx démon fut:

sudo systemctl állapot searchd

A parancs vissza kell:

6: Testing Keresés

Most meg kell találnia adatokat Sphinx. Csatlakozás SphinxQL MySQL interface (parancssoros változás mysql>).

Próbáld megtalálni az ajánlatot:

SELECT * FROM WHERE test1 MATCH (tesztdokumentum '); SHOW META;

Mint látható, Sphinx rendszer talált két gyufát test1 index. A parancs SHOW META; Ez azt mutatja, megfelelő minden kulcsszó a mondatban.

Próbálkozzon kulcsszó:

CALL kulcsszavak ( 'teszt egy három', 'test1', 1);

Az index test1 Sphinx találtuk:

  • 5 találat 3 dokumentumokat teszt gombot.
  • 2. mérkőzések a dokumentumban 1 egy gombot.
  • 0 mérkőzések 0 dokumentumokat a három gombot.

Most már törölheti a tesztadatbázist Sphinx:

DROP DATABASE teszt;

Zárja le a MySQL shell:

következtetés

Ez az útmutató segít meghatározni a Szfinx és egy egyszerű keresést adatokat SphinxQL és a MySQL.

Ez a link megtalálható megvalósítása Sphinx API for PHP, Perl, Python, Ruby és a Java.

A felhasználók talál Nodejs SphinxAPI csomag ezen a linken.

Sphinx lehetővé teszi, hogy adjunk egyéni keresés a webhelyen. További információt a Sphinx megtalálható a projekt honlapján.

Kapcsolódó cikkek