6. 快速入门指南

6.1. 最低要求

在将 Tigase 服务器开始安装到你的系统之前,请确保首先满足系统最低要求:

  • Java开发工具包(JDK)11(LTS) - 我们推荐OpenJDK

  • 管理员访问权限 - 我们建议您从有管理员访问权限的用户登录安装Tigase Server。

重要

您应该始终运行推荐的JDK 的最新版本/错误修复版本。

备注

虽然应该可以使用更新版本的JDK,但我们不保证这一点,我们建议使用上述版本。

6.2. 内容

这是可帮您快速开始使用我们软件的一组文档。每个文档都提供了对单个主题的介绍,从而使您可以开始使用/开发或开始研究该主题。请查看下面的文档列表以找到您正在寻找的主题。如果您没有找到所需主题的文档,请 让我们知道

6.3. 使用 Web 安装程序安装

当Tigase XMPP服务器启动时,它会查找默认配置文件: etc/config.tdsl。如果此文件未被修改,您可以运行Web安装程序。这将引导您完成Tigase的配置。如果您在Windows环境中安装Tigase,请参阅 Windows安装 部分。

6.3.1. 下载并解压

首先下载Tigase XMPP Server并解压。你可以下载 官方二进制文件,或者最新最好的 试运行。一旦获得分发二进制文件后,可将其解压缩并浏览此目录:

$ tar -xf tigase-server-<version>-dist-max.tar.gz
$ cd tigase-server-<version>

小技巧

不要以root用户身份运行!

6.3.2. 启动服务器

备注

请确保 JAVA_HOME 已设置并指向您的JVM安装

scripts/tigase.sh start etc/tigase.conf

6.3.3. 确保Tigase已准备好开始安装

Tigase开始监听端口8080 - 你可以使用 ``lsof``命令检查它:

$ lsof -i -P
COMMAND   PID   USER   FD   TYPE   DEVICE SIZE/OFF NODE NAME
java    18387 tigase  141u  IPv6 22185825      0t0  TCP *:8080 (LISTEN)

您还可以检查 logs/tigase-console.log 下的控制台日志,它应该直接指向安装程序。

6.3.4. 连接到Web安装程序

连接前的几个要点:

此设置页面是受限访问的,但是第一次设置的时候,有一个默认帐户来设置Tigase:用户名:admin 密码:tigase

上面的设置仅一次有效,因为在安装过程完成后它将被从config.tdsl文件中删除。在此之后,只能使用以下方式访问设置页面:

  1. JID帐户在config.tdsl 文件中的admins行中被列为管理员。

  2. 手动把用户名和密码组合添加到 config.tdsl 文件中或添加在此过程的最后一页。

除非您在远程工作,否则您的浏览器将指向http://localhost:8080/setup/。您也可以使用域名或IP地址。

输入上面的用户名和密码以获得访问权限。

6.3.5. 逐步完成安装过程

您将看到以下”About software”的页面。

web install 01

阅读它,然后单击”Next”

此设置包括了帮助您配置安装的几个步骤: 功能选择和数据库配置。

备注

步骤的顺序和设计可能略有不同,因此我们仅提供如何继续安装的大致概述:

  1. 高级聚类策略信息

    您将看到有关我们的商业产品和许可的一些信息。请仔细阅读协议,并用您的姓名或公司确认该协议,然后单击”Next”进入下一页。

  2. 基本Tigase服务器配置

    此页面将查看您的基本配置设置,其中包括服务器类型,您希望使用的域,并让您有机会为域指定管理员。此外,您将选择Tigase服务器使用的数据库类型(稍后进行配置)。

    如果您没有指定管理员和密码,则会为您自动设置一个:admin@yourdomain,其密码为tigase。

  3. 连接

    在此页面上,您将看到Tigase XMPP服务器所支持的可能连接选项列表以及启用/禁用每个选项的方法(桌面,移动, http,websocket,联合等)。勾选相应选项后,单击”Next”。

  4. 特征

    现在您将可以选择Tigase XMPP服务器的哪些相关功能(例如MUC, PubSub, MIX, MAM,推送通知)应该被启用或被禁用。

    在这一步也将能够在您的安装上启用集群

    选择好以后,单击”Next”。

  5. 数据库配置

    在这里可以配置数据库。步骤3中选择的数据库类型将影响可用的选项。请务必指定数据库根用户帐号和密码

  6. 数据库连接检查

    数据库设置后,您应该会看到一个包含已执行操作及其结果的页面。所有出现的项目都应该是”绿色”,这意味着一切顺利。如果任何内容显示为”红色”或”黄色”,请阅读此标题下方的说明以了解有关此问题的更多信息。如果设置完成,请单击”Next”。

  7. 设置安全性

    如上所述,设置访问页面将被admin/tigase用户锁定。此时你可以在设置页面添加除管理员帐户之外的特定用户,以便稍后重新访问此设置。如果留空,则仅允许admin中列出的JIDs访问。

  8. 保存配置

    此时安装几乎快要完成,您将看到一个页面显示生成的配置(存储在 config.tdsl 文件中)将是什么样子。

    如果您是自定义设置,或者想自己进行设置,您可以复制并粘贴此处的内容以编辑当前的 config.tdsl 文件。

    单击”Save”将文件写入磁盘。

  9. 已完成

    现在已经完成安装,继续下一步以重启服务器。

6.3.6. 重启服务器

此时,建议手动停止服务器并使用适合您操作系统的脚本重新启动它。从Tigase基本目录输入如下命令

./scripts/tigase.sh stop

./scripts/tigase.sh start etc/tigase.conf

备注

为了使Tigase XMPP服务器在系统启动时自动启动,您应该按照 Tigase脚本选择 中的说明设置启动脚本

为了进一步微调服务器 ,需要编辑 etc/tigase.conf。同时确保 JAVA_HOME 的路径是正确的 , 并在需要时使用 JAVA_OPTIONS -Xmx(最大)和 -Xms(初始)时以增加内存。您需要告诉Tigase启动时按照如下所示从该文件中读取设置。

此时一切都应该运行顺利。如果遇到任何问题,请检查 logs/ 中的日志文件。

6.3.7. 确认Tigase是否正在运行

您应该会看到一个监听端口列表。

