Question

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 ???

Was it helpful?

Solution

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.

OTHER TIPS

I have got the same problem, I don't think you have to recompile anything, I've read that you can use the mysql console SET ft_stopword_file='path/to/stopword_file.txt', that should not require restarting your server. but I don;t think it will last till the next restart, so I guess I'll try the config file, and see if it works

The list of stopwords that MySQL ships with (at least for MyISAM) can be found in MySQL's source, in myisam/ft_static.c.

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

You can override or disable the default stopword list using the ft_stopword_file directive as pointed out in the comments. Full documentation here.

i wass having same problem. stopwords file must be included under [mysqld] section in my.ini file.

[mysqld] ft_stopword_file = 'D:/stop.txt' then

repair table tablename worked for me.

You can find a list of stop words to use here: https://dev.mysql.com/doc/refman/5.6/en/fulltext-stopwords.html. 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.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top