美文网首页
ejabberd数据库本地化

ejabberd数据库本地化

作者: 龙腾九天ly | 来源:发表于2017-10-21 10:10 被阅读0次

    我使用的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行,可以取消离线消息的数量限制


    相关文章

      网友评论

          本文标题:ejabberd数据库本地化

          本文链接:https://www.haomeiwen.com/subject/xyfiuxtx.html