$ lsof -i -P
COMMAND   PID   USER   FD   TYPE   DEVICE SIZE/OFF NODE NAME
java    18387 tigase  141u  IPv6 22185825      0t0  TCP *:8080 (LISTEN)
java    18387 tigase  148u  IPv6 22185834      0t0  TCP *:5222 (LISTEN)
java    18387 tigase  149u  IPv6 22185835      0t0  TCP *:5223 (LISTEN)
java    18387 tigase  150u  IPv6 22185836      0t0  TCP *:5290 (LISTEN)
java    18387 tigase  151u  IPv6 22185837      0t0  TCP *:5280 (LISTEN)
java    18387 tigase  152u  IPv6 22185838      0t0  TCP *:5269 (LISTEN)

6.3.8. Windows使用Web安装程序的说明

在Windows环境中使用Web安装程序设置Tigase涉及几个步骤。请遵循本指南。

第一步是将分发存档完整地提取到想要的运行目录下。在那里,运行 win-stuff 文件夹里的 Setup.bat 文件。在Tigase开始操作之前以上操作会将需要的文件移动到正确的文件夹中。

从这里开始,您可以选择不同方法来运行Tigase; run.bat 将使用java命令执行Tigase,或 tigase.bat 将使用包装器启动Tigase。您也可以安装Tigase并将其作为服务运行。

完成此设置后,Web安装程序将从 这里 继续执行相同的操作。

6.4. 在控制台模式下手动安装

我们首选的安装Tigase服务器的方法是使用 Web安装程序 和其中一个二进制包附带的配置程序。请在我们的 下载部分 中获取最新版本的分发存档。

然而,在许多情况下,并不总是可以使用Web安装程序。在许多情况下,您只有ssh访问权限,甚至只有控制台模式下的直接访问权限。我们将在下一个版本中提供纯文本安装程序,但目前您可以使用我们的二进制包手动安装服务器。请继续阅读以了解如何通过几个简单的步骤安装和设置服务器……​

如果您有旧版本的Tigase服务器正在运行和工作,并且您打算升级它,请先备份旧版本。

备注

请注意,这些说明适用于 *nix 操作系统,其他操作系统可能需要进行一些修改!

6.4.1. 获取二进制包

看看我们的 下载区。始终选择可用的最新版本的软件包。对于手动安装,可以使用 ziptar.gz 文件。选择文件名如下的文件之一: tigase-server-<version>-b<build>-<type>.<archive>,其中 <version> 的形式为 major .minor.bugfix, <type> 可以是 dist (基本包)或 dist-max (扩展的组件集),归档类型可以是 tar.gz or zip

6.4.2. 打开包装

使用 tar.gz 文件的命令解压缩文件:

$ tar -xzvf tigase-server-x.y.z-bv.tar.gz

或 zip 文件命令:

$ unzip tigase-server-x.y.z-bv.zip

将创建一个新目录:tigase-server-x.y.z-bv/

有时在 unix 系统启动脚本上解包后没有执行权限。要解决此问题,您必须运行以下命令:

$ chmod u+x ./scripts/tigase.sh

6.4.3. 准备配置

如果您查看新目录,它应该像这样的输出:

 $ ls -l
total 88
drwxr-xr-x 2 tigase tigase  4096 Aug 15 18:17 certs
-rw-r--r-- 1 tigase tigase     0 Aug 15 18:26 ChangeLog
drwxr-xr-x 2 tigase tigase 12288 Aug 15 18:17 database
drwxrwxr-x 4 tigase tigase  4096 Oct 12 09:48 docs
drwxrwxr-x 2 tigase tigase  4096 Oct 12 09:48 etc
drwxrwxr-x 2 tigase tigase  4096 Oct 12 09:48 jars
-rw-r--r-- 1 tigase tigase 34203 Aug 15 18:26 License.html
drwxr-xr-- 2 tigase tigase  4096 Aug 15 18:26 logs
-rw-r--r-- 1 tigase tigase  3614 Aug 15 18:26 package.html
-rw-r--r-- 1 tigase tigase  2675 Aug 15 18:26 README
drwxr-xr-x 9 tigase tigase  4096 Aug 15 18:17 scripts
drwxr-xr-x 5 tigase tigase  4096 Aug 15 18:17 tigase
drwxrwxr-x 4 tigase tigase  4096 Oct 12 09:48 win-stuff

目前最重要的是包含这些文件的 etc/ 目录:

 $ ls -l etc/
total 36
-rw-r--r-- 1 tigase tigase  153 Aug 15 18:11 bosh-extra-headers.txt
-rw-r--r-- 1 tigase tigase  325 Aug 15 18:11 client-access-policy.xml
-rw-r--r-- 1 tigase tigase  124 Aug 15 18:11 config.tdsl
-rw-r--r-- 1 tigase tigase  263 Aug 15 18:11 cross-domain-policy.xml
-rw-r--r-- 1 tigase tigase 2337 Aug 15 18:11 jmx.access
-rw-r--r-- 1 tigase tigase 2893 Aug 15 18:11 jmx.password
-rw-r--r-- 1 tigase tigase  735 Aug 15 18:11 logback.xml
-rw-r--r-- 1 tigase tigase 3386 Aug 15 18:11 snmp.acl
-rw-r--r-- 1 tigase tigase 1346 Aug 15 18:11 tigase.conf

配置tigase.conf

Tigase.conf 是一个文件,其中包含了普遍程序的运行参数,以及运行 Tigase 的 java 设置。目前,我们需要配置的唯一设置是 JAVA_HOME 目录。

JAVA_HOME="${JDKPath}"

${JDKPath} 替换为系统上安装 Java JDK 的路径。

配置 config.tdsl

您还需要编辑``config.tdsl``文件。它包含通常由配置程序设置的初始参数。由于这是手动安装,您必须自己编辑此文档。它已经包含如下几行:

'config-type' = 'setup'

http () {
    setup () {
        'admin-user' = 'admin'
        'admin-password' = 'tigase'
    }
}

您需要设置一些东西才能启动并运行 Tigase。

第 一 步:更改配置类型

详情参考 config-type 属性说明,但对于大多数操作,将``setup``更改为``default``。

第二步:设置虚拟主机

如果没有虚拟主机,您的 XMPP 服务器就没有可操作的域。要设置虚拟主机,请使用以下配置:

'default-virtual-host' = 'hostname'

您必须将 hostname 替换为用于 XMPP 安装的域名。假设这个是 jabber.your-great.net。您的设置应如下所示:

'default-virtual-host' = 'jabber.your-great.net'

还可以配置许多其他设置, 访问此部分了解详细信息

第三步:设置管理员

至少需要一名管理员,并且一旦数据库设置完毕,默认密码将是 tigase。完成设置服务器后,请务必更改此设置。要添加管理员,请在 config.tdsl 文件中使用以下行:

