I followed the standard procedures and successfully able to use Mysql with ejabberd.(2.1.5). I am able to see roster data, etc all the supported data in the Mysql databases.However, I have not been able to populate the user account data field. I had tried creating user account through XMPP client (pidgin) or created new user accounts using the web interface. However, all the new users data goes into Mnesia.
The support pages seems to give an impression that once the auth_method is odbc - the user accounts should go into mysql database.
Is it a configuration issue or is it that Ejabberd user account will always be in Mnesia database?
regards,
Anil
anil_singhal wrote: once the
once the auth_method is odbc - the user accounts should go into mysql database.
Right, when you disable internal, and enable this:
{auth_method, odbc}.
The auth information (username, password) should be stored in the ODBC database that you have configured, not in the internal Mnesia.
Maybe you have some conflicting options in your ejabberd.cfg If you find no clue, you can paste all your file here, or inhttp://paste.jabbim.cz/
failed because of conflicting entries
HI Badlop,
Thanks, it helped. I realised that while I had opted auth_method odbc initially,(global) I later used auth_method as "internal" in my host_config statement. By changing it to : odbc as below, it worked.
{host_config, "localhost", [{auth_method, [odbc, anonymous]},
Does ejabberd use Mnesia when using an external database?
Excuse me for my newbie question. When you configure an external database like MySQL, does ejabberd still use Mnesia to store some data?. If yes, which data goes to Mnesia and which to MySQL?. Thanks in advance.
Iván
Only some
Only some tables go to the Mnesia, others to ODBC, depending on what modules you use.