Tuesday, May 3, 2011

How to reset stop words in MYSQL?

I want to reset stop word list in mysql for FULLTEXT search. I have installed WAMP Server in my system which have phpmyadmin to access mysql. But I dont know how to reset stop word in phpmyadmin. Can anyone please tell me how to do that.

I also http://dev.mysql.com/doc/refman/5.1/en/server-system-variables.html#sysvar_ft_stopword_file read this link but don't know ho wto use this ???

From stackoverflow
  • According to this article, in order to change the list of stopwords in MySQL, it looks like you have to edit the file myisam/ft_static.c and then re-compile MySQL.

    The list of stopwords that MySQL ships with is shown in that article.

    Note also that these are only the 'English' stopwords. Presumably, stopwords for other languages are defined elsewhere...

    Prashant : I want to know how to disable or change the stop word list. That is not given in the article....
  • I assume you're using WampServer.

    Click the tray icon, select MySQL, then click my.ini. The configuration file will open in notepad. Go to the end of the file and add this line (after the port line):

     ft_stopword_file=''
    

    to disable stop words. If you want to use custom stop-word file, replace that line with:

    ft_stopword_file='path/to/stopword_file.txt'
    

    (set the path of the stopword file, of course).

    After setting that line, save the configuration file (File -> Save). Then click the tray icon, select MySQL, then Service, then click Restart Service.

    To Ensure that your configuration is done correctly, open phpMyAdmin in the browser, click on the Variables tab at the top, then find ft stopword file and see the values that is set to it.

    Prashant : Yes, I am using Wampserver, Thanks for this answer :)
  • You can find a list of stop words to use here: http://dev.mysql.com/tech-resources/articles/full-text-revealed.html#stopwords. I saved this list to a file and referenced it from the MySQL config file (e.g. ft_stopword_file='path/to/stopword_file.txt').

    I removed "it" and "us" from the stopword list because they mean "Information Technology" and "United States" in my problem domain.

    Unfortunately, every time you change the stopword list you have to restart MYSQL and rebuild the full-text index's.

0 comments:

Post a Comment