admins = [ '[email protected]', 'user2jabber.your-great.net' ]

第四步:设置数据库

您还需要配置与数据库的连接。首先,您必须决定要使用什么数据库:DerbyMySQLPostgreSQLMSSQLMondoDB。每个数据库的配置都会略有不同。如果我们使用 derby,在名为 tigasedb 的目录中,您的配置将如下所示:

dataSource () {
    default () {
        uri = 'jdbc:derby:tigasedb;create=true'
    }
}

有关更多配置信息,请参阅 dataSource 属性。

这是足以让您的 Tigase 服务器安装运行的基本配置。

6.4.4. 安装数据库

下一步是创建数据库。以前,我们有脚本来处理这个过程,但我们现在拥有函数的优势,其可以在 tigase.sh 脚本中使用。现在设置数据库可以使用单个命令来完成。

./scripts/tigase.sh install-schema etc/tigase.conf -T derby -D tigasedb -H localhost -U tigase_user -P tigase_pass -R root -A rootpass -J admin@jabber.your-great.net -N pass

此命令将使用 在 localhost 上托管的名为 tigasedb 的Derby 数据库上安装tigase。编辑数据库的用户名和密码是 tigase_passroot。请注意,-J 显式添加管理员,强烈建议使用 -N 传递密码。您可以根据需要自定义此命令,有关详细信息,请参阅文档的 install-schema 部分。

在windows系统上,需要直接调用程序:

C:\tigase>java -cp "jars/*" tigase.db.util.SchemaManager "install-schema" -T derby -D tigasedb -H localhost -U tigase_user -P tigase_pass -R root -A rootpass -J admin@jabber.your-great.net -N pass

如果成功通过,您应该会看到一些信息被打印出来

LogLevel: CONFIG
2017-10-12 20:05:47.987 [main]             DBSchemaLoader.init()                   CONFIG:   Parameters: [ingoreMissingFiles: false, logLevel: CONFIG, adminPassword: pass, admins: [[email protected]], dbRootPass: rootpass, dbRootUser: root, dbType: derby, dbName: tigasedbx, dbHostname: localhost, dbUser: tigase_user, dbPass: tigase_pass, useSSL: false, useLegacyDatetimeCode: false, serverTimezone: null, file: null, query: null]
Oct 12, 2017 8:05:48 PM tigase.util.DNSResolverDefault <init>
WARNING: Resolving default host name: ubuntu took: 7
Oct 12, 2017 8:05:49 PM tigase.db.util.SchemaManager loadSchemas
INFO: found 1 data sources to upgrade...
Oct 12, 2017 8:05:49 PM tigase.db.util.SchemaManager loadSchemas
INFO: begining upgrade...
LogLevel: CONFIG
2017-10-12 20:05:49.877 [main]             DBSchemaLoader.init()                   CONFIG:   Parameters: [ingoreMissingFiles: false, logLevel: CONFIG, adminPassword: pass, admins: [[email protected]], dbRootPass: rootpass, dbRootUser: root, dbType: derby, dbName: tigasedbx, dbHostname: null, dbUser: null, dbPass: null, useSSL: null, useLegacyDatetimeCode: false, serverTimezone: null, file: null, query: null]
2017-10-12 20:05:49.877 [main]             DBSchemaLoader.validateDBConnection()   INFO:     Validating DBConnection, URI: jdbc:derby:tigasedbx;create=true
2017-10-12 20:05:50.932 [main]             DBSchemaLoader.validateDBConnection()   CONFIG:   DriverManager (available drivers): [org.apache.derby.jdbc.AutoloadedDriver@65262308, jTDS 1.3.1, com.mysql.jdbc.Driver@54997f67, com.mysql.fabric.jdbc.FabricMySQLDriver@189633f2, org.postgresql.Driver@76fc5687]
2017-10-12 20:05:50.932 [main]             DBSchemaLoader.validateDBConnection()   INFO:     Connection OK
2017-10-12 20:05:50.933 [main]             DBSchemaLoader.validateDBExists()       INFO:     Validating whether DB Exists, URI: jdbc:derby:tigasedbx;create=true
2017-10-12 20:05:50.936 [main]             DBSchemaLoader.withConnection()         CONFIG:   DriverManager (available drivers): [org.apache.derby.jdbc.AutoloadedDriver@65262308, jTDS 1.3.1, com.mysql.jdbc.Driver@54997f67, com.mysql.fabric.jdbc.FabricMySQLDriver@189633f2, org.postgresql.Driver@76fc5687]
2017-10-12 20:05:50.937 [main]             DBSchemaLoader.lambda$validateDBExists$283()  INFO: Exists OK
2017-10-12 20:05:50.939 [main]             DBSchemaLoader.loadSchemaFile()         INFO:     Loading schema from file(s): database/derby-schema-7-2.sql, URI: jdbc:derby:tigasedbx;create=true
2017-10-12 20:05:50.941 [main]             DBSchemaLoader.withConnection()         CONFIG:   DriverManager (available drivers): [org.apache.derby.jdbc.AutoloadedDriver@65262308, jTDS 1.3.1, com.mysql.jdbc.Driver@54997f67, com.mysql.fabric.jdbc.FabricMySQLDriver@189633f2, org.postgresql.Driver@76fc5687]
2017-10-12 20:05:51.923 [main]             DBSchemaLoader.lambda$loadSchemaFile$287()  INFO:  completed OK
2017-10-12 20:05:51.925 [main]             DBSchemaLoader.loadSchemaFile()         INFO:     Loading schema from file(s): database/derby-message-archiving-schema-1.3.0.sql, URI: jdbc:derby:tigasedbx;create=true
2017-10-12 20:05:51.926 [main]             DBSchemaLoader.withConnection()         CONFIG:   DriverManager (available drivers): [org.apache.derby.jdbc.AutoloadedDriver@65262308, jTDS 1.3.1, com.mysql.jdbc.Driver@54997f67, com.mysql.fabric.jdbc.FabricMySQLDriver@189633f2, org.postgresql.Driver@76fc5687]
2017-10-12 20:05:52.209 [main]             DBSchemaLoader.lambda$loadSchemaFile$287()  INFO:  completed OK
2017-10-12 20:05:52.210 [main]             DBSchemaLoader.loadSchemaFile()         INFO:     Loading schema from file(s): database/derby-muc-schema-2.5.0.sql, URI: jdbc:derby:tigasedbx;create=true
2017-10-12 20:05:52.211 [main]             DBSchemaLoader.withConnection()         CONFIG:   DriverManager (available drivers): [org.apache.derby.jdbc.AutoloadedDriver@65262308, jTDS 1.3.1, com.mysql.jdbc.Driver@54997f67, com.mysql.fabric.jdbc.FabricMySQLDriver@189633f2, org.postgresql.Driver@76fc5687]
2017-10-12 20:05:52.305 [main]             DBSchemaLoader.lambda$loadSchemaFile$287()  INFO:  completed OK
2017-10-12 20:05:52.306 [main]             DBSchemaLoader.loadSchemaFile()         INFO:     Loading schema from file(s): database/derby-pubsub-schema-3.3.0.sql, URI: jdbc:derby:tigasedbx;create=true
2017-10-12 20:05:52.307 [main]             DBSchemaLoader.withConnection()         CONFIG:   DriverManager (available drivers): [org.apache.derby.jdbc.AutoloadedDriver@65262308, jTDS 1.3.1, com.mysql.jdbc.Driver@54997f67, com.mysql.fabric.jdbc.FabricMySQLDriver@189633f2, org.postgresql.Driver@76fc5687]
2017-10-12 20:05:52.731 [main]             DBSchemaLoader.lambda$loadSchemaFile$287()  INFO:  completed OK
2017-10-12 20:05:52.732 [main]             DBSchemaLoader.addXmppAdminAccount()    INFO:     Adding XMPP Admin Account, URI: jdbc:derby:tigasedbx;create=true
2017-10-12 20:05:52.732 [main]             DBSchemaLoader.addXmppAdminAccount()    CONFIG:   RepositoryFactory.getAuthRepository(null, jdbc:derby:tigasedbx;create=true,{data-repo-pool-size=1})
Oct 12, 2017 8:05:52 PM tigase.db.jdbc.DataRepositoryImpl initialize
INFO: Table schema found: jdbc:derby:tigasedbx;create=true, database type: derby, database driver: org.apache.derby.jdbc.EmbeddedDriver
Oct 12, 2017 8:05:52 PM tigase.db.jdbc.DataRepositoryImpl initialize
INFO: Initialized database connection: jdbc:derby:tigasedbx;create=true
2017-10-12 20:05:52.884 [main]             DBSchemaLoader.addXmppAdminAccount()    INFO:     All users added
2017-10-12 20:05:52.884 [main]             DBSchemaLoader.postInstallation()       INFO:     Post Installation, URI: jdbc:derby:tigasedbx;create=true
2017-10-12 20:05:52.891 [main]             DBSchemaLoader.withConnection()         CONFIG:   DriverManager (available drivers): [org.apache.derby.jdbc.AutoloadedDriver@65262308, jTDS 1.3.1, com.mysql.jdbc.Driver@54997f67, com.mysql.fabric.jdbc.FabricMySQLDriver@189633f2, org.postgresql.Driver@76fc5687]
2017-10-12 20:05:52.892 [main]             DBSchemaLoader.lambda$postInstallation$286()  INFO: Finalizing...
2017-10-12 20:05:52.893 [main]             DBSchemaLoader.lambda$postInstallation$286()  INFO:  completed OK
2017-10-12 20:05:52.895 [main]             DBSchemaLoader.shutdownDerby()          INFO:     Validating DBConnection, URI: jdbc:derby:tigasedbx;create=true
2017-10-12 20:05:53.129 [main]             DBSchemaLoader.withConnection()         SEVERE:


