punchos
Новичок
Помогите Сфинкса построить
решил поиск на сайте через cphinx сделать и проблемы начались уже на самом начале...
вот собственно сама проблема...
создал базу тестовую
CREATE DATABASE `sphinx` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
в ней табличку (взятую из какого то примера)
CREATE TABLE Assembly (
id int(10) unsigned NOT NULL auto_increment,
label varchar(7) NOT NULL,
description varchar(128) NOT NULL,
PRIMARY KEY (id)
) ENGINE=InnoDB;
INSERT INTO Assembly
(`id`, `label`, `description`)
VALUES
(1,'5-00','Seats'),
(2,'4-00','Electrical'),
(3,'3-00','Glasses'),
(4,'2-00','Frame'),
(5,'1-00','Engine'),
(7,'101-00','Accessories');
далее настраиваю конфиг сфинкса
source catalog
{
type = mysql
sql_host = localhost
sql_user = *******
sql_pass = *******
sql_db = sphinx
sql_sock = *******
sql_port = 3306
sql_query_pre = SET NAMES utf8
sql_query = SELECT id,id as idt,label,description FROM Assembly ;
sql_attr_uint = description
sql_attr_uint = idt
}
index catalog
{
source = catalog
path = ******
docinfo = extern
mlock = 0
morphology = stem_enru, soundex, metaphone
charset_type = utf-8
}
запускаю индексатор
sudo /usr/local/bin/indexer --config /usr/local/etc/sphinx.conf --all
на выходе
Sphinx 0.9.8.1-release (r1533)
Copyright (c) 2001-2008, Andrew Aksyonoff
using config file '/usr/local/etc/sphinx.conf'...
indexing index 'catalog'...
collected 6 docs, 0.0 MB
sorted 0.0 Mhits, 100.0% done
total 6 docs, 26 bytes
total 0.010 sec, 2600.00 bytes/sec, 600.00 docs/sec
потом пытаюсь проверить индекс
/usr/local/bin/search --config /usr/local/etc/sphinx.conf Engin
Sphinx 0.9.8.1-release (r1533)
Copyright (c) 2001-2008, Andrew Aksyonoff
using config file '/usr/local/etc/sphinx.conf'...
index 'catalog': query 'Engin ': returned 0 matches of 0 total in 0.000 sec
words:
1. 'e525': 0 documents, 0 hits
на выходе тишина...при том что странно в words он ищет почему то по 'e525' думал может кодировки....ну так везде utf8... специально проверил...и в конфиге utf8 везде указано, на сколько я понимаю....
а вот так находит
/usr/local/bin/search --config /usr/local/etc/sphinx.conf 4
Sphinx 0.9.8.1-release (r1533)
Copyright (c) 2001-2008, Andrew Aksyonoff
using config file '/usr/local/etc/sphinx.conf'...
index 'catalog': query '4 ': returned 1 matches of 1 total in 0.000 sec
displaying matches:
1. document=2, weight=1, idt=2, description=0
words:
1. '4': 1 documents, 1 hits
устал с эти бороться...ни каких мыслей...спасите
-~{}~ 11.09.09 18:00:
все разобрался...всего лишь нужно было внимательно документашку перечитать и не делать идиотских поступков наподобии того что поле по которому полнотекстовой поиск ведется как атрибут объявлять...
и все же...спасибо что выслушали
решил поиск на сайте через cphinx сделать и проблемы начались уже на самом начале...
вот собственно сама проблема...
создал базу тестовую
CREATE DATABASE `sphinx` DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
в ней табличку (взятую из какого то примера)
CREATE TABLE Assembly (
id int(10) unsigned NOT NULL auto_increment,
label varchar(7) NOT NULL,
description varchar(128) NOT NULL,
PRIMARY KEY (id)
) ENGINE=InnoDB;
INSERT INTO Assembly
(`id`, `label`, `description`)
VALUES
(1,'5-00','Seats'),
(2,'4-00','Electrical'),
(3,'3-00','Glasses'),
(4,'2-00','Frame'),
(5,'1-00','Engine'),
(7,'101-00','Accessories');
далее настраиваю конфиг сфинкса
source catalog
{
type = mysql
sql_host = localhost
sql_user = *******
sql_pass = *******
sql_db = sphinx
sql_sock = *******
sql_port = 3306
sql_query_pre = SET NAMES utf8
sql_query = SELECT id,id as idt,label,description FROM Assembly ;
sql_attr_uint = description
sql_attr_uint = idt
}
index catalog
{
source = catalog
path = ******
docinfo = extern
mlock = 0
morphology = stem_enru, soundex, metaphone
charset_type = utf-8
}
запускаю индексатор
sudo /usr/local/bin/indexer --config /usr/local/etc/sphinx.conf --all
на выходе
Sphinx 0.9.8.1-release (r1533)
Copyright (c) 2001-2008, Andrew Aksyonoff
using config file '/usr/local/etc/sphinx.conf'...
indexing index 'catalog'...
collected 6 docs, 0.0 MB
sorted 0.0 Mhits, 100.0% done
total 6 docs, 26 bytes
total 0.010 sec, 2600.00 bytes/sec, 600.00 docs/sec
потом пытаюсь проверить индекс
/usr/local/bin/search --config /usr/local/etc/sphinx.conf Engin
Sphinx 0.9.8.1-release (r1533)
Copyright (c) 2001-2008, Andrew Aksyonoff
using config file '/usr/local/etc/sphinx.conf'...
index 'catalog': query 'Engin ': returned 0 matches of 0 total in 0.000 sec
words:
1. 'e525': 0 documents, 0 hits
на выходе тишина...при том что странно в words он ищет почему то по 'e525' думал может кодировки....ну так везде utf8... специально проверил...и в конфиге utf8 везде указано, на сколько я понимаю....
а вот так находит
/usr/local/bin/search --config /usr/local/etc/sphinx.conf 4
Sphinx 0.9.8.1-release (r1533)
Copyright (c) 2001-2008, Andrew Aksyonoff
using config file '/usr/local/etc/sphinx.conf'...
index 'catalog': query '4 ': returned 1 matches of 1 total in 0.000 sec
displaying matches:
1. document=2, weight=1, idt=2, description=0
words:
1. '4': 1 documents, 1 hits
устал с эти бороться...ни каких мыслей...спасите
-~{}~ 11.09.09 18:00:
все разобрался...всего лишь нужно было внимательно документашку перечитать и не делать идиотских поступков наподобии того что поле по которому полнотекстовой поиск ведется как атрибут объявлять...
и все же...спасибо что выслушали