Pergunta

Eu quero redefinir lista de palavras de parada no mysql para pesquisa de texto completo. Eu instalei WAMP Server no meu sistema que tem o phpMyAdmin para acesso mysql. Mas eu não sei como repor palavra parada em phpmyadmin. Alguém por favor pode me dizer como fazer isso.

Eu também http: // desenv. mysql.com/doc/refman/5.1/en/server-system-variables.html#sysvar_ft_stopword_file ler este link, mas não sei ho OMC usar este ???

Foi útil?

Solução

Eu suponho que você está usando WampServer .

Clique no ícone da bandeja, selecione MySQL, em seguida, clique my.ini. O arquivo de configuração será aberto no bloco de notas. Vá para o final do arquivo e adicionar esta linha (após a linha de porta):

 ft_stopword_file=''

para palavras de parada com deficiência. Se você quiser usar personalizado arquivo stop-palavra, substituir essa linha com:

ft_stopword_file='path/to/stopword_file.txt'

(definir o caminho do arquivo stopword, é claro).

Depois de definir essa linha, salve o arquivo de configuração (Arquivo -> Salvar). Em seguida, clique no ícone da bandeja, selecione MySQL, então Service, em seguida, clique Restart Service.

Para garantir que sua configuração é feita corretamente, phpMyAdmin aberta no navegador, clique na guia Variables no topo, em seguida, encontrar ft stopword file e ver os valores que está definido para ele.

Outras dicas

Eu tenho o mesmo problema, eu não acho que você tem que recompilar qualquer coisa, eu li que você pode usar o console SET mysql ft_stopword_file = 'path / to / stopword_file.txt', que não deve exigir a reinicialização seu servidor. mas eu não, não acho que vai durar até a próxima reinicialização, então eu acho que eu vou tentar o arquivo de configuração, e ver se ele funciona

A lista de palavras de parada que os navios MySQL com (pelo menos para MyISAM) pode ser encontrado no fonte do MySQL, em myisam/ft_static.c.

Note também que estes são apenas os stopwords 'Inglês'. Presumivelmente, stopwords para outros idiomas são definidos em outro lugar ...

Você pode substituir ou desativar a lista de palavras de parada padrão usando a diretiva ft_stopword_file como apontado nos comentários. documentação completa aqui .

i Wass tendo mesmo problema. stopwords arquivo deve ser incluído na secção [mysqld] no arquivo my.ini.

[mysqld] ft_stopword_file = 'D: /stop.txt' então

mesa de reparação tablename funcionou para mim.

Você pode encontrar uma lista de palavras de parada para usar aqui: https://dev.mysql.com/doc/refman/5.6/en/fulltext-stopwords.html . Salvei esta lista para um arquivo e referenciado-lo do arquivo MySQL config (por exemplo ft_stopword_file='path/to/stopword_file.txt').

I removido "ele" e "nós" da lista de palavras de parada, porque eles significam "Tecnologia da Informação" e "Estados Unidos" em meu domínio do problema.

Infelizmente, cada vez que você alterar a lista de palavras de parada você tem que reiniciar MYSQL e reconstruir o índice de texto completo.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top