=====
Failure: Database 'tigasedbx' shutdown.
=====


Oct 12, 2017 8:05:53 PM tigase.db.util.SchemaManager loadSchemas
INFO: schema upgrade finished!




  =============================================================================
    Schema installation finished

  Data source: default with uri jdbc:derby:tigasedbx;create=true
    Checking connection to database ok
    Checking if database exists ok
    Loading schema: Tigase XMPP Server (Core), version: 8.0.0   ok
    Loading schema: Tigase Message Archiving Component, version: 1.3.0  ok
    Loading schema: Tigase MUC Component, version: 2.5.0    ok
    Loading schema: Tigase PubSub Component, version: 3.3.0 ok
    Adding XMPP admin accounts  ok
    Post installation action    ok

  Example etc/config.tdsl configuration file:

  'config-type' = 'default'
  debug = [ 'server' ]
  'default-virtual-host' = [ 'ubuntu' ]
  dataSource () {
      default () {
          uri = 'jdbc:derby:tigasedbx;create=true'
      }
  }
  amp () {}
  bosh () {}
  c2s () {}
  eventbus () {}
  http () {}
  'message-archive' () {}
  monitor () {}
  muc () {}
  pubsub () {}
  s2s () {}
  ws2s () {}
  =============================================================================

最后注意,脚本会输出一个推荐的示例文件。您可以将其与您编写的配置文件结合使用,但某些设置可能无法使用此配置进行设置。再说一遍,它只是一个 示例

6.4.5. 启动服务器

您可以使用Tigase服务器基本目录的scripts子目录中的tigase文件来启动服务器。在那里,选择您拥有的linux类型,debian,gentoo,mendriva或redhat。在根服务器目录中键入以下命令:

./scripts/{OS}/init.d/tigase start etc/tigase.conf

其中 {OS} 是您的 *nix 操作系统。

你应该得到这样的输出:

Starting Tigase:
nohup: redirecting stderr to stdout
Tigase running pid=18103

6.4.6. 检查它是否工作

服务器已经启动,但是你怎么知道它是否真的在工作并且没有问题。查看 logs/ 目录。里面应该有以下几个文件:

 $ ls -l logs/
total 40K
-rw-r--r-- 1 20K 2009-02-03 21:48 tigase-console.log
-rw-r--r-- 1 16K 2009-02-03 21:48 tigase.log.0
-rw-r--r-- 1   0 2009-02-03 21:48 tigase.log.0.lck
-rw-r--r-- 1   6 2009-02-03 21:48 tigase.pid

前 2 个文件对我们来说是最有趣的:tigase-console.logtigase.log.0。第一个包含非常有限的信息,其中只有最重要的条目。查看内部并检查是否有任何 WARNINGSEVERE 条目。如果不是一切都应该没问题。

现在,您可以使用之前设置的管理员帐户连接您选择的 XMPP 客户端。

6.5. Windows安装

尽管可能需要进行一些细微的修改才能让一切准备好运行,但是Tigase XMPP Server 也可以在 Microsoft Windows 系统和服务器上运行。

尽管您可能希望使用命令行,但请注意,在 shell 中输入的命令在某些情况下可能需要引号。

在安装 Tigase 之前,请确保您的系统上安装了 Java JDK v8。它还将有助于完全设置您将使用的任何数据库软件。

