以前用过openfire做为服务器,但是openfire的集群支持不是很好,所以改用Ejabberd,由于它是用Erlang语言开发的,其并发率与分布式的功能都是很强悍的,在此我记录一下我的安装与配置过程。
1.安装就不用说了,到其官网下载安装包。我的系统是Mac OS, 所以我只说明在Mac OS上安装。下载安装包后,直接点击安装。安装后会在/Applications目录生成Ejabberd的目录,由于我下载的是Ejabberd-2.1.11,所以安装目录为:/Applications/ejabberd-2.1.11/
2.配置支持MySQL,打开/Applications/ejabberd-2.1.11/conf/ejabberd.cfg 并做如下修改
a. 注释
{auth_method,
internal}.
注释后为
%%{auth_method, internal}.
b. 这句取消注释
{auth_method, odbc}.
c. 创建数据库ejabberd
d.创建表 , 如果你的MySQL是5.5.3版本以前,那么编辑mysql.sql, 将SET table_type=InnoDB;改为SET default_storage_engine=InnoDB;
cd /Applications/ejabberd-2.1.11/lib/ejabberd-2.1.11/priv/sql
mysql -u root -p ejabberd
<
mysql.sql
d. 配置mySQL
%%
%%
MySQL
server:
%% {odbc_server, {mysql, "localhost", "ejabberd", "root", "MySqlPassword"}}.
e.配置模块,加一个_odbc
{mod_last_odbc, []}, {mod_offline_odbc, []}, {mod_privacy_odbc, []}, {mod_private_odbc, []}, {mod_pubsub_odbc, [ % requires mod_caps ... {mod_roster_odbc, []}, {mod_vcard_odbc, []},
3. 开启ejabberd,
cd /Applications/ejabberd-2.1.11/lib
./
start