Kako namestiti iskalnik Sphinx na CentOS 7

Sphinx je brezplačen in odprtokodni iskalnik po celotnem besedilu, ki ga je mogoče integrirati v različne spletne aplikacije za zagotavljanje hitrih in visokokakovostnih rezultatov iskanja.

Ta članek vam bo pokazal, kako nastavite iskalnik Sphinx za indeksiranje in iskanje primera baze podatkov MariaDB na primerku strežnika Vultr CentOS 7. Dala vam bo nekaj predhodnih idej, kako uporabiti Sphinx v vašem projektu.

Predpogoji

  • Namestite nov primerek strežnika CentOS 7 z nadzorne plošče Vultr.
  • Za prijavo s terminala SSH uporabite nekorenskega uporabnika sudo. Oglejte si, kako ustvariti uporabnika sudo v tem članku .

1. korak: Posodobite svoj sistem

sudo yum update -y && sudo reboot

Po končanem ponovnem zagonu sistema uporabite istega uporabnika sudo, da se znova prijavite.

2. korak: Namestite in konfigurirajte MariaDB

Sphinx se lahko uporablja za iskanje različnih virov podatkov, kot so baze podatkov SQL, datoteke z navadnim besedilom, datoteke HTML itd. Tukaj si oglejmo, kako uporabiti Sphinx za izvajanje iskanja v bazi podatkov MariaDB.

Namestite MariaDB z uporabo YUM:

sudo yum install mariadb mariadb-server

Zaženite storitev MariaDB:

sudo systemctl start mariadb.service
sudo systemctl enable mariadb.service

Iz varnostnih razlogov izvedite varno namestitev MySQL:

sudo /usr/bin/mysql_secure_installation

Ta postopek zaključite v skladu z naslednjimi navodili:

Enter current password for root (enter for none): Press Enter
Set root password? [Y/n]: Input Y, then press Enter
New password: Input a new password for root, press Enter
Re-enter new password: Input the same password again, then press Enter
Remove anonymous users? [Y/n]: Input Y, then press Enter
Disallow root login remotely? [Y/n]: Input Y, then press Enter
Remove test database and access to it? [Y/n]: Input Y, then press Enter
Reload privilege tables now? [Y/n]: Input Y, then press Enter

Ko se varna namestitev MySQL zaključi, boste morali nastaviti novo geslo za uporabnika MySQL "root". V tej vadnici ga bom imenoval "vaše geslo".

3. korak: Namestite najnovejšo različico Sphinx

Če želite namestiti najnovejšo različico Sphinxa, morate prenesti ustrezen paket rpm z uradnega spletnega mesta Sphinx:

cd ~
wget http://sphinxsearch.com/files/sphinx-2.2.10-1.rhel7.x86_64.rpm
sudo yum install sphinx-2.2.10-1.rhel7.x86_64.rpm

4. korak: Ustvarite bazo podatkov za testiranje

Za ustvarjanje baze podatkov z imenom "test" uporabite naslednje ukaze MySQL:

mysql -u root -p -e "CREATE DATABASE test"

Ko boste pozvani, da vnesete geslo, vnesite tisto, ki ste ga nastavili prej, in pritisnite Enter.

Zdaj uvozite testne podatke iz primera datoteke sql Sphinx:

mysql -u root -p test < /usr/share/doc/sphinx-2.2.10/example.sql

Ponovno vnesite isto geslo in nato pritisnite Enter, da dokončate uvoz.

5. korak: Konfigurirajte Sphinx

Odprite konfiguracijsko datoteko Sphinx /etc/sphinx/sphinx.conf:

sudo vi /etc/sphinx/sphinx.conf

Za zdaj morate nastaviti le uporabniško ime MySQL sql_userin geslo sql_pass, ki bi bilo:

sql_user                = root
sql_pass                = yourpassword

Shrani in zapusti:

:wq

6. korak: Zaženite indekser in iskalne demone

Tako indekser kot searchd sta pomembni komponenti Sphinxa. Indexer je zadolžen za zbiranje podatkov iz vira podatkov, searchd pa je del iskalnika, ki dejansko obravnava iskanja.

Ne pozabite izvajati naslednjih ukazov urejeno, sicer boste naleteli na napake.

sudo indexer --all
sudo searchd

Če želite redno posodabljati stanje indeksa, ustvarite opravilo cron:

sudo crontab -e

Vnesite naslednji vnos:

0 * * * * /usr/bin/indexer --rotate --config /etc/sphinx/sphinx.conf --all

Shrani in zapusti:

:wq

To opravilo cron bo vsako uro posodabljalo stanje indeksa.

7. korak: Preizkusite svoj iskalnik Sphinx

Za preizkus nastavitve Sphinxa lahko uporabite vnaprej določen skript python:

python /usr/share/sphinx/api/test.py this is my test document

Ta ukaz bo iskal "to je moj testni dokument" v vzorčni bazi podatkov MySQL in vam nato pokazal rezultat iskanja.

S tem je ta vadnica zaključena. Sphinx vključuje tudi iskalni API, ki ga lahko uporabite iz lastnih projektov PHP, Perl, Python, Ruby ali Java. Več informacij je na voljo na uradni spletni strani Sphinx.

Vodniki za Linux, programiranje, strežniške aplikacije, sistemski skrbnik

Pusti komentar

Vzpon strojev: aplikacije AI v resničnem svetu

Vzpon strojev: aplikacije AI v resničnem svetu

Umetna inteligenca ni v prihodnosti, tukaj je prav v sedanjosti. V tem blogu preberite, kako so aplikacije umetne inteligence vplivale na različne sektorje.

DDOS napadi: kratek pregled

DDOS napadi: kratek pregled

Ste tudi vi žrtev DDOS napadov in ste zmedeni glede načinov preprečevanja? Preberite ta članek, če želite rešiti svoja vprašanja.

Ste se kdaj vprašali, kako hekerji zaslužijo denar?

Ste se kdaj vprašali, kako hekerji zaslužijo denar?

Morda ste že slišali, da hekerji zaslužijo veliko denarja, a ste se kdaj vprašali, kako zaslužijo takšen denar? razpravljajmo.

Revolucionarni Googlovi izumi, ki vam bodo olajšali življenje.

Revolucionarni Googlovi izumi, ki vam bodo olajšali življenje.

Ali želite videti revolucionarne izume Googla in kako so ti izumi danes spremenili življenje vsakega človeka? Nato preberite v blogu in si oglejte Googlove izume.

Friday Essential: Kaj se je zgodilo z avtomobili, ki jih poganja umetna inteligenca?

Friday Essential: Kaj se je zgodilo z avtomobili, ki jih poganja umetna inteligenca?

Koncept samovozečih avtomobilov, ki zapeljejo na ceste s pomočjo umetne inteligence, so sanje, ki jih imamo že nekaj časa. A kljub številnim obljubam jih ni nikjer. Preberite ta blog, če želite izvedeti več…

Tehnološka singularnost: oddaljena prihodnost človeške civilizacije?

Tehnološka singularnost: oddaljena prihodnost človeške civilizacije?

Ker se znanost hitro razvija in prevzame veliko naših prizadevanj, se povečuje tudi tveganje, da se podvržemo nerazložljivi singularnosti. Preberite, kaj bi za nas lahko pomenila singularnost.

Funkcionalnosti slojev referenčne arhitekture velikih podatkov

Funkcionalnosti slojev referenčne arhitekture velikih podatkov

Preberite blog, če želite na najpreprostejši način spoznati različne plasti v arhitekturi velikih podatkov in njihove funkcionalnosti.

Razvoj shranjevanja podatkov – Infografika

Razvoj shranjevanja podatkov – Infografika

Metode shranjevanja podatkov so se lahko razvijale od rojstva podatkov. Ta blog pokriva razvoj shranjevanja podatkov na podlagi infografike.

6 neverjetnih prednosti pametnih naprav za dom v našem življenju

6 neverjetnih prednosti pametnih naprav za dom v našem življenju

V tem digitalno vodenem svetu so pametne naprave za dom postale ključni del življenja. Tukaj je nekaj neverjetnih prednosti pametnih naprav za dom o tem, kako naredijo naše življenje vredno življenja in poenostavijo.

Posodobitev dodatka macOS Catalina 10.15.4 povzroča več težav kot jih rešuje

Posodobitev dodatka macOS Catalina 10.15.4 povzroča več težav kot jih rešuje

Pred kratkim je Apple izdal macOS Catalina 10.15.4 dopolnilno posodobitev za odpravo težav, vendar se zdi, da posodobitev povzroča več težav, ki vodijo do opečenja računalnikov Mac. Preberite ta članek, če želite izvedeti več