6.5.1. 第 一步:初始设置

我们的存储库 下载 Tigase XMPP 服务器存档并将其解压缩到您选择的目录。

一旦完成,进入目录 win-stuff 并运行 setup.bat 程序。该程序在运行时会将必要的文件提取到计算机上的适当位置。 bat 文件应如下所示:

copy "tigase.ico" "..\"
copy "wrapper\wrapper.jar" "..\jars"
copy "wrapper\wrapper.dll" "..\jars"
copy "wrapper\wrapper.exe" "..\"
copy "wrapper\wrapper.conf" "..\"
copy "wrapper\wrapper-community-license-1.2.txt" "..\"
copy "scripts\*.*" "..\"

6.5.2. 第 二 步:启动服务器

要启动服务器,您可以使用安装目录中的命令提示符

java -cp "jars/*" tigase.server.XMPPServer

注意

这可能会使得命令窗口停住不动,并且只会显示 Tigase 的输出。

或者,您可以从 GUI 运行 wrapper.exe 或 tigase.bat。

2A:作为服务安装

在 Windows 环境中操作 Tigase 最简洁的方法是通过运行 InstallTigaseService.bat 程序安装 Tigase。这会将 Tigase 安装为系统服务,现在可以从 services.msc 面板控制服务器。从而允许停止,启动和暂停 Tigase XMPP 服务器并允许正常关闭。

对于基本安装,建议使用 MySQL 而不是 Derby DB。为此,我们在此处包括了 Windows 系统上 MySQL 的基本安装指南:

6.5.3. MySQL 数据库安装

本节介绍 MySQL 数据库的安装和配置以使其与 Tigase 服务器一起使用。

mysql.com 的 MySQL 下载区下载二进制包。确保选择适合您的操作系统的可执行文件。

运行安装程序并遵循默认安装步骤。安装完成后,在 Windows 开始菜单中找到 MySQL 元素并运行 MySQL 配置向导。按照向导进行操作,并确保根据以下指南中的屏幕截图检查设置。

在欢迎窗口中,只需按’Next’。(图 1)

sql1

在下一个窗口中选择 ‘Detailed Configuration’ 并点击 ‘Next’ (pic. 2)

sql2

在下一个屏幕上选择选项: ‘Server Machine’ 并点击 ‘Next’ (pic. 3)

sql3

在第四个窗口保留默认选项 ‘Multi-functional Database’ 并点击 ‘Next’ (pic. 4)

sql4

在第五步上,只需使用默认值按 ‘Next’ . (pic. 5)

sql5

同样,在窗口 6 上选择默认值 - ‘Decision Support (DSS)/OLAP’ 并点击 ‘Next’(图 6)

sql6

确保关闭 ‘Strict mode’ ,然后点击’Next’(图 7)

sql7

在字符编码页面上选择 ‘Manual Selected Default Character set/ Collation’ 和 ‘utf8’, 然后点击 ‘Next’ (pic.8)

sql8

在下一个窗口中选择 ‘Include Bin Directory in Windows PATH’ 然后点击 ‘Next’ (pic.9)

sql9

在此窗口中,只需输入数据库超级用户密码并确保记住它。准备好后点击’Next’ (pic. 10)

sql10

这是最后一个画面。点击 ‘Execute’ 并保存配置参数 (pic. 11)。

sql11

保存配置后,您可以通过运行重复所有的步骤并随时更改设置:START ⇒ Programs ⇒ MYSQL⇒ MYSQL serwer machine⇒ MySQL Server Instance Config Wizard

现在我们必须设置 Tigase 数据库。从开始菜单运行 MySQL 控制台并输入下面的所有命令,并用 <ENTER> 完成它们:

  1. 创建数据库:

    mysql>create database tigasedb;
    
  2. 添加数据库用户:

    mysql> GRANT ALL ON tigasedb.* TO tigase_user@'%' IDENTIFIED BY 'tigase_passwd';
    mysql> GRANT ALL ON tigasedb.* TO tigase_user@'localhost' IDENTIFIED BY 'tigase_passwd';
    mysql> GRANT ALL ON tigasedb.* TO tigase_user IDENTIFIED BY 'tigase_passwd';
    mysql> FLUSH PRIVILEGES;
    
  3. 加载 Tigase 数据库架构:

    mysql> use tigasedb;
    mysql> source c:/Program Files/Tigase/database/mysql-schema.sql;
    

当系统启动并运行时,您可以将任何 XMPP 客户端(例如 Psi)连接到您的服务器,以查看它是否正常工作。

6.6. Tigase 服务器网络说明

一旦你已经在一台机器上安装了 Tigase XMPP 服务器,你j就会想要使用它。如果您只是在路由器后面的网络上用于本地交流,那么您已经准备就绪。享受和使用吧!

但是,如果您想让你的网络外其他计算机的人连接到您的服务器,您将不得不通过几个其他步骤将您的服务器向公众展示。

注意

本指南只是仅仅给出了如何把本地服务器开放给传入的通信的建议。每当您打开端口或采取其他安全措施时,您就有可能危及网络安全。这些只是建议,可能并不适用于所有安装。请咨询您的 IT 安全专家以保护您自己的安装。

XMPP 是一种去中心化的通信方法,其依赖于适当的 DNS 记录以确定 XMPP 服务器的设置位置和方式。操作 XMPP 服务器需要您正确设置 DNS 路由器,以便客户端不仅可以连接到您,而且如果您决定运行联合服务器并启用服务器到服务器的通信,您也需要这样做。如果您已经有一个 DNS 服务器,那么添加这些记录应该没什么问题。如果您没有指向您的服务器的 DNS 设置,您可以使用免费的动态名称服务,例如 dynu.com。

6.6.1. A记录

您将无法使用 IP 地址或 CNAME 记录来设置 XMPP 服务器。虽然这不是必需的,但 是A 记录可以提供一些其他好处,例如在 SRV 记录配置不正确的情况下用作备份。

6.6.2. SRV 记录

您需要为客户端到服务器 (c2s) 通信设置 SRV 记录,如果您打算使用它,还需要为服务器到服务器 (s2s) 通信设置 SRV 记录。我们建议为每台服务器输入两条记录,因为某些资源或客户端会检查两条记录。对于这个例子,我们将用 tigase.org 作为我们的域,而 xmpp 作为 xmpp 服务器子域。

SRV 记录具有以下形式:

_service._protocol.name. TTL class SRV Priority weight port target.

