Diego Di Camillo

Base de tips para problemas comunes de los desarrolladores.



MATCH AGAINST MYSQL | NOT MATCH PHRASES SHORTS USING «*» IN BOOLEAN MODE

10Jul13

Ampliando aún más el post www.diegodicamillo.com.ar/blog/2010/02/22/utilizando-match-against-en-mysql-buscador-php-simple-utilizando-funcionalidades-de-mysql/#sthash.CkCMy91Q.dpuf utilizando el modificador IN BOOLEAN MODE con el uso del asterisco * en el query

$q = «*KIT*»

Por más que existieran frases como «KIT DE PEDALES Y PALANCAS» las mismas no matcheaban y no eran incluídas en los resultados.

Investigando un poco, encontré que hay un parámetro en el archivo de configuración de mysql llamado /etc/mysql/my.cnf

el parámetro en cuestión es:

ft_min_word_len

El mismo por defecto está en 4 (signiifica matchear palabras de 4 o más caracteres)
Asi que, si tienes acceso al archivo modifica el valor a 2 ó 1 (atención: bajar el valor hace que el proceso demore más)

ft_min_word_len = 2

Debes reiniciar el servicio mysqld (servidor de mysql).

Luego en cada tabla donde tengas el indice FULL TEXT debes ejecutar el sql:

REPAIR TABLE table_name QUICK;

donde table_name es el nombre de cada una de las tablas con el índice.

Luego si puedes realizar búsquedas de palabras más cortas.

Archivado en: Apache, Code Igniter, configuraciones, General, Mysql, Nuevas Tecnologias, Productos open source   |  0 Comentarios

Sin comentarios a “MATCH AGAINST MYSQL | NOT MATCH PHRASES SHORTS USING «*» IN BOOLEAN MODE”  

Feed de este artículo URI para Trackbacks
  1. No hay comentarios
Enviando tu Comentario
Por favor espera

Deja una respuesta

Hubo un error con tu comentario, por favor intenta de nuevo.



Comparte este artículo

  • Menéame  Menéalo
  • del.icio.us  Enviar a Del.icio.us
  • Mi Yahoo!  Agregar a Mi Web 2.0
  • Furl  Guardar en Furl
 


wordpressk2openswitchyukei.netfeedwordpress