Parakushtet
Hapi 1: Përditësoni sistemin tuaj
Hapi 2: Instaloni dhe konfiguroni MariaDB
Hapi 3: Instaloni Sfinksin më të fundit
Hapi 4: Krijoni një bazë të dhënash për testim
Hapi 5: Konfiguro Sfinksin
Hapi 6: Filloni indeksuesin dhe demonët e kërkuar
Hapi 7: Testoni motorin tuaj të kërkimit Sphinx
Sphinx është një motor kërkimi me tekst të plotë falas dhe me burim të hapur, i cili mund të integrohet në aplikacione të ndryshme ueb për të ofruar rezultate të shpejta dhe me cilësi të lartë kërkimi.
Ky artikull do t'ju tregojë se si të konfiguroni një motor kërkimi Sphinx për të indeksuar dhe kërkuar një shembull bazë të dhënash MariaDB në një shembull të serverit Vultr CentOS 7. Do t'ju japë disa ide paraprake se si të përdorni Sphinx në projektin tuaj.
Parakushtet
- Vendosni një shembull të ri të serverit CentOS 7 nga paneli i kontrollit Vultr.
- Përdorni një përdorues sudo jo-root për t'u identifikuar nga terminali juaj SSH. Shihni se si të krijoni një përdorues sudo në këtë artikull .
Hapi 1: Përditësoni sistemin tuaj
sudo yum update -y && sudo reboot
Pasi të përfundojë rindezja e sistemit, përdorni të njëjtin përdorues sudo për t'u identifikuar përsëri.
Sphinx mund të përdoret për të kërkuar burime të ndryshme të dhënash, si bazat e të dhënave SQL, skedarë teksti të thjeshtë, skedarë HTML, etj. Këtu, le të shohim se si të përdorim Sphinx për të kryer kërkime në një bazë të dhënash MariaDB.
Instaloni MariaDB duke përdorur YUM:
sudo yum install mariadb mariadb-server
Filloni shërbimin MariaDB:
sudo systemctl start mariadb.service
sudo systemctl enable mariadb.service
Për qëllime sigurie, kryeni instalimin e sigurt të MySQL:
sudo /usr/bin/mysql_secure_installation
Përfundoni këtë procedurë në përputhje me udhëzimet e mëposhtme:
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
Pasi të përfundojë instalimi i sigurt i MySQL, do t'ju duhet të vendosni një fjalëkalim të ri për "root" të përdoruesit të MySQL. Në këtë tutorial, unë do t'i referohem si "fjalëkalimi juaj".
Hapi 3: Instaloni Sfinksin më të fundit
Për të instaluar versionin më të fundit të Sphinx, duhet të shkarkoni paketën e duhur rpm nga faqja zyrtare e 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
Hapi 4: Krijoni një bazë të dhënash për testim
Përdorni komandat e mëposhtme MySQL për të krijuar një bazë të dhënash të quajtur "test":
mysql -u root -p -e "CREATE DATABASE test"
Kur ju kërkohet të jepni një fjalëkalim, futni atë që keni vendosur më parë dhe më pas shtypni Enter.
Tani, importoni të dhënat e testit nga një skedar shembull Sphinx sql:
mysql -u root -p test < /usr/share/doc/sphinx-2.2.10/example.sql
Përsëri, futni të njëjtin fjalëkalim dhe më pas shtypni Enter për të përfunduar importimin.
Hapni skedarin e konfigurimit Sphinx /etc/sphinx/sphinx.conf:
sudo vi /etc/sphinx/sphinx.conf
Tani për tani, ju duhet vetëm të vendosni emrin e përdoruesit sql_userdhe fjalëkalimin MySQL sql_pass, i cili do të ishte:
sql_user = root
sql_pass = yourpassword
Ruani dhe hiqni dorë:
:wq
Hapi 6: Filloni indeksuesin dhe demonët e kërkuar
Si indeksuesi ashtu edhe i kërkuari janë komponentë të rëndësishëm të Sfinksit. Indexer është përgjegjës për mbledhjen e të dhënave nga burimi i të dhënave, dhe i kërkuar është pjesa e motorit të kërkimit që në të vërtetë trajton kërkimet.
Sigurohuni që të ekzekutoni komandat e mëposhtme në mënyrë të rregullt, ose do të hasni gabime.
sudo indexer --all
sudo searchd
Për të përditësuar rregullisht statusin e indeksit, krijoni një punë cron:
sudo crontab -e
Futni hyrjen e mëposhtme:
0 * * * * /usr/bin/indexer --rotate --config /etc/sphinx/sphinx.conf --all
Ruani dhe hiqni dorë:
:wq
Kjo punë cron do të përditësojë statusin e indeksit çdo orë.
Hapi 7: Testoni motorin tuaj të kërkimit Sphinx
Ju mund të përdorni një skript të paracaktuar python për të testuar konfigurimin tuaj të Sphinx:
python /usr/share/sphinx/api/test.py this is my test document
Kjo komandë do të kërkojë "ky është dokumenti im i testimit" në shembullin e bazës së të dhënave MySQL dhe më pas do t'ju tregojë rezultatin e kërkimit.
Kjo përfundon këtë tutorial. Sphinx përfshin gjithashtu një API kërkimi, i cili mund të përdoret nga projektet tuaja PHP, Perl, Python, Ruby ose Java. Më shumë informacion mund të gjeni në faqen zyrtare të Sphinx.