Ejabberd c поддержкой mysql и postgresql

Для того, чтобы все заработало — надо:
1) собрать сам ejabberd с поддержкой ODBC
2) собрать из ejabberd-modules (качаются отдельно) модули mysql и pgsql
если этого не сделать — для Postgres будет писать что ошибка выполнения запроса.

I(<0.267.0>:ejabberd_odbc:226) : pgsql connection failed:
** Reason: {{badmatch,{ok,[{«SELECT 366»,
[{«oid»,text,65534,26,4,-1,1247},

А для mysql будет писать:

** Reason for termination =
** {‘module could not be loaded’,
[{mysql_conn,start,
[«localhost»,3306,»login»,»password»,»ejabberd»,
#Fun]},
{ejabberd_odbc,mysql_connect,5},
{ejabberd_odbc,connecting,2},
{p1_fsm,handle_msg,10},
{proc_lib,init_p_do_apply,3}]}

3) из папки odbc в исходниках создать соответствующим скриптом структуру базы
4) у модулей добавляем _odbc
mod_last на mod_last_odbc
mod_offline на mod_offline_odbc
mod_privacy на mod_privacy_odbc
mod_private на mod_private_odbc
mod_roster на mod_roster_odbc
mod_vcard на mod_vcard_odbc
mod_pubsub на mod_pubsub_odbc
5) в модуле mod_pubsub_odbc названия плагинов тоже меняем на «flat_obdc», «hometree_odbc», «pep_odbc»
Иначе будет показывать ошибки:

E(<0.485.0>:mod_pubsub_odbc:3624) : transaction return internal error:
{aborted,
{undef,
[{node_hometree,

E(<0.485.0>:mod_pubsub_odbc:3624) : transaction return internal error:
{aborted,
{undef,
[{node_flat,

E(<0.485.0>:mod_pubsub_odbc:3624) : transaction return internal error:
{aborted,
{undef,
[{node_pep,

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *