Jak zainstalować wyszukiwarkę Sphinx na CentOS 7

Sphinx to darmowa wyszukiwarka pełnotekstowa o otwartym kodzie źródłowym, którą można zintegrować z różnymi aplikacjami internetowymi, aby zapewnić szybkie i wysokiej jakości wyniki wyszukiwania.

W tym artykule pokazano, jak skonfigurować wyszukiwarkę Sphinx w celu indeksowania i przeszukiwania przykładowej bazy danych MariaDB na instancji serwera Vultr CentOS 7. Da ci kilka wstępnych pomysłów, jak używać Sfinksa w swoim projekcie.

Wymagania wstępne

  • Wdróż nową instancję serwera CentOS 7 z panelu sterowania Vultr.
  • Użyj innego użytkownika niż sudo, aby zalogować się z terminala SSH. Zobacz, jak utworzyć użytkownika sudo w tym artykule .

Krok 1: Zaktualizuj system

sudo yum update -y && sudo reboot

Po zakończeniu ponownego uruchamiania systemu użyj tego samego użytkownika sudo, aby zalogować się ponownie.

Krok 2: Zainstaluj i skonfiguruj MariaDB

Sfinksa można używać do wyszukiwania różnych źródeł danych, takich jak bazy danych SQL, zwykłe pliki tekstowe, pliki HTML itp. Oto, jak używać Sphinx do wyszukiwania danych w bazie danych MariaDB.

Zainstaluj MariaDB za pomocą YUM:

sudo yum install mariadb mariadb-server

Uruchom usługę MariaDB:

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

Ze względów bezpieczeństwa wykonaj bezpieczną instalację MySQL:

sudo /usr/bin/mysql_secure_installation

Zakończ tę procedurę zgodnie z następującymi instrukcjami:

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

Po zakończeniu bezpiecznej instalacji MySQL będziesz musiał ustawić nowe hasło dla użytkownika „root” użytkownika MySQL. W tym samouczku będę się nazywać „Twoim hasłem”.

Krok 3: Zainstaluj najnowszy Sfinks

Aby zainstalować najnowszą wersję Sphinx, musisz pobrać odpowiedni pakiet rpm z oficjalnej strony internetowej 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

Krok 4: Utwórz bazę danych do testowania

Użyj następujących poleceń MySQL, aby utworzyć bazę danych o nazwie „test”:

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

Gdy zostaniesz poproszony o podanie hasła, wprowadź hasło ustawione wcześniej, a następnie naciśnij klawisz Enter.

Teraz zaimportuj dane testowe z przykładowego pliku sql Sphinx:

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

Ponownie wprowadź to samo hasło, a następnie naciśnij klawisz Enter, aby zakończyć importowanie.

Krok 5: Skonfiguruj Sfinksa

Otwórz plik konfiguracyjny Sphinx /etc/sphinx/sphinx.conf:

sudo vi /etc/sphinx/sphinx.conf

Na razie wystarczy ustawić nazwę użytkownika MySQL sql_useri hasło sql_pass, które będą:

sql_user                = root
sql_pass                = yourpassword

Zapisz i wyjdź:

:wq

Krok 6: Uruchom indeksator i wyszukaj demony

Zarówno indeksator, jak i wyszukiwarka są ważnymi składnikami Sfinksa. Indexer odpowiada za zbieranie danych ze źródła danych, a searchd jest częścią wyszukiwarki, która faktycznie obsługuje wyszukiwanie.

Pamiętaj, aby uruchomić kolejno następujące polecenia, w przeciwnym razie wystąpią błędy.

sudo indexer --all
sudo searchd

Aby regularnie aktualizować status indeksu, utwórz zadanie cron:

sudo crontab -e

Wprowadź następujący wpis:

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

Zapisz i wyjdź:

:wq

To zadanie cron aktualizuje status indeksu co godzinę.

Krok 7: Przetestuj swoją wyszukiwarkę Sphinx

Możesz użyć wstępnie zdefiniowanego skryptu python, aby przetestować konfigurację Sphinx:

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

