Kaip įdiegti „Sphinx“ paieškos variklį „CentOS 7“.

Sphinx yra nemokama atvirojo kodo viso teksto paieškos sistema, kurią galima integruoti į įvairias žiniatinklio programas, kad būtų pateikti greiti ir aukštos kokybės paieškos rezultatai.

Šiame straipsnyje bus parodyta, kaip nustatyti Sphinx paieškos variklį, kad jis indeksuotų ir ieškotų MariaDB duomenų bazės pavyzdyje Vultr CentOS 7 serverio egzemplioriuje. Tai suteiks jums keletą preliminarių idėjų, kaip naudoti Sfinksą savo projekte.

Būtinos sąlygos

  • Įdiekite naują CentOS 7 serverio egzempliorių iš „Vultr“ valdymo skydelio.
  • Norėdami prisijungti iš savo SSH terminalo, naudokite ne root sudo vartotoją. Šiame straipsnyje sužinokite, kaip sukurti sudo vartotoją .

1 veiksmas: atnaujinkite sistemą

sudo yum update -y && sudo reboot

Pasibaigus sistemos perkrovimui, naudokite tą patį sudo vartotoją, kad vėl prisijungtumėte.

2 veiksmas: įdiekite ir sukonfigūruokite MariaDB

„Sfinksas“ gali būti naudojamas ieškant įvairių duomenų šaltinių, tokių kaip SQL duomenų bazės, paprasto teksto failai, HTML failai ir kt. Pažiūrėkime, kaip naudoti „Sfinksą“ ieškant MariaDB duomenų bazėje.

Įdiekite MariaDB naudodami YUM:

sudo yum install mariadb mariadb-server

Paleiskite MariaDB paslaugą:

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

Saugumo sumetimais atlikite saugų MySQL diegimą:

sudo /usr/bin/mysql_secure_installation

Užbaikite šią procedūrą vadovaudamiesi šiomis instrukcijomis:

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

Pasibaigus saugiam MySQL diegimui, turėsite nustatyti naują MySQL vartotojo „root“ slaptažodį. Šioje pamokoje tai vadinsiu „jūsų slaptažodžiu“.

3 veiksmas: įdiekite naujausią „Sphinx“.

Norėdami įdiegti naujausią Sphinx versiją, turite atsisiųsti tinkamą rpm paketą iš oficialios Sphinx svetainės:

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 veiksmas: sukurkite duomenų bazę testavimui

Norėdami sukurti duomenų bazę pavadinimu "testas", naudokite šias MySQL komandas:

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

Kai būsite paprašyti įvesti slaptažodį, įveskite anksčiau nustatytą slaptažodį ir paspauskite Enter.

Dabar importuokite bandymo duomenis iš Sphinx pavyzdinio sql failo:

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

Dar kartą įveskite tą patį slaptažodį ir paspauskite Enter, kad užbaigtumėte importavimą.

5 veiksmas: sukonfigūruokite Sfinksą

Atidarykite Sfinkso konfigūracijos failą /etc/sphinx/sphinx.conf:

sudo vi /etc/sphinx/sphinx.conf

Kol kas jums tereikia nustatyti MySQL vartotojo vardą sql_userir slaptažodį sql_pass, kurie būtų:

sql_user                = root
sql_pass                = yourpassword

Išsaugoti ir išeiti:

:wq

6 veiksmas: paleiskite indeksavimo priemonę ir ieškomus demonus

Tiek indeksavimo priemonė, tiek paieška yra svarbūs Sfinkso komponentai. Indexer yra atsakingas už duomenų rinkimą iš duomenų šaltinio, o ieškoma yra paieškos variklio dalis, kuri faktiškai atlieka paieškas.

Būtinai vykdykite šias komandas tvarkingai, kitaip susidursite su klaidomis.

sudo indexer --all
sudo searchd

Norėdami reguliariai atnaujinti indekso būseną, sukurkite cron užduotį:

sudo crontab -e

Įveskite šį įrašą:

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

Išsaugoti ir išeiti:

:wq

Šis cron darbas kas valandą atnaujins indekso būseną.

7 veiksmas: išbandykite savo Sfinkso paieškos variklį

Galite naudoti iš anksto nustatytą python scenarijų, kad patikrintumėte Sphinx sąranką:

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

