Com instal·lar el motor de cerca Sphinx a CentOS 7

Sphinx és un motor de cerca de text complet gratuït i de codi obert que es pot integrar en diverses aplicacions web per proporcionar resultats de cerca ràpids i d'alta qualitat.

Aquest article us mostrarà com configurar un motor de cerca Sphinx per indexar i cercar una base de dades MariaDB d'exemple en una instància del servidor Vultr CentOS 7. Us donarà algunes idees preliminars sobre com utilitzar Sphinx al vostre projecte.

Requisits previs

  • Desplegueu una nova instància del servidor CentOS 7 des del tauler de control de Vultr.
  • Utilitzeu un usuari sudo que no sigui root per iniciar sessió des del vostre terminal SSH. Vegeu com crear un usuari sudo en aquest article .

Pas 1: actualitzeu el vostre sistema

sudo yum update -y && sudo reboot

Un cop finalitzi el reinici del sistema, utilitzeu el mateix usuari sudo per iniciar sessió de nou.

Pas 2: instal·leu i configureu MariaDB

Sphinx es pot utilitzar per cercar diverses fonts de dades, com ara bases de dades SQL, fitxers de text senzill, fitxers HTML, etc. Aquí, fem una ullada a com utilitzar Sphinx per fer cerques en una base de dades MariaDB.

Instal·leu MariaDB amb YUM:

sudo yum install mariadb mariadb-server

Inicieu el servei MariaDB:

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

Per motius de seguretat, realitzeu la instal·lació segura de MySQL:

sudo /usr/bin/mysql_secure_installation

Finalitzeu aquest procediment d'acord amb les instruccions següents:

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

Un cop finalitzada la instal·lació segura de MySQL, haureu d'establir una nova contrasenya per a l'usuari de MySQL "root". En aquest tutorial, m'hi referiré com a "la teva contrasenya".

Pas 3: instal·leu l'última Sphinx

Per instal·lar la darrera versió de Sphinx, heu de descarregar el paquet rpm adequat des del lloc web oficial de 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

Pas 4: creeu una base de dades per fer proves

Utilitzeu les ordres MySQL següents per crear una base de dades anomenada "test":

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

Quan se us demani que proporcioneu una contrasenya, introduïu la que heu establert anteriorment i, a continuació, premeu Intro.

Ara, importeu dades de prova d'un fitxer sql d'exemple de Sphinx:

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

De nou, introduïu la mateixa contrasenya i, a continuació, premeu Intro per finalitzar la importació.

Pas 5: configureu Sphinx

Obriu el fitxer de configuració de Sphinx /etc/sphinx/sphinx.conf:

sudo vi /etc/sphinx/sphinx.conf

De moment, només heu de configurar el nom d'usuari de MySQL sql_useri la contrasenya sql_pass, que serien:

sql_user                = root
sql_pass                = yourpassword

Desa i surt:

:wq

Pas 6: inicieu l'indexador i els dimonis searchd

Tant l'indexador com el searchd són components importants de Sphinx. Indexer s'encarrega de recopilar dades de la font de dades, i searchd és la part del motor de cerca que realment gestiona les cerques.

Assegureu-vos d'executar les ordres següents ordenadament, o trobareu errors.

sudo indexer --all
sudo searchd

Per actualitzar l'estat de l'índex regularment, creeu un treball cron:

sudo crontab -e

Introduïu l'entrada següent:

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

Desa i surt:

:wq

Aquest treball de cron actualitzarà l'estat de l'índex cada hora.

Pas 7: prova el teu motor de cerca Sphinx

Podeu utilitzar un script Python predefinit per provar la vostra configuració de Sphinx:

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

Aquesta ordre cercarà "aquest és el meu document de prova" a la base de dades MySQL d'exemple i després us mostrarà el resultat de la cerca.

Així conclou aquest tutorial. Sphinx també inclou una API de cerca, que es pot utilitzar des dels vostres projectes PHP, Perl, Python, Ruby o Java. Hi ha més informació disponible al lloc web oficial de Sphinx.

Deixa un comentari

The Rise of Machines: Real World Applications of AI

The Rise of Machines: Real World Applications of AI

La Intel·ligència Artificial no està en el futur, és aquí mateix en el present. En aquest bloc Llegiu com les aplicacions d'Intel·ligència Artificial han afectat diversos sectors.

Atacs DDOS: una breu visió general

Atacs DDOS: una breu visió general

També ets víctima d'atacs DDOS i estàs confós sobre els mètodes de prevenció? Llegiu aquest article per resoldre les vostres consultes.

Us heu preguntat mai com guanyen diners els pirates informàtics?

Us heu preguntat mai com guanyen diners els pirates informàtics?

Potser haureu sentit que els pirates informàtics guanyen molts diners, però us heu preguntat mai com guanyen aquest tipus de diners? anem a discutir.

Invents revolucionaris de Google que us facilitaran la vida.

Invents revolucionaris de Google que us facilitaran la vida.

Vols veure els invents revolucionaris de Google i com aquests invents van canviar la vida de tots els éssers humans actuals? A continuació, llegiu al bloc per veure els invents de Google.

Divendres essencial: què va passar amb els cotxes impulsats per IA?

Divendres essencial: què va passar amb els cotxes impulsats per IA?

El concepte de cotxes autònoms per sortir a les carreteres amb l'ajuda de la intel·ligència artificial és un somni que tenim des de fa temps. Però malgrat les diverses promeses, no es veuen enlloc. Llegeix aquest blog per saber-ne més...

Singularitat tecnològica: un futur llunyà de la civilització humana?

Singularitat tecnològica: un futur llunyà de la civilització humana?

A mesura que la ciència evoluciona a un ritme ràpid, fent-se càrrec de molts dels nostres esforços, també augmenten els riscos de sotmetre'ns a una singularitat inexplicable. Llegeix, què pot significar per a nosaltres la singularitat.

Funcionalitats de les capes darquitectura de referència de Big Data

Funcionalitats de les capes darquitectura de referència de Big Data

Llegeix el blog per conèixer de la manera més senzilla les diferents capes de l'Arquitectura Big Data i les seves funcionalitats.

Evolució de lemmagatzematge de dades – Infografia

Evolució de lemmagatzematge de dades – Infografia

Els mètodes d'emmagatzematge de les dades que han anat evolucionant poden ser des del naixement de les dades. Aquest bloc tracta l'evolució de l'emmagatzematge de dades a partir d'una infografia.

6 avantatges sorprenents de tenir dispositius domèstics intel·ligents a les nostres vides

6 avantatges sorprenents de tenir dispositius domèstics intel·ligents a les nostres vides

En aquest món digital, els dispositius domèstics intel·ligents s'han convertit en una part crucial de les vides. A continuació, es mostren alguns avantatges sorprenents dels dispositius domèstics intel·ligents sobre com fan que la nostra vida valgui la pena i sigui més senzilla.

Lactualització del suplement de macOS Catalina 10.15.4 està causant més problemes que no pas solucions

Lactualització del suplement de macOS Catalina 10.15.4 està causant més problemes que no pas solucions

Recentment, Apple va llançar macOS Catalina 10.15.4, una actualització de suplements per solucionar problemes, però sembla que l'actualització està causant més problemes que provoquen el bloqueig de les màquines Mac. Llegiu aquest article per obtenir més informació