以下是关键点:

  • service: 是所需服务的符号名称,在本例中为 xmpp-clientxmpp-server

  • protocol: 是传输协议,无论是 TCP 还是 UDP,XMPP 流量将通过 TCP 进行。

  • name: 服务器所在的域名,在本例中为 tigase.org

  • TTL: DNS 存在时间的数值,以毫秒为单位,默认使用 86400

  • class: DNS 类字段,始终为 IN

  • priority: 目标主机的优先级,数字越小优先级越高。由于我们并没有设置多个 SRV 记录,我们可以使用 0

  • weight:具有相同优先级的记录的相对权重。我们可以使用*5*。

  • port: 可以找到服务的特定 TCP 或 UDP 端口。在这种情况下,它将是 52225269

  • target:提供服务的机器的主机名,这里我们将使用 xmpp.tigase.org

对于我们的示例服务器,SRV 记录将如下所示:

_xmpp-client._TCP.tigase.org 86400 IN SRV 0 5 5222 xmpp.tigase.org
_xmpp-server._TCP.tigase.org 86400 IN SRV 0 5 5269 xmpp.tigase.org

6.6.3. Tigase 和 Vhosts

如果您正在运行多个要分离的虚拟主机或子域,则需要另一条记录。在这种情况下,如果您使用默认端口,您将只需要一条 A 记录。如果您使用自定义端口,则需要为每个子域创建一条新的 SRV 记录。

6.6.4. 通过 Tigase.me 托管

如果您不想自己进行所有托管,您仍然可以在自己的域中运行 XMPP 服务。现在唯一的条件是将正确的 DNS 服务记录 (SRV) 配置指向以下 DNS 地址:tigase.me

我们强烈鼓励使用 SRV 记录。如果您想在我们的 XMPP 服务上注册:your-domain.tld,请确保它正确解析:

服务

DNS 类型

DNS 记录

评论

_xmpp-client._tcp.your-domain.tld

SRV

10 0 5222 tigase.me.

基本 XMPP

_xmpps-client._tcp.your-domain.tld

SRV

10 0 5223 tigase.me.

DirectTLS

_xmpp-server._tcp.your-domain.tld

SRV

10 0 5269 tigase.me.

联盟/s2s 连接

_xmpp-server._tcp.muc.your-domain.tld

SRV

10 0 5269 tigase.me.

联盟/s2s 连接 (MUC)

_xmpp-server._tcp.mix.your-domain.tld

SRV

10 0 5269 tigase.me.

联盟/s2s 连接 (MIX)

_xmpp-server._tcp.pubsub.your-domain.tld

SRV

10 0 5269 tigase.me.

联盟/s2s 连接 (PubSub)

您可以通过发出以下命令来检查配置是否正确:

$ host -t SRV _xmpp-client._tcp.your-domain.tld
$ host -t SRV _xmpps-client._tcp.your-domain.tld
$ host -t SRV _xmpp-server._tcp.your-domain.tld
$ host -t SRV _xmpp-server._tcp.muc.your-domain.tld
$ host -t SRV _xmpp-server._tcp.pubsub.your-domain.tld

现在,您如何使用我们的服务注册您的域名?

有几种方法。我们建议您查看文档中的 添加和管理域 部分以了解设置。如果您不能或不想自己做,请按照指南中描述的方式向我们发送消息,或通过 XMPP 到 admin@tigase.im 或联系表格请求新域。用户注册可通过带内注册协议获得。您还可以指定是否允许匿名身份验证可用于您的域,并且可以指定域的最大用户数。

提供证书

还鼓励提供专用的 SSL 证书 - 有多种方法可以做到这一点,它们在 向 Tigase 服务器安装/加载证书 中进行了描述。您可能希望利用免费的 Let’s Encrypt 证书并自动化整个上传和续订过程,如 在 Linux 系统中安装 LetsEncrypt 证书

6.6.5. 检查设置

如果您在单独的网络上使用带有 XMPP 客户端的手机,您现在可以尝试登录以测试服务器。如果这不方便,您可以使用在线工具检查正确的 DNS 记录,例如 kingant 的:https://kingant.net/check_xmpp_dns/,它会告诉您是否缺少任何内容。

6.6.6. 端口说明

一旦设置服务器,您可能需要打开至少两个端口。默认情况下,XMPP 通信发生在端口 5222/5269 上,SRV 记录到该端口。服务器使用的其他端口如下:

  • 3478 - TURN 或 STUN,普通套接字,TCP 和 UDP

  • 5349 — TURN 或 STUN,通过 TLS、TCP 和 UDP

  • 5222 - 进来的客户端到服务器 XMPP 连接

  • 5223 - 通过 TLS/SSL 进入客户端到服务器 XMPP 连接,包括 DirectTLS

  • 5269 - 默认 s2s 端口,即:联合支持

  • 5277 - 集群间通信

  • 5280 - 默认 BOSH 连接

  • 5290 - 默认 WebSocket 连接

  • 5291 - 通过 TLS/SSL 的默认 WebSocket 连接

  • 8080 - 用于 HTTP 服务器(基于 Web 的设置,REST API,文件上传扩展等)

  • 9050 - JMX 监控

如果由于任何原因您不能使用默认端口并且必须更改它们,则可以指向 SRV 记录这些端口。请记住,您必须为防火墙中的传入连接打开这些端口。如果您使用 iptables ,您可以使用以下命令将这些端口包含在您的规则中:

iptables -A INPUT -p tcp -m tcp --dport 5222 -j ACCEPT
iptables -A INPUT -p tcp -m tcp --dport 5223 -j ACCEPT
iptables -A INPUT -p tcp -m tcp --dport 5269 -j ACCEPT
iptables -A INPUT -p tcp -m tcp --dport 5277 -j ACCEPT
iptables -A INPUT -p tcp -m tcp --dport 5280 -j ACCEPT
iptables -A INPUT -p tcp -m tcp --dport 5290 -j ACCEPT
iptables -A INPUT -p tcp -m tcp --dport 8080 -j ACCEPT
iptables -A INPUT -p tcp -m tcp --dport 9050 -j ACCEPT

两个端口都应设置为仅使用 TCP。如果出于任何原因您希望为不同的端口提供服务,您可以:

  1. 更改 Tigase 配置中的端口并更新 DNS SRV 记录;

  2. 将这些端口转发到默认 Tigase 端口(如果您想在运行时使用低于 1024 的端口,这在 *nix 操作系统下特别有用,根据推荐,来自用户帐户的 Tigase 服务 — 有一个限制并且用户帐户可以绑定到低于 1024 的端口),例如使用 iptables 规则(在以下示例中,我们在端口 443 下提供可用的 Tigase SSL websocket 端口,该端口通常在公司防火墙中被打开):

    iptables -t nat -A PREROUTING -p tcp --dport 443 -j REDIRECT --to-ports 5291
    

