Настроил сервер ejabberd 2.0.5. Все работает. По некоторым причинам, сейчас необходимо перевести его на работу с mysql.
Собрал erlang с поддержкой odbc, не ругнулся. (в качестве odbc - unixODBC).
Далее сам ejabberd с поддержкой odbc.
Кинул драйвера mysql в beans.
Теперь при запуске в логах следующее:
Код: Выделить всё
"
=ERROR REPORT==== 2009-07-23 18:23:11 ===
E(<0.202.0>:ejabberd_odbc:351) : mysql_recv: Failed connecting to "localhost":3306 : {error,
econnrefused}
=ERROR REPORT==== 2009-07-23 18:23:11 ===
E(<0.201.0>:ejabberd_odbc:351) : mysql_conn: Failed connecting to "localhost":3306 : {error,
"connect failed : {error,econnrefused}"}
=ERROR REPORT==== 2009-07-23 18:23:11 ===
E(<0.200.0>:ejabberd_odbc:313) : MySQL connection failed: connect_failed
Waiting 30 seconds before retrying...
"
БД ejabberd есть, таблицы созданы, через консоль mysql заходит под ejabberd.
Смотрю в логи mysql, коннектов ejabber не было. Как будто ejabber, не видит, что сервер работает.
Много инфы перерыл (кто не ту БД укажет, кто дрова забудет, кто без поддержки ODBC соберет), но данной проблемы и ее решения не нашел.
Соответственно в конфиге:
Код: Выделить всё
%%{auth_method, internal}.
{auth_method, odbc}.
{odbc_server, {mysql, "localhost", "ejabberd", "ejabberd", "xxx"}}.
{mod_last_odbc, []},
{mod_offline_odbc, []},
{mod_roster_odbc, []},
{mod_vcard_odbc, []},