Sphinx es un motor de búsqueda abierto diseñado con el fin de indexar contenidos de bases de datos. Nos permite que las búsquedas sean mucho más rápidas gracias a la indexación de contenido y de esta forma hacer buscadores optimizados para grandes cantidades de usuarios.
Veamos como instalar Sphinx Search Engine en Windows.
En primer lugar debemos descargar la versión de Sphinx para Windows de su web oficial.
Descomprimiremos el contenido del fichero en C:/sphinx
y crearemos en este directorio las carptedas log
y data
.
Ahora importaremos la base de datos de prueba a nuestro MySQL. Podemos utilizar PHPMyAdmin por ejemplo.
Ahora crearemos el fichero sphinx.conf, para ello copiamos y renombrados el que viene por defecto.
source src1 { # Configuración de la base de datos type = mysql sql_host = localhost sql_user = root sql_pass = sql_db = test sql_port = 3306 # optional, default is 3306 # Consulta principal a indexar sql_query = \ SELECT id, group_id, UNIX_TIMESTAMP(date_added) AS date_added, title, content \ FROM documents sql_attr_uint = group_id sql_attr_timestamp = date_added } index test1 { source = src1 path = C:/sphinx/data/test1 } index testrt { type = rt rt_mem_limit = 128M path = C:/sphinx/data/testrt rt_field = title rt_field = content rt_attr_uint = gid } indexer { mem_limit = 128M } searchd { listen = 9312 listen = 9306:mysql41 log = C:/sphinx/log/searchd.log query_log = C:/sphinx/log/query.log read_timeout = 5 max_children = 30 pid_file = C:/sphinx/log/searchd.pid seamless_rotate = 1 preopen_indexes = 1 unlink_old = 1 workers = threads # for RT to work binlog_path = C:/sphinx/data compat_sphinxql_magics = 0 }
El siguiente paso será crear los indices con el comando:
cd C:/sphinx/bin indexer.exe --config C:/sphinx/sphinx.conf --all
A continuación probamos la búsqueda con el comando:
search.exe --config C:/sphinx/sphinx.conf "one two document"
Añadiremos el servicio de Sphinx con el comando:
searchd.exe --install --config C:/sphinx/sphinx.conf --servicename sphinxsearch
Ahora iniciamos el servicio de Sphinx con el comando:
sc start sphinxsearch
Podemos parar el servicio con la orden:
sc stop sphinxsearch
Ya tenemos listo Sphinx para utilizarlo en nuestras aplicaciones.
Más información:
Sphinx Search Sitio oficial
Rebuilding Sphinx Index
Does Sphinx auto update is index when you add data to your sql
Busquedas Full Text con esteroides
indexar las busquedas full text con sphinx tutorial como usar sphinx/
Sphinx Search on Windows Wiki