2012-05-31 107 views
0

我擁有ejabberd所需的所有mysql .beam文件。我通過apt安裝了ejabberd。 但是當我嘗試那些.beam文件複製到/usr/lib/ebin目錄並運行ejabberd迴應ejabberd.log如下:在沒有重新編譯的情況下使用mysql驅動程序和ejabberd

= INFO報告==== 2012-05-31 9時46分02秒= == 應用:ejabberd 退出:{bad_return,{{ejabberd_app,啓動,[正常,[]},{ '退出',database_module_missing}}} 類型:臨時

我是什麼做錯了?

添加mysql驅動程序到ejabberd apt安裝的正確方法是什麼?

+0

光束文件的來源? –

回答

2

BEAM文件。

作爲一個方面說明:你確定這些BEAM文件真的好嗎? Erlang對於二進制可移植性不太寬鬆,所以總是建議使用與在目標機器上運行ejabberd相同的Erlang版本來重新編譯必要的代碼。

2

檢查哪一個觸發這個錯誤是直接的。它檢查模塊的硬編碼列表是否在Erlang虛擬機路徑中。確保odbc文件存在,並且他們有適當的文件所有權。需要的文件:使用ejabberd are located in a different place —嘗試把你的文件有

check_database_module(odbc) -> 
    check_modules(odbc, [odbc, odbc_app, odbc_sup, ejabberd_odbc, ejabberd_odbc_sup, odbc_queries]); 
check_database_module(mysql) -> 
    check_modules(mysql, [mysql, mysql_auth, mysql_conn, mysql_recv]); 
check_database_module(pgsql) -> 
    check_modules(pgsql, [pgsql, pgsql_proto, pgsql_tcp, pgsql_util]). 
相關問題