Contiene varios archivos Helper-Config para facilitar la instalación y ejecutar SphinxSearch V3+.
El repositorio no contiene archivos Docker u otras formas de ejecutar el motor de búsqueda dentro del contenedor.
Recomiendo utilizar https://manticoresearch.com/ motor como una alternativa a SphinxSearch debido al código fuente disponible, Repos APT/YUM e instalador de Windows, más características, más estables.
Cuando su carpeta/var/run se encuentra en el sistema de archivos TMPFS (ex: Ubuntu/Debian con Systemd), a menudo es una sorpresa cuando sus carpetas creadas en/var/Run desaparecen después del reinicio del sistema.
Entonces, a continuación hay un ejemplo para instalar SphinxSearch v3.5+ en dicho sistema operativo.
1. Obtenga la versión deseada de http://sphinxsearch.com
wget http://sphinxsearch.com/files/sphinx-3.5.1-(XXX-some-hash-XXX)-linux-amd64.tar.gzTu versión hash será diferente de mi.
2. Crear usuario
useradd -r -U -c ' Sphinxsearch system user ' sphinx3. Contenido de repositorio no enrollado
Obtendrá algo como esto como estructura de directorio:
sphinx-3.5.1
├── api
│ └── ...
├── bin
│ ├── indexer
│ ├── indextool
│ ├── searchd
│ └── wordbreaker
├── doc
│ └── ...
├── etc
│ ├── example.sql
│ ├── sphinx-min.conf.dist
│ └── sphinx.conf.dist
├── misc
│ └── ...
└── src
└── ...
Estamos interesados solo en el contenido de la carpeta./Bin. Simplemente copie ./bin archivos en su carpeta/usr/bin.
cp sphinx-3.5.1/bin/ * /usr/binPruebe que se busque - SphinxSearch Daemon Binary ahora existe en su sistema
whereis searchdObtendrás
Searchd:/usr/bin/searchd
4. Configure nuestra instalación
Tengo mi propia configuración de ejemplo, puede tomar la tuya.
Primero: cree rutas, necesitamos almacenar índices, archivos de configuración, registros, etc.
mkdir -p /etc/sphinx /var/run/sphinx /var/log/sphinx /var/lib/sphinx/dataDeje que nuestro usuario de Sphinx creado para tratar con nuevas rutas.
chown -R sphinx:sphinx /etc/sphinx /var/run/sphinx /var/log/sphinx /var/lib/sphinxMueva los archivos de configuración de esta carpeta de repositorio /etc a sus lugares.
Configuración general:
/etc/sphinx/sphinx.conf
Archivo de servicio Systemd:
/etc/systemd/system/sphinx.service
Archivo, indicando nuestro sistema operativo para restaurar/var/run/sphinx carpeta con permisos de escritura para el usuario de Sphinx:
/usr/lib/tmpfiles.d/sphinx.conf
5. Habilitar el servicio Systemd Ingrese esto para habilitar el servicio del sistema:
systemctl enable sphinxObtendrás algo como:
Created symlink /etc/systemd/system/sphinx.service → /lib/systemd/system/sphinx.service.
5. Comience el servicio
Ahora puedes comenzar SphinxSearch Daemon como
systemctl start sphinx6. Instalación de comprobación
Para verificar el servicio que puede usar:
ps ax | grep searchdResulta en una salida similar:
3744 ? S 0:00 /usr/bin/searchd --config /etc/sphinx/sphinx.conf
3746 ? Sl 0:00 /usr/bin/searchd --config /etc/sphinx/sphinx.conf
SphinxSearch admite conexiones a través de la interfaz similar a MySQL, por lo que para realizar comprobaciones adicionales necesitamos:
Nota: Para esta verificación, tendrá que instalar la biblioteca mysql-client (ex: mysql-client-core-8.0)
mysql -uroot -h 127.0.0.1 -P 9306El puerto 9306 es el puerto que seleccionó en la sección Searchd de su archivo sphinx.conf en parámetro escuchar
En la consola abierta puede ver que SphinxSearch creó nuestro índice de noticias de prueba
mysql> show tables;
+-------+------+
| Index | Type |
+-------+------+
| news | rt |
+-------+------+
1 row in set (0.00 sec)
Reinicie su sistema/máquina virtual y vea el servicio en ejecución.
Para dejar de ejecutar el uso del motor de búsqueda
systemctl stop sphinx