ejabberd数据库本地化

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


最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1.MySQL是一个关系型数据库管理系统,由瑞典MySQL AB 公司开发,目前属于 Oracle 旗下产品。My...
    黄花菜已凉阅读 4,602评论 3 60
  • 需要原文的可以留下邮箱我给你发,这里的文章少了很多图,懒得网上粘啦 1数据库基础 1.1数据库定义 1)数据库(D...
    极简纯粹_阅读 7,548评论 0 46
  • MySQL 数据库常用命令 1、MySQL常用命令 create database name; 创建数据库 use...
    55lover阅读 4,832评论 1 57
  • 今天是小长假的第一天,也是一年一度的除夕夜。一天的时间里时而见缝插针的阅读书籍,时而又被家里节日的气氛感染的玩...
    4b40c2d9081e阅读 128评论 0 0
  • 为自己制定的读书计划,有压力下,终将厚厚的一本羊皮卷啃完。虽不在预期时间内完成,但至少这个预期时间给我压力,让我完...
    无敌罗小美阅读 276评论 0 1