Openfire服务器在数据库连接时候过不去了呢?

Openfire服务器在数据库连接时候过不去了呢?

提示好象是连不上数据库,信息如下

"A connection to the database could not be made. View the error message by opening the "/logs/error.log" log file, then go back to fix the problem."

错误日志内容如下:

2007.10.26 15:57:45 [org.jivesoftware.database.ConnectionPool.<init>(ConnectionPool.java:111)] Failed to create new connections on startup. Attempt 2 of 3
java.sql.SQLException: null,  message from server: "#HY000Host 'work.linux.com' is not allowed to connect to this MySQL server"
at com.mysql.jdbc.MysqlIO.doHandshake(MysqlIO.java:1018)
at com.mysql.jdbc.Connection.createNewIO(Connection.java:2568)
at com.mysql.jdbc.Connection.<init>(Connection.java:1485)
at com.mysql.jdbc.NonRegisteringDriver.connect(NonRegisteringDriver.java:266)
at java.sql.DriverManager.getConnection(DriverManager.java:525)


2007.10.26 15:57:55 [org.jivesoftware.database.DefaultConnectionProvider.getConnection(DefaultConnectionProvider.java:68)] Warning: DbConnectionDefaultPool.getConnection() was called before the internal pool has been initialized.
2007.10.26 15:57:55 [org.jivesoftware.database.DbConnectionManager.getConnection(DbConnectionManager.java:95)] WARNING: ConnectionManager.getConnection() failed to obtain a connection.


等等吧,太多了,请斑竹帮忙看看!      
感觉像是服务器没有开。      
数据库和相关的环境都开了啊      
我看重点是这一句:#HY000Host 'work.linux.com' is not allowed to connect to this MySQL server

你的MySQL设置了禁止这台机器连接吗?      
数据库链接不上可能有两个原因:
1、登录验证问题
2、数据库版本太低

试着从这两个方面去检查一下。      
服务器:OpenFire 3.3.2

客户端:Spark 2.5.6(没有中文界面,不过可以从网络上面下载界面汉化包)

上面的软件都可以从http://www.igniterealtime.org/projects/index.jsp下载。

一个OpenFire的介绍:Openfire(原来的Wildfire)是一个跨平台,采用Java开发,开源的实时协作(RTC)服务器基于XMPP(Jabber)协议。Openfire安装和使用都非常简单,并利用Web进行管理。单台服务器可支持上万并发用户。

由于Openfire需要Java平台,另外OpenFire虽然自带一个数据库,但是最好是使用Mysql。

安装Java平台

sudo apt-get install sun-java6-sdk

安装Mysql

sudo apt-get install mysql-server

上面的安装语句纯属记忆,不知道正确与否。当然可以从新立得里面安装。

下载openfire

wget http://www.igniterealtime.org/do ... enfire_3_3_2.tar.gz

现在解压到一个目录

tar xzvf targ.gz文件

得到一个OpenFire目录

现在需要建立Mysql数据库。

mysqladmin create openfire

然后打开

./openfire/resources/database/openfire_mysql.sql

在头部添加

use openfire;

然后建立数据库

mysql -u root < openfire_mysql.sql

现在把openfire目录移动到/etc

sudo mv openfire /etc

执行:

sudo ./etc/openfire/bin/openfire start

Openfire会开始后台执行。

打开http://localhost:9090,进行Web设置。

选择界面语言简体中文。

配置数据库连接方式为Mysql,配置数据库连接字符串为:java://msyql/lcoalhost:3030/openfire

随后数据库配置完成。

这样就可以了。这里的界面都是中文的,非常容易。

至此,服务器端配置完成。

现在开始安装客户端Spark,由于Spark和OpenFire都是一个公司的产品,所以兼容性非常的好。现在安装Spark(需要下载自带JRE的那一个)。

然后打开Spark的目录,把汉化文件拷贝到/lib/spark.jar里面。注意这是一个Jar文件,所以可以用WinRAR打开,添加到它的i18n目录里面就可以了。

安装客户端完毕,OK登录。



开始即时通讯之旅。

OpenFire是现在Jabber协议实现程度最好的一个,达到97%。Spark也非常好,能够非常方便的传输文件,还截取屏幕进行传输。

感谢伟大的开源:Linux、Java、OpenFire、Spark,感谢这些软件的编写者,给我们提供这么一个伟大而且完全免费自由的软件组合。      
感谢斑竹的提醒!我的问题解决了,是数据库访问权限的问题      
感谢斑竹的提醒!我的问题解决了,是数据库访问权限的问题      
那就好,呵呵!共同进步!