一、下载并安装openfire

1.到http://www.igniterealtime.org/downloads/index.jsp下载最新openfire for mac版

比如:Openfire 3.8.1,下载后的文件:openfire_3_8_1.dmg

2.点击安装,并执行默认操作

3.启动openfire服务

在系统偏好设置的其他里,点击openfire偏好

启动后,点击Open Admin Console按钮,自动在浏览器中打开本地web配置页面http://localhost:9090/setup/index.jsp

二、配置openfire服务器

1.设置语言,选中文

2.主机设置

设置主机的访问ip地址

注意:域不能是机器名,否则会如下错误:

HTTP ERROR: 500 INTERNAL_SERVER_ERROR

本地的域,要设置为127.0.0.1

3.数据库设置

如果要设置外部数据库(推荐,比如:MySQL),选择标准数据库连接

4.设置数据库连接

(1)数据库驱动选择:MySQL,前提是已安装MySQL(具体的安装方法可以参考上一篇:mac上安装MySQL

(2)JDBC驱动,默认不变

com.mysql.jdbc.Driver

(3)数据库URL:

形式如下:

jdbc:mysql://你的主机名:端口号/数据库名称

这里设置为

jdbc:mysql://localhost:3306/openfire

其中主机名[host-name]改为localhost,

其中数据库名称[database-name]改为openfire

解决数据库字符编码问题,可以在后面加

?useUnicode=true&characterEncoding=UTF-8&characterSetResults=UTF-8

最终的url形式是

jdbc:mysql://localhost:3306/openfire?useUnicode=true&characterEncoding=UTF-8&characterSetResults=UTF-8

注意:前提是已存在一个名为openfire的数据库,否则会报如下错误,连接配置不成功

The Openfire database schema does not appear to be installed. Follow the installation guide to fix this error.

前期的MySQL数据库准备工作如下:

<1>设置/usr/local/openfire文件夹的访问权限为可读写

方法1:在finder中前往文件夹/usr/local/,右键openfire文件夹,显示简介

点击如图右下角中的锁图标解锁,并设置权限为:可以读写

方法2:打开终端,输入如下命令

sudo chmod 777 /usr/local/openfire

其中777表示授权可读写权限,000表示无访问权限

<2>在终端中,登陆MySQL

mysql -u root -p

然后输入数据库的root密码

<3>创建数据库openfire

create database openfire;

<4>导入openfire资源文件夹 resources/database下的数据表

use openfire;
source /usr/local/openfire/resources/database/openfire_mysql.sql

在终端出现一排导入过程

<5>刷新权限

flush privileges;

<6>退出MySQL

exit

(4)用户名和密码

这里的用户名密码,是访问MySQL数据库时使用的帐号:root,和安装MySQL设置的root密码

5.特性设置

如果不打算使用LDAP,则保持默认设置

6.设置openfire服务器管理员的帐号和密码

可以随便填写一个管理员邮箱,输入要设置的密码

完成注册

7.登陆管理控制台

默认的管理员帐号是“admin”,默认管理员密码“admin”,如果上面设置了新密码,则管理员密码是新密码

如果想去掉默认的admin帐号,并自定义,需要如下操作

(1)在终端中,登陆具体的数据库(openfire)

mysql -u root -p openfire

然后输入数据库的root密码

(2)删除表“ofUser”中的admin帐户

delete from ofUser where username='admin';

(3)创建自定义管理员(用户名:xiaodao,密码:123)

INSERT INTO ofUser (username, plainPassword, encryptedPassword, name, email, creationDate, modificationDate) VALUES ('xiaodao','123','123','Administrator','xiaodao@sunyard.com','0','0');

注意:如果重设了用户名,必须重启openfire服务器

8.后台控制界面

三、卸载openfire

1.停止服务

在系统偏好设置的其他里,打开openfire偏好设置

点击Stop Openfire按钮,停止服务

2.删除文件

打开终端,输入以下命令

sudo rm -rf /Library/PreferencePanes/Openfire.prefPane
sudo rm -rf /usr/local/openfire
sudo rm -rf /Library/LaunchDaemons/org.jivesoftware.openfire.plist

其中第一条命令之后,需要输入本机管理员密码

IOS即时通讯XMPP搭建openfire服务器的更多相关文章

  1. IOS即时通讯XMPP搭建openfire服务器 分类: ios技术 2015-03-07 11:30 53人阅读 评论(0) 收藏

    一.下载并安装openfire 1.到http://www.igniterealtime.org/downloads/index.jsp下载最新openfire for mac版 比如:Openfir ...

  2. ios 即时通讯 xmpp

    [iPhone高级] 基于XMPP的IOS聊天客户端程序(XMPP服务器架构) http://blog.csdn.NET/kangx6/article/details/7739828 [iPhone高 ...

  3. (转)基于即时通信和LBS技术的位置感知服务(三):搭建Openfire服务器+测试2款IM客户端

    主要包含4个章节: 1. Java 领域的即时通信的解决方案 2. 搭建 Openfire 服务器 3. 使用客户端测试我们搭建的 Openfire 服务器 4. Smack 和 ASmack 一.J ...

  4. iOS 即时通讯 + 仿微信聊天框架 + 源码

    这些你造吗? 即时通讯(IM),在IOS这片江湖里面已经算是一个老者了,我这小旋风也是在很早以前巡山的时候,就知道有即时通讯这个妖怪,以前也多多少少接触过一些,在造APP的时候用过,哎呀,说着说着就感 ...

  5. iOS 即时通讯,从入门到 “放弃”?

    原文链接:http://www.jianshu.com/p/2dbb360886a8 本文会用实例的方式,将 iOS 各种 IM 的方案都简单的实现一遍.并且提供一些选型.实现细节以及优化的建议. — ...

  6. iOS即时通讯之CocoaAsyncSocket源码解析三

    原文 前言 本文实例Github地址:即时通讯的数据粘包.断包处理实例. 本文旨以实例的方式,使用CocoaAsyncSocket这个框架进行数据封包和拆包.来解决频繁的数据发送下,导致的数据粘包.以 ...

  7. iOS即时通讯之CocoaAsyncSocket源码解析五

    接上篇:iOS即时通讯之CocoaAsyncSocket源码解析四         原文 前言: 本文为CocoaAsyncSocket Read篇终,将重点涉及该框架是如何利用缓冲区对数据进行读取. ...

  8. iOS即时通讯之CocoaAsyncSocket源码解析四

    原文 前言: 本文为CocoaAsyncSocket源码系列中第二篇:Read篇,将重点涉及该框架是如何利用缓冲区对数据进行读取.以及各种情况下的数据包处理,其中还包括普通的.和基于TLS的不同读取操 ...

  9. iOS即时通讯之CocoaAsyncSocket源码解析二

    原文 前言 本文承接上文:iOS即时通讯之CocoaAsyncSocket源码解析一 上文我们提到了GCDAsyncSocket的初始化,以及最终connect之前的准备工作,包括一些错误检查:本机地 ...

随机推荐

  1. Python基础学习3---数据结构

    数据结构 数据结构基本上就是---他们是可以处理数据的结构或者说他们是用来存储一组相关数据的. 在python中有三种内建的数据结构-----列表.元组和字典 列表(list) 列表就像是我们要去超市 ...

  2. Git学习 -- 管理修改

    git关注的是修改,而不是文件 commit只会提交add到暂存区的修改 撤销修改 已修改但没有add到暂存区 git checkout -- <file>     #撤销工作区中的修改 ...

  3. ormlite 删除操作

    ormlite删除操作 DeleteBuilder<TransferDetailDtl, Integer> deleteBuilder = mRawDao.deleteBuilder(); ...

  4. Maven常用插件配置和使用

    主要介绍Maven的几个常见第三方插件(cobertura.findbugs.source.assembly.插件开发)配置和使用,接Maven介绍 maven本质上是一个插件框架,它的所有工作都交给 ...

  5. MongoDB如何设置权限(类似关系型数据库的用户名和密码)

    MongoDB 缺省是没有设置鉴权的,业界大部分使用 MongoDB 的项目也没有设置访问权限.这就意味着只要知道 MongoDB 服务器的端口,任何能访问到这台服务器的人都可以查询和操作 Mongo ...

  6. PAT1004

    A family hierarchy is usually presented by a pedigree tree. 一个家族的层次结构经常用一个血缘树来呈现. Your job is to cou ...

  7. spring MVC之返回JSON数据(Spring3.0 MVC)

    方式一:使用ModelAndView的contentType是"application/json" 方式二:返回String的            contentType是&qu ...

  8. Struts2语法--Ognl

    OGNL: Object Graph Navigation Language index.jsp: <body> 访问属性 <a href="<%=contextPa ...

  9. FCKeditor 2.6.6在ASP中的安装及配置方法分享--ZZ转载自网络

    FCKeditor目前的最新版本是2.6.6,在网上搜索此版本的配置方法,发现很少有asp的配置方法,以下就把自己的一些配置经验分享给有需要的你.   首先从FCKEditor官方下载最新的版本脚本之 ...

  10. oracle查询每个表的占用空间

    Select Segment_Name,Sum(bytes)/1024/1024 From User_Extents Group By Segment_Name order by Sum(bytes) ...