ejabber 切换数据库

本文档介绍了如何将ejabberd聊天服务器的数据库从mnesia切换到mysql。首先,注释掉mnesia的相关配置,然后设置odbc_server为mysql的连接参数。接着,确保安装并加载了ejabberd所需的mysql相关Erlang模块。在遇到模块未安装的错误后,从指定源下载并编译mysql模块,将其放入ejabberd的ebin目录,最后运行ejabberdctl live以验证配置成功。

 


以前用的是 mnesia 数据库,现在想改成 mysql 



a. 把internal注释

{auth_method, internal}.
注释后为
%%{auth_method, internal}.
b. 这句取消注释
{auth_method, odbc}.
c. 创建数据库ejabberd

d. 配置mySQL
  1. %%  
  2. %% MySQL server:  
  3. %%  
  4. {odbc_server, {mysql, "localhost", "ejabberd", "root", "MySqlPassword"}}. 
e.创建数据库,导入ODBC下mysq.sql文件

f.配置模块,加一个_odbc
  1. {mod_last_odbc,     []},  
  2. {mod_offline_odbc,  []},  
  3. {mod_privacy_odbc,  []},  
  4. {mod_private_odbc,  []},  
  5. {mod_pubsub_odbc,   requires mod_caps ...  
  6. {mod_roster_odbc,   []},  
  7. {mod_vcard_odbc,    []}, 


cd /etc/ejabberd/  ejabberdctl  live


问题解决:
=ERROR REPORT==== 2014-01-1018:20:09 === C(<0.37.0>:ejabberd_check:63) : ejabberd isconfigured to use 'mysql', but the following Erlang modules are notinstalled: '[mysql, mysql_auth, mysql_conn, mysql_recv]'– 


有这么些模块没有安装


http://svn.process-one.net/ejabberd-modules

下载 mysql 模块,编译后,拷贝到  /lib/ejabberd/ebin


cd /etc/ejabberd/  ejabberdctl  live 就没有问题了



评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值