Ubuntu 17.04下安装ejabberd 17.04 及配置mysql

  • Post author:
  • Post category:mysql


Ubuntu 17.04下安装ejabberd 17.04 及配置mysql

最近在弄im即时通讯,项目用到了ejabberd,特此记录。

1.官网下载最新版的

ejabberd-17.04

,也可以命令行中执行(这里我用的是现成的二进制包,也可以自己编译安装)

wget https://www.process-one.net/downloads/downloads-action.php?file=/ejabberd/17.04/ejabberd-17.04-linux-x86_64-installer.run -O ejabberd-17.04-linux-x86_64-installer.run

2.给二进制包添加可执行权限

sudo chmod +x ejabberd-17.04-linux-x86_64-installer.run

3.执行安装包

./ejabberd-17.04-linux-x86_64-installer.run

注意:

1.安装界面语言选择根据自己喜好即可

2.域名设置以自己喜好为主,如果不使用ip,记得配hosts

3.选择是否设置集群时,选择否

4.安装完成之后,就可以启动ejabberd服务器啦。

/opt/ejabberd-17.04/bin/ejabberdctl start

注意:ubuntu下启动ejabberd时会报一个无害提示:

bash: /opt/ejabberd-17.04/lib/linux-x86_64/libtinfo.so.5: no version information available (required by bash)

官网论坛说是没事,不影响使用。

5.注册一个管理员帐号:

/opt/ejabberd-17.04/bin/ejabberdctl register admin local.im.net 123456

6.访问后台管理页面:


http://local.im.net:5280/admin

即可以登录后台管理页面

7.如果需要接入mysql的话,请创建mysql表并修改配置文件中的默认访问验证模式

7.1 先创建一个ejabberd数据库:

mysql -uroot -p ...
>create database ejabberd;
>use ejabberd;
>source /opt/ejabberd-17.04/lib/ejabberd-17.04/priv/sql/mysql.sql

可以授权一个ejabberd用户访问该库

grant all privileges on ejabberd.* to ejabberd@'localhost' identified by 'ejabberd';
flush priviliges;

7.2修改配置文件

vi /opt/ejabberd-17.04/conf/ejabberd.yml

注释line 286行: ##auth_method: internal

打开line 307行:auth_method: sql

打开line 378-387:

378 ## MySQL server:
379 ##
380 sql_type: mysql
381 sql_server: "localhost"
382 sql_database: "ejabberd"
383 sql_username: "ejabberd"
384 sql_password: "ejabberd"
385 ##
386 ## If you want to specify the port:
387 sql_port: 3306

进入line 697添加:

697   mod_mam:
698      default: always
699      db_type: sql

7.3 重启ejabberd

/opt/ejabberd-17.04/bin/ejabberdctl stop

/opt/ejabberd-17.04/bin/ejabberdctl start

7.4 授权注册一个mysql里的管理员账户

/opt/ejabberd-17.04/bin/ejabberdctl register admin local.im.net 123456

即可使用新的帐号登录后台,进行管理。

客户端自己可以任意选用,比如converse.js,strophe.js等等。

end



版权声明:本文为qq_30164225原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。