Comment redémarrer avec élégance le démon de recherche Sphinx après réindexation
J'ai réindexée mon Sphinx de recherche avec /usr/local/sphinx/bin/indexer --all --rotate
et renommé mon index d'origine des fichiers de sortie à autre chose. Il suffit de changer l'indice argument passé à $sphinx->Query($query, $index);
ne retourne pas de résultat.
Je soupçonne le démon ne connais pas les nouveaux fichiers d'index existent. Alors, j'ai couru
sudo /usr/local/sphinx/bin/searchd
de nouveau pour tenter de le redémarrer. Mais il a jeté
FATAL: failed to lock pid file '/usr/local/sphinx/var/log/searchd.pid': Resource temporarily unavailable (searchd already running?)
J'ai dû kill
les 2 processus du démon de recherche et commencer à nouveau pour s'emparer de la de nouveaux fichiers d'index. Est-il une manière élégante de le redémarrer?
source d'informationauteur David Xia
Vous devez vous connecter pour publier un commentaire.
Je sais que c'est une réponse tardive, mais seulement si vous savez, "redémarrer" Sphinx, vous devez arrêter puis démarrer (comme dans deux processus distincts).
Pour l'arrêter, appel
searchd --stop
ensuite seulement commencer à nouveau avecsearchd
.Vous aurez besoin de demander de l'indexer sur le nouvel indice pour le créer et ensuite --tourner à mettre à jour.
Il serait donc quelque chose comme
Et puis quand vous voulez juste de mettre à jour votre index
Cela va créer une copie temporaire de chaque indice et de remplacer les anciennes lorsque vous avez terminé.
Pour plus d'info sur ce qui se passe réellement voir http://sphinxsearch.com/docs/manual-0.9.9.html#ref-indexer
Sur l'autre erreur de votre arriver
Ne
si elle ne retourne pas de résultat, puis supprimer le fichier /usr/local/sphinx/var/log/searchd.pid
et commencer à searchd nouveau
Il semble qu'il y ait un problème avec l'
searchd --stop
échec d'une commande pour arrêter le démon sur certains cas de Sphinx.Essayer:
service sphinxsearch stop
Voir: https://bugs.launchpad.net/ubuntu/+source/sphinxsearch/+bug/990395
service searchd start
a fonctionné pour moi sur CentOS