XMPP介紹一:服務器及數據庫搭建

本人錄製技術視頻地址:https://edu.csdn.net/lecturer/1899 歡迎觀看。

最近一段時間一直在開發類似微博的項目,好久沒有更新博客了。接下來幾節,我將爲大家介紹XMPP相關的內容。在介紹之前,先將後臺搭建的工作做起來。

我這裏使用的服務器是 openfire,下載地址:http://www.igniterealtime.org/downloads/

數據庫是mysql, 下載地址:http://www.mysql.com/downloads/

關於怎樣下載他們,網上有很多說明教程,這裏我就不多做解釋了。我只說明他們的作用,及配置過程中遇到的"坑"。


openfire是一個基於java jdk的服務器, 類似於.Net中的IIS。採用Java開發,開源的實時協作(RTC)服務器基於XMPP(Jabber)協議。Openfire安裝和使用都非常簡單,並利用Web進行管理。單臺服務器可支持上萬併發用戶。

使用注意事項:

1. 安裝完成openfire之後,我們需要將對應的sql腳本文件拷貝一份。

在終端敲入以下命令:open /usr/local/openfire/resources/database, 打開openfire自帶的sql腳本(過會會在mysql數據庫中執行這個腳本語句,用來創建相應的操作所需要的表),這裏我們選擇mysql。



2. 安裝完openfire後,它並不會出現在 "應用程序" 列表中,我們可以在 "系統偏好設置" 中看到它的快捷方式。



3. 啓動openfire的時候,有可能出現永遠啓動不了的情況,我們可以使用以下的命令嘗試去解決它。

a:sudo su

b:cd /usr/local/openfire/bin

c:export JAVA_HOME=`/usr/libexec/java_home`

d:echo $JAVA_HOME /Library/Java/JavaVirtualMachines/jdk1.8.0_40.jdk/Contents/Home

e: cd /usr/local/openfire/bin

f: ./openfire.sh

注: 步奏d中的java jdk的版本,如果不是很清楚的話,可以事先使用命令行(java -version)查看。

執行過程中也許會提示 "Permission Denied"。 我們可以接着使用命令(chmod a+x ./openfire.sh)來提升用戶權限。


4. 忘記了openfire管理控制器的密碼處理辦法。


因爲這裏操作的openfire後臺操作是連接的mysql,所以登陸相關的信息也保存在mysql的數據庫中,瞭解到這一點,我們就可以手動的修改相關表的數據記錄,來爲自己分配賬戶等信息。

由於這裏的操作涉及到mysql的操作,所以我會在後續介紹mysql的時候予以說明。


5. 安裝完mysql之後,舊版(默認沒有密碼),新版(會給你一個默認密碼)。但不管怎樣,當你打開mysql的時候,都需要重置密碼。一開始我是嘗試使用命令行來進行重置工作的,但是一直失敗!!! 所以後來還是使用可視化工具解決的(方便又快捷)。這裏推薦MySQLWorkbench。


用它可以方便快捷的進行mysql的控制管理工作。


6. 導入第一步保存的sql腳本,並且在mysql中執行。這樣就可以生成即時通訊所需要的相關表了。



7. 現在我們來解決第4步,忘記密碼的工作。由於自己有足夠的管理控制權限,所以我們在管理控制平臺中忘記密碼,完全沒有關係,我們可以直接在數據庫的表中查看用戶的相關記錄。


或者直接添加自己想要的用戶信息

INSERT INTO ofUser (username, plainPassword, name, email, creationDate, modificationDate) VALUES ('admin', 'admin', 'Administrator', '[email protected]', '0', '0');

以上總結,就是本人在配置openfire及mysql過程中遇到的一些問題的分析總結。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章