Como redefinir palavras de parada em MYSQL?
-
18-09-2019 - |
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 ???
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.