ejabberd数据库本地化

2017-10-21  本文已影响0人  龙腾九天ly

我使用的ejabberd版本为16.09,操作系统是windows10,数据库为mysql5.7.17.

1 创建mysql的用户

   在mysql中创建名为“ejabberd”的用户,首先登陆mysql,cmd中使用命令“mysql–h localhost –u root -p”登陆mysql。

登陆成功后输入命令create user'ejabberd'@'localhost' identified by '111111'; 创建一个用户名为ejabberd,密码为111111的用户。(一定要带分号,密码可以随意)


2 创建ejabberd数据库
输入命令 create database ejabberd; 创建名为ejabberd的数据库。


3 给ejabberd用户授权
输入命令 grant all on ejabberd.* toejabberd@localhost identified by '111111';为ejabberd用户授予ejabberd数据库下所有表的全部权限。


4 使用navicat登录mysql的ejabberd用户
这里给出csdn上navicate破解版的下载链接
http://download.csdn.net/download/l631768226/10033027

5 将ejabberd的数据表导入到mysql的ejabberd数据库中

Ejabberd中数据表的建表语句在ejabberd安装目录下,如图所示。


使用navicat运行sql文件,创建需要使用的数据表。


6 修改ejabberd配置文件

   完成上述准备工作后,只需要修改ejabberd的配置文件ejabberd.yml的相关配置就可以将ejabberd的数据库本地化。
   修改333行到340行如图所示,设置MySQL数据库的数据库,用户名,密码和端口号等信息。

修改239行如图所示。这样修改后ejabberd将通过本地数据库验证用户



做了以上设置之后,还是会有一部分数据存储在ejabberd自己的数据库中,可以在文件中添加默认数据库的设置,如图所示

这个时候重启ejabberd服务器,如果想要登录管理页面是无法登录的,因为之前的管理员账号等都是存储在ejabberd内部的数据库中的,我们现在已经设置成从本地MySQL数据库中校验用户了,所以需要添加一个管理员用户,首先在MySQL的ejabberd库中的users表中添加一个用户数据。



这时候只需在users表中插入之前设置的管理员账号密码,就可以登录了。

注释配置文件471-473行,可以取消离线消息的数量限制


上一篇 下一篇

猜你喜欢

热点阅读