6.7. Tigase 脚本选择

正如每个快速入门部分所述,Tigase XMPP 服务器的每个发行版都带有许多针对不同版本的 Linux 定制的脚本。

init.d 图表

操作系统

init.d 文件路径

操作系统的类型

Systemd

tigase-server/scripts/systemd/*

基于Systemd的发行版

Debian

tigase-server/scripts/debian/tigase.init.d

Knoppix, Ubuntu (before v15.04), Raspbian or Duvian

Gentoo

tigase-server/scripts/gentoo/init.d/tigase

CoreOS(v94.0.0 之前),Tin Hat Linux 或其他基于 *too 的系统

Mandriva

tigase-server/scripts/mandriva/init.d/tigase

Mandriva Linux 的特定 init.d 文件

Redhat

tigase-server/scripts/redhat/init.d/tigase

RedHat(v7.0 之前)和其他基于 RPM 的 Linux 衍生产品,如 CentOS(v.7.14 之前),openSUSE(v12.2 之前)

备注

如果您的操作系统是基于 systemd 的 linux 发行版,我们建议使用 systemd 服务脚本。可以像以前一样使用(在这种情况下是旧的) init.d 启动文件,但是使用 systemd 启动脚本可以更好地控制启动过程,甚至可以在JVM崩溃的情况下自动重启 Tigase XMPP 服务器。

6.7.1. 配置:对于使用 systemd 的 Linux 发行版

要将 Tigase XMPP 服务器设置为系统服务,需要将 tigase-server.service 文件复制到 /etc/systemd/system/ 目录

sudo cp $SCRIPT_FILE_PATH/tigase-server.service /etc/systemd/system/

该文件包含以下可能需要调整的参数:

  • User - 指定将运行程序的用户。这应该是具有 SU 权限的用户。

  • WorkingDirectory - 指定安装目录 (默认: /home/tigase/tigase-server )

  • ExecStart - 指定启动命令 (默认:运行 Tigase 安装目录中的 scripts/tigase.sh start etc/tigase.conf

  • ExecStop - 指定关闭命令 (默认:在 Tigase 安装目录中运行 scripts/tigase.sh stop etc/tigase.conf

  • PIDFile - 指定 PID 文件的位置 (默认:Tigase 安装目录中的 logs/tigase.pid 文件)

还需要将选项文件 tigase-server 复制到 /etc/default/ 目录下

sudo cp $SCRIPT_FILE_PATH/tigase-server /etc/default/

有了这些文件,你需要重新加载 systemctl 守护进程

sudo systemctl daemon-reload

注意

如果您从旧版本的 Tigase XMPP 服务器升级,它不是作为 systemd 系统服务运行的,因此需要卸载旧服务并删除旧服务文件。

6.7.2. 配置:适用于所有 Linux 发行版

一旦找到合适的分发脚本后(请查看上表),将其复制到系统的 init.d 文件夹(通常是 /etc/init.d/):

sudo cp $SCRIPT_FILE_PATH /etc/init.d/tigase

您可能还需要使其可执行:

sudo chmod +x /etc/init.d/tigase

建议您打开脚本文件或配置文件,因为有些文件中有一些参数需要您指定。

Gentoo

conf.d 脚本必须包含以下参数:

TIGASE_HOME="/home/tigase/tigase-server"
TIGASE_USER=tigase
TIGASE_CONF="etc/tigase.conf"

应配置以下内容:

  • TIGASE_HOME - 指定 Tigase 服务器安装目录。

  • TIGASE_USER - 指定哪些用户将运行程序。这应该是具有 SU 权限的用户。

  • TIGASE_CONF - tigase.conf 文件的位置,其是 TIGASE_HOME 目录的相对位置。

Mandriva

Mandriva 有一个 init.d 文件,但是应该对其进行配置:

export JAVA_HOME=/usr/java/jdk1.8.0
export TIGASE_DIR=/opt/tigase/server/
tigase=$TIGASE_DIR/scripts/tigase.sh
prog=tigase
config=$TIGASE_DIR/etc/tigase.conf
…

应配置以下内容:

  • JAVA_HOME - JDK 安装的位置。

  • TIGASE_DIR - Tigase 服务器安装目录。

  • tigase - 你的 tigase.sh 脚本的位置。如果您保持默认文件结构,则不需要调整。

  • config - tigase.conf 文件的位置。如果您保持默认文件结构,则不需要调整。

pid 文件将存储在 /var/run/ser.pid

Redhat

与 Mandriva 类似,您需要配置 init.d 文件:

JAVA_HOME=/usr/lib/jvm/java/

USERNAME=tigase
USERGROUP=tigase
NAME=tigase
DESC="Tigase XMPP server"

TIGASE_HOME=/home/tigase/tigase-server
TIGASE_LIB=${TIGASE_HOME}/jars
TIGASE_CONFIG=/etc/tigase.conf
TIGASE_OPTIONS=
TIGASE_PARAMS=

PIDFILE=
TIGASE_CONSOLE_LOG=
  • USERNAME - 运行 Tigase 的用户名,应该有 su 权限。

  • USERGROUP - 用户名的用户组。

  • NAME - Tigase 程序的操作系统名称。

  • DESC - 可选说明。

  • TIGASE_HOME - 你的 Tigase 服务器安装目录的位置。

  • TIGASE_LIB - 您的 Tigase Jars 文件夹的位置,如果您正确设置 TIGASE_HOME 并保持默认文件结构,则不需要调整它。

  • TIGASE_CONFIG - 你的 tigase.conf 文件相对于 TIGASE_HOME 的位置

  • TIGASE_OPTIONS - Tigase 的旧选项,现在大部分在 config.tdsl 或 tigase.conf 中处理。

  • TIGASE_PARAMS - 启动 Tigase 时传递给命令行的参数。

  • PIDFILE - 如果你想使用自定义目录,Tigase PID 文件的位置。默认将位于 /logs 或 /var/temp 目录中。

  • TIGASE_CONSOLE_LOG - 如果你想使用自定义目录,Tigase 服务器控制台日志文件的位置。如果 /dev/null 失败,其默认将位于 /logs 目录中。

复制脚本后,为了安装 sysinit 脚本,您必须将其添加到配置中:

/sbin/chkconfig --add tigase

可以通过以下方式启用或禁用服务:

/sbin/chkconfig tigase <on|off|reset>

Debian

与其他发行版一样,您应该将 init.d 脚本复制到正确的位置。之后应该对其进行编辑并需要设置变量的正确值:

USERNAME=tigase
USERGROUP=tigase
NAME=tigase
DESC="Tigase XMPP server"

TIGASE_HOME=/usr/share/tigase
TIGASE_CONFIG=/etc/tigase/tigase.config
TIGASE_OPTIONS=
TIGASE_PARAMS=

PIDFILE=
TIGASE_CONSOLE_LOG=
  • USERNAME - 运行 Tigase 的用户名,应该有 su 权限。

  • USERGROUP - 用户名的用户组。

  • NAME - Tigase 程序的操作系统名称。

  • DESC - 可选说明。

  • TIGASE_HOME - 你的 Tigase 服务器安装目录的位置。

  • TIGASE_CONFIG - 你的 tigase-server.xml 文件的相对位置(旧配置格式)

  • TIGASE_OPTIONS - 传递给 Tigase 服务器的命令行参数(可能包括``init.properies`` 的路径(如果找到正确的 tigase.conf 配置,那么它将转换为 TIGASE_OPTIONS=" --property-file etc/config.tdsl "

  • TIGASE_PARAMS - 启动 Tigase 时传递给命令行的参数。

  • PIDFILE - 如果你想使用自定义目录,Tigase PID 文件的位置。默认将位于 /var/run/tigase/tigase.pid 或在(在这种情况下相对于 tigase 主目录)logs/tigase.pid 下面。

  • TIGASE_CONSOLE_LOG - 如果你想使用自定义目录,Tigase 服务器控制台日志文件的位置。如果 /dev/null 失败,其默认将位于 /logs 目录中。

之后我们需要使用以下命令在系统中安装服务:

update-rc.d tigase defaults

6.7.3. 将 Tigase 作为系统服务运行

将 Tigase 作为服务运行有很多好处,其中之一是确保即使在断电或服务器意外重启的情况下程序也能运行,Tigase 将始终启动并运行。

对于基于 systemd 的 linux 发行版

一旦安装完成后,您可以使用以下命令将 Tigase 作为一般的 systemd 服务启动:

sudo systemctl start tigase-server

要停止它,您可以运行以下命令:

sudo systemctl stop tigase-server

也可以启用服务,使其在操作系统启动期间启用:

sudo systemctl enable tigase-server

对于其他 linux 发行版

一旦安装完成后,您应该能够使用以下命令启动 Tigase:

service tigase start

Tigase 应该开始在后台运行。由于 Tigase 现在已作为服务安装,因此可以使用任何服务命令对其进行控制,例如:

  • service tigase stop

  • service tigase restart

6.8. 关闭 Tigase

虽然 Tigase XMPP Server 可以通过结束进程来终止,但建议最好使用它自己的关闭脚本。这不仅允许从系统中正确清除 Tigase,而且允许所有关闭功能运行,例如修改日志和完成统计。要触发 Tigase 服务器的关闭,可以从 tigase 目录使用以下命令:

./scripts/tigase.sh stop

如果您需要可以指定配置文件,但不会有任何区别

这将:

  • 开始关闭线程

  • 停止接受新连接

  • 关闭所有当前连接

  • 收集运行时统计信息

  • 将统计信息写入日志

  • 将完整的堆栈跟踪转储到文件

  • 运行 GC 并从内存中清除

6.8.1. 关机统计

关闭后,服务器运行时的统计信息将附加到日志文件中。有关统计信息的描述及其含义,请参阅文档的 Statistics Description 部分。

6.8.2. 关闭 StackTrace 转储

为了帮助故障排除,完整的堆栈跟踪将转储到位于$serverdir/logs/threads-dump.log.# 的单独文件中。Stacktrace 日志将遵循 Log file description 中描述的相同日志文件编号方案。

默认情况下启用此功能,但是您可以通过将以下内容添加到您的 config.tdsl 文件来禁用此功能:

'shutdown-thread-dump' = false

关闭集群节点

从 v8.0.0 开始,您现在可以关闭单个集群节点而无需关闭整个服务器。此命令将使用 SeeOtherHost 策略将流量引导到其他节点并更新集群映射以顺利地关闭单个节点

可以通过 Ad-hoc 命令关闭单个节点并填写响应表。该命令可从 http://jabber.org/protocol/admin#shutdown 的 message-router 获得。

6.9. Upgrading Tigase to newer version

备注

Depending of the deployment we recommend installing Tigase XMPP Server next to the existing one and following with replace of the service once the upgrade finishes correctly.

6.9.1. 备份您的数据

As with any migration it is highly recommended that you backup your repository before conducting any upgrade operations. It can be done via simple SQL dump od the database or more elaborate snapshot of the database offered by cloud providers.

6.9.2. 升级配置文件

During the upgrade the most important files to migrate to newer versions are:

  • 配置tigase.conf

  • 配置 config.tdsl

  • etc/jmx.access and etc/jmx.password

  • certs/* (if configured to use local filesystem, though we recommend to use database for storing certificates)

6.9.3. 升级数据库架构

现在可以使用 upgrade-schema 选项升级数据库模式。现在就这样做。

./scripts/tigase.sh upgrade-schema etc/tigase.conf

警告

您的数据库架构必须是 v8,否则转换将无法正常进行!

You will be asked for rood credentials. Those can be provided as parameters to /scripts/tigase.sh upgrade-schema - please check ./scripts/tigase.sh upgrade-schema –help for more details

成功后,您应该看到以下内容:

=============================================================================
        Schema upgrade finished

  Data source: default with uri
jdbc:<database>://HOST/DATABASE?user=USERNAME&password=PASSWORD
        Checking connection to database ok
        Checking if database exists     ok
        Loading schema: Tigase XMPP Server (Core), version: x.y.z       ok
        Loading schema: Tigase Message Archiving Component, version: x.y.z      ok
        Loading schema: Tigase MUC Component, version: x.y.z    ok
        Loading schema: Tigase PubSub Component, version: x.y.z ok
        Adding XMPP admin accounts      warning
                Message: Error: No admin users entered
        Post installation action        ok

=============================================================================

开始 Tigase!

6.9.4. Help?

两个 upgrade 命令也有内置帮助功能,如果需要,可以从命令行调用它们。您还可以运行这些命令来寻求帮助。

scripts/tigase.sh upgrade-config etc/tigase.conf --help
scripts/tigase.sh upgrade-schema etc/tigase.conf --help