Ši komanda pavyzdinėje MySQL duomenų bazėje ieškos „tai yra mano bandomasis dokumentas“ ir parodys paieškos rezultatą.

Tuo ši pamoka baigiama. Sphinx taip pat apima paieškos API, kurią galima naudoti iš jūsų PHP, Perl, Python, Ruby ar Java projektų. Daugiau informacijos rasite oficialioje Sfinkso svetainėje.

Palikti komentarą

Mašinų augimas: AI pritaikymas realiame pasaulyje

Mašinų augimas: AI pritaikymas realiame pasaulyje

Dirbtinis intelektas nėra ateityje, jis čia, dabartyje Šiame tinklaraštyje Skaitykite, kaip dirbtinio intelekto programos paveikė įvairius sektorius.

DDOS atakos: trumpa apžvalga

DDOS atakos: trumpa apžvalga

Ar taip pat esate DDOS atakų auka ir esate sumišęs dėl prevencijos metodų? Perskaitykite šį straipsnį, kad išspręstumėte savo užklausas.

Ar kada nors susimąstėte, kaip įsilaužėliai uždirba pinigų?

Ar kada nors susimąstėte, kaip įsilaužėliai uždirba pinigų?

Galbūt girdėjote, kad įsilaužėliai uždirba daug pinigų, bet ar kada susimąstėte, kaip jie uždirba tokius pinigus? padiskutuokime.

Revoliuciniai „Google“ išradimai, kurie palengvins jūsų gyvenimą.

Revoliuciniai „Google“ išradimai, kurie palengvins jūsų gyvenimą.

Ar norite pamatyti revoliucinius „Google“ išradimus ir kaip šie išradimai pakeitė kiekvieno žmogaus gyvenimą šiandien? Tada skaitykite tinklaraštį, kad pamatytumėte „Google“ išradimus.

Penktadienio esminiai dalykai: kas atsitiko AI varomiems automobiliams?

Penktadienio esminiai dalykai: kas atsitiko AI varomiems automobiliams?

Savavaledžių automobilių koncepcija, kuri išvažiuotų į kelius su dirbtinio intelekto pagalba, yra svajonė, kurią jau kurį laiką svajojame. Tačiau nepaisant kelių pažadų, jų niekur nematyti. Skaitykite šį tinklaraštį, kad sužinotumėte daugiau…

Technologinis išskirtinumas: tolima žmogaus civilizacijos ateitis?

Technologinis išskirtinumas: tolima žmogaus civilizacijos ateitis?

Kadangi mokslas sparčiai vystosi, perimdamas daug mūsų pastangų, taip pat didėja rizika, kad pateksime į nepaaiškinamą singuliarumą. Skaitykite, ką mums gali reikšti išskirtinumas.

Didžiųjų duomenų atskaitos architektūros sluoksnių funkcijos

Didžiųjų duomenų atskaitos architektūros sluoksnių funkcijos

Skaitykite tinklaraštį, kad paprasčiausiai sužinotumėte apie skirtingus didžiųjų duomenų architektūros sluoksnius ir jų funkcijas.

Duomenų saugojimo raida – infografika

Duomenų saugojimo raida – infografika

Duomenų saugojimo metodai gali būti tobulinami nuo pat Duomenų gimimo. Šiame tinklaraštyje, remiantis infografika, aprašoma duomenų saugojimo raida.

6 nuostabūs išmaniųjų namų įrenginių privalumai

6 nuostabūs išmaniųjų namų įrenginių privalumai

Šiame skaitmeniniu būdu pagrįstame pasaulyje išmanieji namų įrenginiai tapo svarbia gyvenimo dalimi. Štai keletas nuostabių išmaniųjų namų įrenginių privalumų, kaip jie daro mūsų gyvenimą vertą gyventi ir paprastesnį.

„macOS Catalina 10.15.4“ priedo atnaujinimas kelia daugiau problemų, nei sprendžia

„macOS Catalina 10.15.4“ priedo atnaujinimas kelia daugiau problemų, nei sprendžia

Neseniai „Apple“ išleido „macOS Catalina 10.15.4“ priedą, skirtą problemoms išspręsti, tačiau atrodo, kad dėl atnaujinimo kyla daugiau problemų, dėl kurių „Mac“ įrenginiai blokuojami. Norėdami sužinoti daugiau, perskaitykite šį straipsnį