Установка mnoGoSearch с SQLite/MySQL/PostgreSQL/Firebird
Mark Silinio <silinio(at)mail.ru>
последнее обновление 16/04/05
Что это Бэрримор?
В данной заметке рассказывается про установку и настройку поикового
движка mnoGoSearch (http://www.mnogosearch.org) с разными базами
данных, - SQLite, MySQL(в т.ч. через ODBC), PostgreSQL, Firebird.
Изложены пошаговые действия для каждого из случаев. Здесь не
разбираются подробности использования вышеперечисленных баз, также
как и тонкости работы с поисковым движком. Предполагается что вы
работаете как пользователь root.
Использовал дистрибутив Gentoo Linux, и были установлены следующие
программы(вместе с зависимостями разумеется):
* SQLite 2.8.16 (http://www.sqlite.org/)
* MySQL 4.0.24 (http://www.mysql.com/)
* PostgreSQL 8.0.1 (http://www.postgresql.org/)
* Firebird 1.5.2 (http://firebird.sourceforge.net/)
* unixODBC-2.2.8 (http://www.unixodbc.org/)
* MyODBC-3.51.06 (http://www.mysql.com/products/myodbc/)
* mnoGoSearch 3.2.32 (http://www.mnogosearch.org/ установка из исходников)
mnoGoSearch на данный момент отсутствует в portage, так что бегом на
http://www.mnogosearch.org/download.html - Download sources,
скачиваем последнюю версию в tar.gz архиве...
Далее по курсу:
* Установка mnoGoSearch
* Настройка с SQLite
* Настройка с MySQL
* Настройка с MySQL через ODBC драйвер
* Настройка с PostgreSQL
* Настройка с Firebird
* Возможные проблемы
* Ссылки
* Благодарности
Установка mnoGoSearch
Распаковываем:
# tar zxf mnogosearch-3.2.32.tar.gz -C /usr/src
Конфигурируем:
# cd /usr/src/mnogosearch-3.2.32/
# ./configure
Ключи configure для разных БД:
--with-sqlite=/usr SQLite
--with-mysql MySQL
--with-pgsql PostgreSQL
--with-unixODBC unixODBC
--with-ibase=/opt/firebird Firebird
Помните что БД нужно устанавливать до mnoGoSearch, иначе mnoGoSearch
просто не сможет скомпилироваться с поддержкой нужной БД.
У меня, компиляция завершалась ошибкой при одновременном использовании
--with-unixODBC и --with-ibase=/opt/firebird.
Не удавалось также скомпилировать mnoGoSearch с SQLite 3.x.x
По умолчанию mnoGoSearch ставится в каталог /usr/local/mnogosearch
Компилируем-устанавливаем:
LocalCharset koi8-r # в какой кодировке хранить данные в БД
Server http://yourhost/ # чаво индексировать
про остальные параметры в indexer.conf см. соответствующую
документацию (или комментарии)
http://linux.yaroslavl.ru/docs/conf/mnogosearch/index-ru.html
Ну, почти всё готово, но до того как вы пропишите
/usr/local/mnogosearch/sbin/indexer в cron-задачах, следует добавить в
indexer.conf и search.htm строки соединения с БД(начинаются с
DBAddr)... которые даны в конце каждой следующей подглавы.
Создаём пользователя и базу данных для mnoGoSearch:
# /bin/su - postgres
$ createuser searcher -W
-Разрешить новому пользователю создавать базы данных? (y/n)
<отвечаем n>
-Разрешить новому пользователю создавать пользователей? (y/n)
<отвечаем n>
-Пароль:
<вводим пароль для этого пользователя>
$ createdb -O searcher searchdb
Создание необходимых mnoGoSearch таблиц в этой базе:
чуть советов безопастности
Позволяем Firebird слухать только locahost адрес,-
/etc/firebird/firebird.conf:
...
RemoteBindAddress = 127.0.0.1
Перезапускаем Firebird:
# /etc/init.d/firebird restart
Рекомендуется также сменить пароль по-умолчанию для SYSDBA:
# /opt/firebird/bin/changeDBAPassword.sh
Please enter current password for SYSDBA user: masterke
Please enter new password for SYSDBA user: <ПАРОЛЬ_SYSDBA>
если при запуске indexer'а выскакивает ошибка типа:
# /usr/local/mnogosearch/sbin/indexer
{sql.c:533} Query: SELECT rec_id, url FROM server WHERE rec_id='1807751754'
Log has not been opened
DB err: ERROR: permission denied for relation server
- /usr/local/mnogosearch/etc/indexer.conf:925: No appropriate storage support compiled
...то по-видимому таблицы в вашей базе данных были созданы
пользователем отличным от того который указан в DBAddr. Будте
внимательнее.
Если вы не можете найти файлы типа create.multi.sql, то сделайте
следующее:
# cd /usr/src/mnogosearch-3.2.32/create/
# make
Ссылки
* mnoGoSearch 3.2.15 Руководство на http://linux.yaroslavl.ru
http://linux.yaroslavl.ru/docs/conf/mnogosearch/index-ru.html
* SQLite Wiki
http://www.sqlite.ru/
* Статьи для разработчика Interbase/Firebird на http://www.ibase.ru
http://www.ibase.ru/develop.htm
* Справочное руководство по MySQL версии 5.0.0-alpha на http://linux.yaroslavl.ru
http://linux.yaroslavl.ru/docs/www/mysql/man/manual.ru_toc.html
* PostgreSQL документация на http://www.linuxshare.ru
http://www.linuxshare.ru/postgresql/docs.shtml
Благодарности
* Eldar'у с группы новостей kraft.os.linux.info
http://www.sama.ru/~nrg_ent/samaranews/group-kraft.os.linux.info.html
1384 Прочтений • [Установка mnoGoSearch с SQLite/MySQL/PostgreSQL/Firebird (search cgi web sql)] [08.05.2012] [Комментариев: 0]