To polecenie przeszuka „to mój dokument testowy” w przykładowej bazie danych MySQL, a następnie wyświetli wynik wyszukiwania.

To kończy ten samouczek. Sphinx zawiera także API wyszukiwania, którego można używać z własnych projektów PHP, Perl, Python, Ruby lub Java. Więcej informacji jest dostępnych na oficjalnej stronie internetowej Sfinksa.



Funkcjonalności warstw architektury referencyjnej Big Data

Funkcjonalności warstw architektury referencyjnej Big Data

Przeczytaj blog, aby w najprostszy sposób poznać różne warstwy w architekturze Big Data i ich funkcjonalności.

Rewolucyjne wynalazki Google, które ułatwią Twoje życie.

Rewolucyjne wynalazki Google, które ułatwią Twoje życie.

Chcesz zobaczyć rewolucyjne wynalazki Google i jak te wynalazki zmieniły życie każdego człowieka dzisiaj? Następnie czytaj na blogu, aby zobaczyć wynalazki Google.

13 komercyjnych narzędzi do ekstrakcji danych z Big Data

13 komercyjnych narzędzi do ekstrakcji danych z Big Data

13 komercyjnych narzędzi do ekstrakcji danych z Big Data

Pozostań w kontakcie dzięki aplikacji WhatsApp na komputer 24*7

Pozostań w kontakcie dzięki aplikacji WhatsApp na komputer 24*7

Whatsapp w końcu uruchomił aplikację Desktop dla użytkowników komputerów Mac i Windows. Teraz możesz łatwo uzyskać dostęp do Whatsapp z systemu Windows lub Mac. Dostępne dla Windows 8+ i Mac OS 10.9+

5 przykładów, które dowodzą, że energetyka jądrowa nie zawsze jest zła

5 przykładów, które dowodzą, że energetyka jądrowa nie zawsze jest zła

Energia jądrowa jest zawsze pogardzana, nigdy jej nie szanujemy z powodu przeszłych wydarzeń, ale nie zawsze jest zła. Przeczytaj post, aby dowiedzieć się więcej na ten temat.

Friday Essential: Co się stało z samochodami sterowanymi przez sztuczną inteligencję?

Friday Essential: Co się stało z samochodami sterowanymi przez sztuczną inteligencję?

Koncepcja autonomicznych samochodów, które wyjadą na drogi za pomocą sztucznej inteligencji, to marzenie, które mamy już od jakiegoś czasu. Ale pomimo kilku obietnic nigdzie ich nie widać. Przeczytaj ten blog, aby dowiedzieć się więcej…

Czy AI może walczyć z rosnącą liczbą ataków ransomware?

Czy AI może walczyć z rosnącą liczbą ataków ransomware?

Wzrasta liczba ataków ransomware, ale czy sztuczna inteligencja może pomóc w radzeniu sobie z najnowszym wirusem komputerowym? Czy AI jest odpowiedzią? Przeczytaj tutaj, wiedz, że sztuczna inteligencja jest zmorą lub zgubą

5 przydatnych narzędzi sztucznej inteligencji, które uproszczą Twoje życie

5 przydatnych narzędzi sztucznej inteligencji, które uproszczą Twoje życie

Sztuczna inteligencja nie jest dla ludzi nową nazwą. Ponieważ sztuczna inteligencja jest włączona do każdego strumienia, jednym z nich jest opracowywanie narzędzi zwiększających ludzką wydajność i dokładność. Skorzystaj z tych niesamowitych narzędzi uczenia maszynowego i uprość swoje codzienne zadania.

Wgląd w 26 technik analizy Big Data: część 2

Wgląd w 26 technik analizy Big Data: część 2

Zawsze potrzebujemy Big Data Analytics do efektywnego zarządzania danymi. W tym artykule omówiliśmy kilka technik analizy Big Data. Sprawdź ten artykuł.

Ataki DDOS: krótki przegląd

Ataki DDOS: krótki przegląd

Czy jesteś również ofiarą ataków DDOS i nie masz pewności co do metod zapobiegania? Przeczytaj ten artykuł, aby rozwiązać swoje pytania.